エンジニアになって10年が経ちました
エンジニアになって早10年。この10年間のふりかえりと、思いをつづりました。
年表
- 2006/04 - 高校卒業後、日本電子専門学校 オープンソースシステム化に入学
- 2006/12 - アシアルにアルバイトとして入社
- 2008/04 - アシアルの正社員に
- 2010/06 - 日本Symfonyユーザー会を設立
- 2010/11 - パーフェクトPHP 出版
- 2011/02 - クロコスを創立
- 2011/04 - クロコスに転職
- 2012/05 - 効率的なWebアプリケーションの作り方 出版
- 2012/08 - クロコスをヤフーに売却
- 2014/11 - クロコスがヤフーに吸収合併となりヤフー社員に
- 2015/12 - Ancarに転職、 CTO を務める
- 2016/01 - 2016FSW第9回新春おもいっきり7時間耐久レースにてレースデビュー
ふりかえり
情報処理系の道に進むまで
高校時代に趣味でオンラインゲームの情報サイトを運営しており、 HTML や CSS を調べるのが当時の趣味でした。 Firefox と出会ってから IE がおかしいことを知り、どのブラウザでも正しく表示されるよう HTML と CSS の理解を深めたいと、詳解HTML&XHTML&CSS辞典を擦り切れるほど読んでいた覚えがあります。
元々親の家業を継ぐつもりでいたものの不況の折で経営状態が芳しくなく、親から将来は好きなことをしてよいと伝えられ、漠然とパソコンを使った仕事がしたいと考え担任に相談して勧められたのが情報処理系の専門学校。調べているうちに見つけたのが日本電子専門学校に新設される「オープンソースシステム科」でした。当時はソフトウェアとハードウェアの違いすらわからないレベルでしたが Firefox を通じてオープンソースという言葉は知っており、 Firefox への謎の憧れを抱いていたこともあってここに進むことを決意します。
日本電子ではC 言語・Linunx・データベース・ネットワークといった今日の基礎を学びました。プログラミングを学ぶことは非常に楽しく技術書なども意欲的に読み漁っていたものの、これを仕事としていくイメージが湧かず、早く現場につきたいと考えていた頃、転機となったのは1年次の秋に学生スタッフとして参加したオープンソースカンファレンス(OSC)でした。
余談ですが OSC の懇親会で Mozilla Japan の中野氏と話す機会があり、「成長しなくなったら終わり」と言われたことが今日のモチベーションの支えになっています。
アシアルでのアルバイト
OSC で日本 PHP ユーザ会のブースにいたのがアシアルで、アルバイトの募集をしていると聞いてすぐに応募しました。面接時、当時アシアルの CTO だった森川穣の目の前でコードを書かされ、大したものは書けなかったものの無事に受かり、12月から働き始めることに。当時19歳でした。
入社初日に書いたコードがバグってて無限ループを引き起こしサーバを止める失態をおかしましたが、ゆどうふこと亀本大地がさらっと直してくれて、ゆどうふはいいやつだって思いました。
森川穣から年末年始の課題として超・極める! PHP を渡され、上鍵さんが書いた日本語メールの記事を読んで理解してこいと言われたものの、まったく理解できずに憂鬱だったことは今でも覚えています。
師匠との出会い
師と仰ぐ久保敦啓氏に「基礎が大切」と訓えられたのが、アシアル主催のイベントの懇親会でのことでした。その後あるプロジェクトで Piece Framework を採用することになり、久保さんから直接指導を仰ぎ、フレームワークというものについて学びます。正直にいって Piece Framework は難しかったですが、軟弱なフレームワークから始まらなかったことで調べる力が身についたかなと思います。
久保さんからは今でも様々なことを学んでおり、まさしく師匠として尊敬しています。
アシアルでの失態と反省
専門2年次にPHPプロ内の通販サイトの改修を任されたものの、 SQL のミスですべての注文データを上書きしてしまいます。社長の田中正裕がデータを復旧してくれ事なきを得ましたが、とにかく血の気が引きました。ただ、元々ロジックが整理されていないコードだったため、そこに問題があるだろうと内心反発しており、コードのあり方そのものを考えるよいきっかけでした。無論反省はしています。
勉強会への参加、登壇
そうこうしているうちに専門を卒業し、そのままアシアルに入社しました。その頃からゆどうふに誘われて PHP 勉強会に参加するようになります。調べてみたら最初に参加したのが第32回PHP勉強会でした。sotarokこと柄沢聡太郎とかいう同世代のやつが発表しててすげーなと思いつつ、負けてらんねーというライバル心がふつふつと湧いてきました。
はじめて登壇したのは第二回symfony勉強会でした。fivestar という ID を名乗り始めたものこの頃ですね。由来ですが、最初に挙げたゲームの情報サイトの名前に用いてたもので、当時好きだった WWE のスーパースター、ロブ・ヴァン・ダムのフィニッシュムーブからとったものです。
symfony を学ぶ
2008年ごろから仕事で symfony を使うようになり、MVC だなんだと学ぶようになりました。社内でも symfony をより効率的に使えるようなプラグインの開発やドキュメンテーションなどを任され、コードの共通化や再利用といったことに執心していた時期でした。後から考えればひどいものを作ったとは思いますが、効率的な開発を意識するようになったことで自身の方向性を見出していった時期でもありました。
パーフェクト PHP の執筆
執筆のきっかけは楽天テクノロジーカンファレンス 2008の出張 PHP 勉強会終了後、グリー CTO の藤本氏に声をかけられたことでした。技術評論社からパーフェクトシリーズの PHP 版を作りたいと話が来ているそうで、僕を含め5人ほど参加の意思を表明し、そこからパーフェクト PHP 執筆プロジェクトが開始しました。当時はどう考えても経験不足でしたが、若さゆえというやつです。
章立てを決めるにあたり、フレームワークのソースを読んで学んだことが大きいとの意見が多数挙がったため、フレームワークを絡めた章を用意することになったのですが、関心の高い分野だったため自分が引き受けることに。
フレームワークといっても、使い方だけ知るのではなく内部まで知ってこそと考えフレームワークを自作することにしましたが、とにかく大変でした。あらゆる知識が人に解説できるようなほど身についておらず、夜な夜な調べながら、あるいはゆどうふに教えを請いながら執筆していた記憶があります。
とにかくこの本を執筆する過程で、自分自身が大きく成長できました。そして、二度と執筆したくないと思いました。
nequal へ参加、クロコスの立ち上げ
PHP カンファレンス 2009 で sotarok とゆどうふと話していた時に、ゆどうふから「なんで nequal に入っていないの」と言われ、お互い「それもそうか」みたいなノリで nequal に参加しました。当時の僕は「誘ってきやがれ」と暗に声がかかるのを待っていたので、ようやく成就した瞬間でした。
wozozo が作っていた reroom を元に nequal としてビジネスをできないかという話になり、小澤隆生氏にエンジニア向けのビジネス勉強会を開いてもらったのが2010年の12月25日のこと。その後ランチを食べてる際、小澤さんから一緒に Facebook を活用したビジネスをやらないかと誘われ、翌年の2月7日にクロコスを創立。
アシアルを離れることは当時まったく考えていませんでしたが、 Web 2.0 の時のような新しい流れに乗りたいという思いと、 nequal のメンバーで仕事をしてみたいという思いで、4月からクロコスに移ることに。
クロコス時代
sotarok や riaf はエンジニアとして芯を持っており、彼らから学ぶことは多かったです。当初は気に食わないことも多々ありましたが、やつらの行動力や考え方はリスペクトに値するものでした。プログラミングは手段であると言うことを学んだのも彼らからです。
クロコスに入ってから半年くらい経ったころ、 wozozo とチームを組み、僕がリーダーを務めることになりましたが、当時の wozozo は割とアレなコードを書いていたので、まあ随分あーだこーだと言い続けました。当時は疎まれていたと思いますが、後に wozozo が別の会社に行った時、クロコス時代に僕が色々言ったことを今度はwozozoがチームメンバーに言う側になったと聞かされた時、言い続けたことは伝わっていたのだと感動したものです。
yuchimiri もあのメンバーの中でよくやっていました。同じチームになったのはヤフーに買収されてからですが、タフなやつだなあと思います。エンジニアとして突き抜けた存在ではなくとも、英語を学んで海外に行くなどすごいバイタリティを持ったすごいやつです。
効率的な Web アプリケーションの作り方の執筆
アシアルの終盤、実はコードを書くことにおいてスランプに陥っていました。よいコードを書きたいと思っていても、納得のいくコードが書けませんでした。ちょうどそんな時期に出てきたのが Symfony 2 で、それを通じて設計の基礎を改めて学び、徐々にコードの書き方というものを掴んでいきました。
そんな思いから書くことになったのが効率的な Web アプリケーションの作り方で、パーフェクト PHP 執筆時の苦悩を押し殺して、単独で執筆することに。無事に出版されたからよかったものの、1人で書くと言うのは本当につらかったです。
この本は Symfony を使ったため Symfony の技術書のように捉えられることがあり、そこは失敗したなと言う思いです。パーフェクト PHP の改訂版で新しいフレームワークを書き起こすため、それをベースにこの本もリプレースしたい気持ちはありますが、精神的余力から行って実現はしないと思います。
クロコスがヤフーに買収される
クロコスを立ち上げて約1年半、当時はわけがわかりませんでしたがヤフーに買収されました。そこでようやく株式と言う仕組みが少しだけ理解できました。
買収後も事業は継続し、この頃からマネジメントへの関心が高まってきます。設計も徐々に洗練されてきたと感じる時期で、自分自身の成長にも手応えを感じ始めました。
ヤフーに吸収合併
買収されてから約2年後の2014年9月、Facebook の規約改定で事業が継続できなくなり、ヤフーに吸収合併されることになりました。同時に2年のロックアップ期間が解け転職ができるようになりましたが、ヤフーという大企業の中で自分がどれだけやれるかを知りたいと思いしばらくヤフーに残ることを決意。
ヤフー側の計らいもあり、体制はあまり変わらず新しい部署が作られたため、ここではチームビルディングに注力していました。この期間は高いパフォーマンスが出せていたと思いますし、ヤフー内でもおそらくトップクラスの評価を得られたため、それなりに自信にはなりました。
TRILL チームとの融合
2015年の4月から TRILL の開発チームと融合し、メディアの開発に携わるようになります。 TRILL の開発メンバーは若いエンジニアが中心で、同じチームメンバーとして相談に乗ることが増え、シニアなエンジニアだらけだったクロコスと違い新鮮でした。10月にヤフーを辞めるまでのわずかな間でしたが、よい関係を築くことができ、マネジメント方面も踏まえた自身の方向性に手応えを感じていました。
同時にカンパニー内の技術戦略室にも身を置き社内の技術体制作りであるとか、経営陣と相談の上会社全体の技術文化改善といったこともさせてもらい、貴重な経験を積めたと思います。
こうした動きをもっとやりたいと思う反面、自分のキャリアとして経営側の知識や経験が不足していると考え、自らが中心となってチームが作れるような組織への転職を希望しました。
そして Ancar へ
sotarok の紹介で Ancar と出会ったのが2015年の10月末でした。当時 Ancar は立ち上げて1年弱のスタートアップで、エンジニアがおらず、自分としてはうってつけだと思い、だいぶ勢いで転職しました。スタートアップということもあり、20代のうちにもう1度挑戦を、という思いもありました。
これまでエンジニア中心の組織にいた自分にとって、エンジニアのいない組織の文化の違いは思っていた以上に大きく、自分の力不足を踏みしめる日々です。とはいえ資金調達やらといったスタートアップの経営者ならではの課題に直面するなど新しい知見として得られるものも多く、ここから CTO としての新しい自分を構築して行くんだ、という思いで日々歩んでいます。
ちなみに Ancar はPHP エンジニア・ iOS/Android エンジニアを募集していますので興味がある方はぜひ声をかけてください。
出会いに支えられた10年間
10年間で様々な体験をしました。よき仲間との出会いが積み重なって今の自分があることを改めて実感します。
森川穣は未だに憧れの存在で、森川さんから得たものを伝えていくことが自分の人生の目標です。そして久保師匠からの訓えに恥じない働きをしていきます。ゆどうふやsotarokといった友人たちは今でも支えになってもらっており、これからもよき付き合いが続けられることを願っています。
これから先、まずは Ancar で結果を出すことが最大の課題です。真に自らの力で切り開くべき課題として、自分自身が成長しなければ達成できません。
これまで自分のやりたい道を歩んできました。もちろん今度もやりたいことをやっていきたいと思っていますが、それだけじゃなくて恩返しができるような、得たものを世の中に還元できるような働き方をしていきたいと思っています。
来年でいよいよ30歳です。まだ20代かと言われますが、十分若手の域は超えました。10年後どうなっているかわかりませんが、いつまでも成長し続けられるよう、心していきたいと思います。