分12先を歩むエンジニアへのインタビューを通してエンジニアのキャリアについて考える本連載,今回はゼロからOSやScheme処理系を作り,現在はTwitter本社で働く凄腕エンジニアのhigeponこと蓑輪太郎さんにお話をお伺いしました。─⁠─higeponさんはいつもさまざまなことを勉強なさっていますが,いつごろから自ら技術を学び始めたのでしょうか?higepon(以下ひ⁠)⁠:2001年に入った初めての会社が大きいSI系で,技術に長けたチームに入れてもらえました。そこではモデルケースになるような優秀な先輩がいて,たとえばトラブルが起きたときに,自分で率先して原因を解明して,周りにも的確に指示を伝えていて問題を解決していたんですよ。その先輩から「しっかりプログラミングを勉強しないとまずいよ」と言われたんですよね。それで自分で実際に勉強をし始めたら,今いる会社の技術力が低いかもしれないと感じたんです。─⁠─技術を深く知っていて,かつ課題解決できる先輩がいたんですね。ひ:はい,でもこの先輩より10歳下の勉強していない先輩は,10年経ってもこの先輩のようにはならないと感じました。大学生から社会人になったときは,社会人でも勉強するなんてことは想像していなかったのですが,言われたことだけこなしていたらまずいと思いました。─⁠─そういう会社だからこそ,危機意識が身についたのですね。それでどんな勉強を始めたのですか?ひ:最初は仕事で使うこともあってJavaを学びました。2~3年の経験を積んだころには,言われた仕事はかなり早くこなせるようになりました。次はもっとプログラミングを理解するために基礎的なことを,仕事では学べそうにないことをと考えたときに,OSを作ればいろいろなことが学べると思ったんですよね。実際に作り出して,どれぐらいでOSのことを理解できましたか?ひ:ゼロからだったので3~4年はかかったと思います。─⁠─コツコツと学ばれたんですね。続けられたモチベーションはどこから来たのでしょうか?ひ:たしかRuby作者のまつもとゆきひろさんも言っていたのですが,知的好奇心を満たす適切な課題があるとすごく楽しいんですよ。難しいけど頑張れば解ける問題が,どんどん並んでいると楽しくて。OSなら,どうやってブートするのか,そのあとのファイルシステムの読み書きはどうするのか,画面に文字を表示するにはどうするのかと学ぶことがどんどん積み重なっていって,ずっと楽しくてモチベーションを維持できました。─⁠─それでも3~4年かけて作り続けるのはすごいですね。ひ:若いときは時間ならありますからね。コードが書きたくてはてなへ─⁠─2005年にはてなに転職されましたね。1社目の会社で,人やお金の管理といった,マネージャーの仕事をする先輩が増えてきたんですよね。僕は本当にコードを書くのが楽しいから,コードを書く仕事がしたくて,当時「はてなダイアリー」や「はてなアンテナ」を使っていたので,それを作っていたはてなに応募しました。─⁠─昔話(注1)なんで懐かしいですね(笑⁠)⁠。そのころから英語を学び始めたと思うのですが,きっかけはあったのですか?ひ:シリコンバレーに行ったとき,ピザ屋やスーパーで英語が通じなかったんですよ。受験のときは英語が得意だったので,ちょっとは通じるのですが,思っていた以上に通じませんでした。Googleがとてもエンジニアを大切にする会社だということを聞いていたのでGoogleで働いてみたかったのですが,そのためには英語ができないといけないので勉強し始めました。─⁠─アルゴリズムやSICP(注2⁠)⁠,コンパイラも学んでいましたよね。ひ:はてなではユーザ向けのサービスをゼロから作ったり,Webの速い開発サイクルを学んだりと,その辺は完全に満足していました。それ以外のところで自分に足りないものを考えたときに,僕はコンピュータサイエンス学科出身ではないので,アルゴリズムも難しいものはわかりませんし,コンパイラもブラックボックスだったので興味があったんです。─⁠─ここでも仕事で満たされるところ以外を独学で勉強されたんですね。注1)インタビュアーの舘野とは同僚で,はてなでは約2年間一緒に働いていました。プログラムの構造と解釈第二版』(⁠ピアソン・エデュケーション,2000年)の原題の略称です。中長期的な視点を身につける─⁠─続いて2008年頭にサイボウズ・ラボに転職されましたね。ひ:Webの速いサイクルでサービスを作る視点とは違った,もうちょっと中長期的なものづくりをしてみたかったんです。当時サイボウズ・ラボでは,テーマを自分で提案して自由に挑戦できました。─⁠─最初にMoshというScheme処理系を作られましたが,なぜ作ったのでしょうか?ひ:Moshを作った理由はいくつかあります。当時JavaScriptを中心に関数型のパラダイムがWebでもはやり始めていて,今後関数型の言語がWebを支える技術になり得る可能性があったこと,OSを作りつつコンパイラを勉強していたこともあり,純粋に自分の技術の興味分野と一致していたこと,自分自身が関数型のパラダイムがどんなメリットがあり,どんな場面で使うのか理解が浅かったこともあり,作る過程で概念を学びたかったことなどです。Store)を作られましたね。ひ:当時はストレージにMySQLが,キャッシュにmemcachedがよく使われていました。両者のデータ構造にギャップが大きくて,その差をアプリケーションサーバ側で吸収するアプローチが多かったんです。それをもっとうまく行えるミドルウェアを実現したくてMioを作り始めました。実装言語にはErlangを使い,アクターモデルのメッセージングをベースとしたプログラミング作法も学びつつ作りました。─⁠─関数型だったり,メッセージングだったり,毎回自分が知らない考え方を取り入れていますね。ひ:そうですね,わからないのが怖いというのはありますね。今iOSやAndroidアプリの話をされても言っていることはだいたいわかるじゃないですか。それが数年経って,2世代ぐらい先の全然違うテクノロジになったとき,会話のキーワードすらわからない状態になったら,エンジニアとして相当まずいじゃないですか。新しいテクノロジやパラダイムが出てきたときにわからない状態のままでいるのは,すごくリスクがあると思っています。いって全部学ぶと時間が足りないので,本当にわからないものに絞って学んできました。─⁠─サイボウズ・ラボ時代はプライベートでは何を学んでいたのでしょうか?ひ:ほとんど英語ばかり勉強していました。─⁠─たしかにブログで英語のことをたくさん書いていましたね。higeponさんは努力の天才だと思っているのですが,どうやって毎日続けているのでしょうか?ひ:いやいや(笑⁠)⁠。毎日続ける努力,反復練習って,一度勢いがつくと簡単なんですよね。慣性の法則でも,一度動き出した物はずっと動き続けるし,止まった物はずっと止まり続けたままです。毎日続けるにはコツがあって,たとえば2週間に一度飲み会に行くと,その日の夜や次の日の朝の勉強がつらくて止まってしまいがちです。これで止まってしまうと,あとあと膨大な時間を失うじゃないですか。飲み会で得られることもいろいろあるとは思うので,どっちを取るかという話だとは思いますけどね。Webサービス著者プロフィール舘野祐一(たてのゆういち)はてなブックマークのリードプログラマ・エンジニアリングマネージャを経てクックパッドに入社。ユーザに価値を届けるためにさまざまな技術的な挑戦を行っているうちに,いつの間にかクックパッドのCTOに。昔はコードを書くことが死ぬほど好きだったが,最近は技術をどう生かすかが好きになってきているお年頃。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。