Findy Engineer Lab

エンジニアの"ちょい先"を考えるメディア

「いつかGitHubで働きたい」10年来の空想を現実にしたソフトウェアエンジニアの紆余曲折な人生

長永健介@kyannyと申します。現在はGitHubで働いています。10年前、「いつかここで働きたい」と夢見た会社です。

私は子供の頃から「考えること」が好きでした。難しいこともくだらないことも、真面目に考えて自分なりの意見をまとめる癖がありました。成長するにつれて私の思考様式は洗練され、Webとブログに出会ったことで「書く」という手段に昇華されました。書くことで考えていることを言語化し、言語化した自分の考えを読みながらさらに考えを深める ── この活動を繰り返すことで、起こりうる問題に備えたり、問題を多角的に見つめて活路を見出してきました。

とりわけキャリアの選択において「(思考|志向)を言語化する」習慣が大いに役立ちました。この記事では私のキャリアにおけるいくつかの選択と、その時々で考えていたことについて紹介します。

望んでなかった「けものみち」を変えた日記の言葉

私は大学を中退しています。親元を離れて私立大学の理学部に進学しましたが、1回生の前期から勉強についていけず引きこもりに。不健康な生活が祟ってクローン病を発症し、大学を退学。親元に帰ってフリーターになりましたが、大げさではなく「人生オワタ」と思っていました。

転機が訪れたのは23歳。人づてに紹介された小さなWeb制作会社でアルバイトを始めたのです。「プログラマーとデザイナー、どっちがいい?」と社長に聞かれ、「絵が下手なのでプログラマーで」と答えました1。なんとも雑なやりとりですが、私のソフトウェア開発者としてのキャリアはこの一言から始まったのです。コンピューター科学を修めてIT企業に入社するのが「知の高速道路」なら、これはまるで「けものみち」。望んだわけでもなく歩み始めました。こんな面白い人生が待っているとも知らずに。

著者近影
著者近影

その会社では小規模なECサイトを任され、Perl/CGIで組まれたシステムをかなり自由に管理させてもらいました。やがてPerlモジュールの存在を知ると、MLDBMやHTML::Templateを組み込むのに夢中になり、いつしかプログラミングの面白さにのめり込みました。

世はまさに第一次ブログブーム。アクティブに情報発信していたPerlプログラマたちのブログを貪るように読み、私も独自ブログ2はてなダイアリー3を開設して、学んだことや試したことを毎日のように書いていました。Perlコミュニティのレベルの高さに驚き、彼らのようになりたいと憧れる一方で、自分とは縁遠い世界のようにも感じていました。あるブログ記事を読むまでは。

2005年の秋、ライブドア(現・LINE)のエンジニアだった谷口公一nipotanさんが「ここ最近、弊社への技術者の応募が少ない」と書いていました。ライブドアはWeb業界でも技術力の高さで広く知られ、私にとっては高嶺の花でした。なのに応募が減っている!?

実は手を伸ばせば触れられるところにあるものなんじゃないのか?

興奮した私は、mixi日記に思いの丈をそう書き綴(つづ)りました。mixiはクローズドなSNSですから、もとより反応など期待していません。ですが、なんとnipotanさん本人のコメントがついたのです!

勢い余った私はライブドア主催のテクノロジーセミナーに応募し、懇親会でかけてもらった「君があのmixi日記の人か、よかったら採用試験受けてみれば?」という優しい言葉を真に受けて応募し、まさかの内定を獲得したのです4。2006年1月、25歳の冬でした。

この出来事は私の人生と人生観を大きく変えました。途方もない夢のようなことも、言葉にすれば叶うことがある。思考を言語化することの重要性を、身をもって知りました。そして、「人生を思い通りに切り拓いていく」という着想を得たのです。

Shut the fxxk up and write some codeに憧れて

ライブドアでは技術だけでなく、一人前のソフトウェアエンジニアとしての心得も学び、新規サービスの立ち上げや主要サービスの開発などさまざまな機会がありました。しかし、それをうまく生かせなかった私は行き詰まりを感じ、paperboy&co.(現GMOペパボ)に転職します。2010年1月、29歳の冬でした。

paperboy&co.には3年ほど在籍し、ホスティングサービスの開発に携わりました。ここで、私が「キャリアパス」を意識するきっかけがありました。当時の技術責任者だった宮下剛輔mizzyさんが立案・導入したエンジニア職位制度の運用が始まり、シニアエンジニアの選考を通過したのです。

これは今でいうIndividual Contributor(IC)のキャリアパスを10年も前に日本のIT企業で人事制度化したもので、当時は極めて先進的な取り組みでした。プロフェッショナル領域であるからには、純粋に技術だけで評価する ── 明快な基準のもとで一定の評価を得てうれしかったですし、この体験から「管理職にならず、いちソフトウェアエンジニアとしてキャリアアップする」選択肢が私の中に芽生えました。

ペパボ時代のPCには憧れていたGitHubのマスコットキャラクター(Octocat)のステッカーも
ペパボ時代のPCにはさまざまなステッカーが

当時のIT業界ではまだ「35歳定年説」がまことしやかに語られていましたが、Webエンジニアのコミュニティにはアンチ35歳定年説とでもいうべき価値観がありました。管理職(マネージャー)になってコードを書かなくなるのは格好悪い、ずっとコードを書き続けるのがクールだ ── 最近はあまり聞かなくなりましたが、Shut the fxxk up and write some code.(うだうだ言ってないでコードを書けよ)というキャッチフレーズは当時の空気をよく表しています。

私はその価値観に心酔していました。会社でもコミュニティでも、尊敬できる人たちは皆「黙ってコードを書く」凄腕のエンジニアばかり。近年でこそEMやVPoEなどエンジニアのマネジメント職も広く認知され、CTOともなれば経営者としての力量も求められますが、当時CTOといえば「一番コードが書けるエース中のエースエンジニア」の代名詞でした。キャリアアップしてもコードを書くことをやめず、第一線に立ち続けるスターエンジニアの姿に、私も憧れました5

自分も彼らのようになりたい、ソフトウェアエンジニアとして専門性を磨きながらキャリアを積んでいきたい ── 自分がどれほどのものなのか、どこまでいけるのか試してみたくなりました。シニアエンジニアになったのはちょうどその頃。失意の社会人デビューから10年、終わったと思っていた人生はまだ始まったばかりだったのだと気づきました。2012年2月、32歳の冬でした。

世界で通用するエンジニアになるためのキャリア戦略

30歳を過ぎて、私は自分のキャリアを真剣に考え始めました。そして「自分はおそらく一流のソフトウェアエンジニアにはなれない」という現実にも直面しました。前述のエンジニア職位制度で、アドバンスドシニアエンジニアの選考に応募するも、不通過。自分はその時点の力量だけでなく、努力の質と量においても通過した人たちに敵わないと悟ったのです。

しかし、35歳定年説に屈したくはない。専門職というキャリアを諦めたくなかった私は「キャリアの掛け算」に活路を見出します。問題はどのスキルを掛け合わせるか。私は「英語」を選びました。帰国子女でもなければ留学経験もない私は、むしろかなりの英語コンプレックスでしたが、ソフトウェア開発に関する新しい情報はほぼ海外発であり、渡米して活躍する日本人ソフトウェアエンジニアもちらほら現れており、いつしか私も「自分も世界で通用するソフトウェアエンジニアになりたい」と思い始めました。

今でいうGAFAや、仕事で使うRubyのコミュニティで存在感を放っていたHerokuやGitHubといったスタートアップ。とくにGitHubへの憧れは格別で、GitHub Blogを3行でまとめるブログを立ち上げたこともあります。当時のGitHub Blogには新入社員紹介の記事がちょくちょく投稿され、それを読むたびに「Kensuke Nagae is a GitHubber」というタイトルの記事が投稿される日を空想しました6

Quipper時代の写真
Quipperに転職したころにシェアオフィスにて

そのためには、どうにかして「英語を使わざるを得ない環境」に身を置くしかない ── そう思ってヤキモキしていたとき、またしても新たな道が開けます。Quipperとの出会いです。Quipperはロンドンで創業したスタートアップ企業で、日本に拠点を作り始めたばかりでした。創業者が日本人で、日本人比率が高い一方、よくある「日本発」ではなく最初から世界をターゲットにしている点がユニークでした。

何より、CTOを務める中野正智@masatomonさんのブログを以前から愛読していたこと、CEOの渡辺雅之さんが教育にかける情熱にほだされ、人生で初めてスタートアップに飛び込みました。2013年5月、33歳の初夏でした。転職してすぐ、怒涛の日々が始まりました。最初にアサインされたプロジェクトは「リリースまで3カ月弱、プロダクトのコードはまだ1行もない」という冗談のような状況で、リリース直前に夜中までコードを書いていて、ロンドンオフィスの同僚が先に帰ったこともありました。

一方で「英語を使わざるを得ない環境に身を置く」という目論見は成功します。ロンドンやマニラの同僚とのコミュニケーションは、テキスト中心ではあったものの全て英語。マニラで採用したソフトウェアエンジニアのメンターにも任命されました。毎日チャットであらゆる質問に答えて(もちろんGoogle翻訳をフル活用しながら)、リアルなコミュニケーションを通じて英語の表現を身に付け、体当たりで意思疎通するなかで英語コンプレックスを克服しました。

Quipperは私に素晴らしい機会を与えてくれました。世界各国のユーザーが利用しているサービスを開発すること。海外オフィスのメンバーと英語でコミュニケーションすること。「世界でも通用する」という手応え、世界に挑戦する自信がつきました。「世界」の入り口に立たせてくれたQuipper創業者の渡辺さんと中野さんには本当に感謝しています。

やっぱりマネジメントには向いてない

Quipperは順調に事業を拡大し、海外拠点も増えていきました。そして2015年の春、リクルートに買収され、子会社となりました。ストックオプションで億万長者とはいきませんでしたが、創業まもないスタートアップ企業が成功してEXITするまでの濃密な時間は、かけがえのない経験になりました。

私はQuipperに強い恩義を感じていたので買収後も残り、リクルートから移管されたスタディサプリの開発と運用に携わります。事業面でも組織面でもリクルートとの統合が進むなかで、新たな転機が訪れます。Quipperは事業も組織も順調に拡大していますが、それにともないエンジニアのピープルマネジメントと、他部門との連携に課題が出てきました。そこで各拠点にエンジニアリングマネージャー(EM)を配置することになり、なんと私が日本オフィスのEMに指名されたのです。

もちろん最初は断りました。アンチ35歳定年説の信奉者として信念にそむくことになりますし、自分には適性がないとも思いました。私はチームを率いたり組織をまとめたりして大きなことを成し遂げるより、自分個人ができることを広げ深めることに関心があります。それでも最終的に引き受けたのは、Quipperへの恩返しの気持ちがあったからです。自分に「世界」を見せてくれたQuipperのためなら、自分の信念を曲げてでも助けになりたいと思いました。

飼い猫を動物病院に連れて行った帰りにタクシーを待っている
QuipperでVPoEに就いて間もないころ

残念ながら、これはあまり良い選択ではありませんでした。1年半ほどの任期中、専任のマネージャーとプレイングマネージャーのどちらも経験しましたが、徐々に消耗していきました7。つらくなり過ぎないうちにマネージャーを降りようと画策するうち、状況は私の思惑を超えて動きました。エンジニア組織全体を統括するVP of Engineeringへの就任を打診されたのです。エンジニアリングマネージャーの仕事ですら苦労していたのに、さらに上級の管理職など務まるはずがありません。

しかし、買収から数年がたち、Quipperは多くの組織課題を抱えていました。とりわけエンジニア組織の疲弊は激しく、大好きな会社がこんなところでつまずくのは実に惜しいと歯がゆい思いをしていたのも事実です。古株の従業員として、またエンジニアリングマネージャーの一人として、組織を舵取りし損なった責任の一端は自分にもある。そういう反省もありました。こうしてマネージャーを降りるはずだった目論見とは裏腹に、VPoEに就任しました。2018年3月、38歳の冬でした。

正直なところ、マネジメントの仕事はとても苦しかった。VPoEとして過ごした2年間は、私のキャリアで最も過酷でした。手を動かしてコードを書く機会は皆無。「ありたい自分」と真逆の役割を演じることで心身を蝕み、ギラン・バレー症候群を発症して入院・休職もしました8。しかし「自分がやらねば誰がやる」と鼓舞し続け、上司や同僚からも大いに支えられました。幸い、採用活動や組織変更などの打ち手が徐々に効果を発揮し、エンジニアリング組織の立て直しに成功。当初の目標だった「2年で組織を立て直す」を達成して、私はVPoEの職を降りました9

「マネージャーに向いていない」という自己分析は正しかったと思います。自分の信念に背いたのは良い選択ではありませんでした。信念の方を疑ったこともあります。自分は「アンチ35歳定年説の呪い」に縛られているのではないか、ゼロ年代の古い価値観は捨てるべきではないか。それでも私は、32歳のときに感じたShut the fxxk up and write some codeに対するセンス・オブ・ワンダー10を忘れたくないのです。

学んだことも多くありました。管理職の視野・視座・視点。組織長の心得と振る舞い、そして孤独。どれも得難い経験で、今でも自分の血肉となっています。それでもやはりマネージャーという役割はつらかった。私は「自分に向いている分野で勝負すべきだ」と身をもって理解し、再び「いちソフトウェアエンジニア」に戻るべく、新天地を求めてQuipperを去りました11。2020年6月、40歳の夏でした。

Kensuke Nagae is a GitHubber

Quipperを退職した私は日本のスタートアップに転職しましたが、この就職活動はやや後悔が残るものでした。以前から「いつか働いてみたい」と思っていた企業の1つから内定をもらいながら、個人的な事情で辞退していました。ずっと後ろ髪を引かれる気持ちがあり、新しい職場にあまりフィットできていない感触も相まって、焦りを感じていました。しかし、この後悔が思いがけない成功につながります。

転職から3カ月ほどたったとき、GitHubのリクルーターからのメッセージをLinkedInで受け取ったのです。「Enterprise Support Engineerのポジションに興味はないか」という内容でした。まさかGitHubから直接声をかけられるなんて。嬉しくて誇らしくて、信じられませんでした。もちろん応募し、選考をパスして採用されたわけですが、もし転職時に「意中の企業」を選んでいたら激しいジレンマに悩まされたでしょう。後悔が残ったからこそ、次に向けて素早く行動できた。つくづく人生は分からないものです。

GitHubberらしくOctocatのロゴ入りのパーカーを着用/2022年4月撮影
GitHubberらしくOctocatのロゴ入りのパーカーを着用/2022年4月撮影

ソフトウェアエンジニアからサポートエンジニアへのキャリアチェンジには迷いもありました。サポートエンジニアの主務は顧客の問い合わせに回答することであり、コードを書くことではありません。コードを書くことをやめていいのだろうか、二度とソフトウェアエンジニアに戻れないのではないか ── 多少の葛藤はありましたが、その仕事はおそらく自分に向いているという予感もありました。

Quipperの開発チームには、ソフトウェアエンジニアが当番制でカスタマーサポートチームからの不具合調査や質問事項の回答に当たるDevSupportという仕組みがありました。プロダクト開発とは勝手が違うため同僚からは不評でしたが、私はとても面白く、やりがいのある仕事だと感じていました。果たして、予感は当たりました。サポートエンジニアという仕事の面白さを語るには字数が足りませんが、キャリアチェンジして1年以上たった今も楽しく働いています。

転職後、妻に言われたことがあります。あなたは昔「いつかGitHubで働きたい」と言っていたし、「いずれはサポートやコンサルティングのような顧客に寄り添う仕事をしてみたい」とも言っていた。両方とも夢が叶ってよかったね ── と。当の本人は本気で叶うと思ってたわけではないのですが、いざ現実になってみると、自分の思いや志向を言語化することの重要性を感じずにはいられません。

エンジニアのキャリアも万事塞翁が馬

ここまで読んでいただいてありがとうございます。昔話ばかりで自分も歳をとったものだと思いますが、何かあなたの琴線に触れるものがあったでしょうか。

人間万事塞翁が馬という故事成語があります。人生の幸不幸は予測できない、という意味ですが、つくづくその通りだなと思います。とはいえ、何もかも行き当たりばったりだったわけではありません。あらためて振り返ると、自分の(思考|志向)を言語化することで、夢に近づく一歩を踏み出せたり、失敗を成功に変える道筋を見出せたのだと思います。

あなたにもいずれキャリアの岐路に立つ日がやってくるでしょう。長い人生、何が起こるか分かりませんし、思い通りになるとも限りません。苦しいときや迷ったとき、「ありたい自分」があなたを導く羅針盤になります。

「信じれば夢は叶う」とは言いません。それでも、まずは信じてみませんか。「10年後のありたい自分」を想像してみませんか。想像したことは現実になりうるし、想像しないよりは想像した方が実現に近づけます。私たちには、(思考|志向)を言語化して人生を切り拓いていく力があるのです。

あなたがこの先、いつか夢見た輝かしいキャリアを歩んでいくことを願って。

テーマ「次のステップに踏み出すため、自分の志向を言語化することの重要性」

編集:はてな編集部


  1. 当時はWebデザイナーとイラストレーター(絵描き)の区別もついていませんでした。

  2. 自宅サーバーにMovable Typeをインストールして動かしていました。

  3. 当時は「刺身☆ブーメランのはてなダイアリー」という名前でした。

  4. 当時の入社エントリにも経緯を書いていました。

  5. ゼロ年代の数年間、私のロールモデルはid:naoyaでした

  6. この空想は8年後に実現しました。投稿先はGitHub Blogではなく私のブログでしたが。

  7. 当時の心境はQuipper に入社して丸4年が経ったEngineering Manager その後など。

  8. ギラン・バレー症候群で一ヶ月入院した - @kyanny’s blog

  9. 当時の心境はVP of Engineering やめた - @kyanny’s blog

  10. このくだりは素晴らしきハッカー —Great Hackers—へのオマージュです。

  11. Quipper に入社して7年が経った - @kyanny’s blog