クックパッドに転職して丸2年が経った

新卒で入った前職はちょうど2年で辞めたので、社会人生活の半分をすでにクックパッドで過ごしたことになる。

最初はサービス開発エンジニアとして三ヶ月くらいやってたんだけど、その時はあまり自分の立ち位置をうまく作れてなかったと思う。学生の頃からサービスを作る真似事みたいなのはやってきていたけど、いざ現場に入ってみると本物のサービスを作れる人たちってのは僕と全然違う。単に技術力ではなく、粘り強さとか、発想の柔軟さとか、そういう人間としての性能が高い。サービスづくりではこの人たちには勝てないと思った。

しかしそういう才能のある人たちがガンガン開発を進めていくといろんな問題が起こることに気づいた。例えばテストをちゃんと書くこと。正しいコードを書くこと。脆弱性に気をつけること。ひたすら走り続けるのはいいけど、誰かが踏みとどまってそういう落ちた問題を拾っていかないと、サービスの将来に深刻な問題を残すことになる。長期的にみれば開発効率を大きく下げてしまう。

僕は踏みとどまることにした。素晴らしい才能を持った人たちが最大の力を発揮できるように支援するエンジニアになることだ。そして開発基盤という二人チームができた。僕が選んだ問題は、その時落ちていた二つの大きなトピックで、一つはレガシー化していた画像配信の再構築、もう一つはサイトのパフォーマンスだ。

画像配信の経験はなかったが、ApacheやImageMagick、Amazon S3といったありものの道具を組み合わせることでわりと素早く実用レベルのものを作ることができた。僕はこれをtofuと名付けた。tofuのウリは画像のリクエストURLで画像のサイズを指定すれば、好きなように動的にリサイズやクロップができるという点だ。サービス開発ではサイトのプロトタイピングを頻繁に行うので、tofuによって開発速度を底上げすることができた。

もう一つの問題、サイトのパフォーマンスについて。遅いサイトはユーザのストレスになり、サービス自体の価値を損ねてしまう。さらにいえばサーバの負荷にも繋がり、お金がたくさんかかってしまう。しかしサービス開発エンジニアは全員が必ずしもチューニングの技術に長けているとは限らないし、チューニングに当てる時間がなかったりしてどうしても後回しになってしまっていた。僕はそのボールを拾った。自分をパフォーマンスの責任者ということにしてもらって、サイトのレスポンスタイムに目を光らせるようにした。Railsで書かれたアプリケーションのチューニング、つまり速度を計測してはキャッシュを入れたりクエリを最適化したり無駄のない記述に書き換えたり、DBにインデックスを張ったりいろんなパラメータをいじったりという地味だけど誰かがやらなければいけなかった作業をひたすらやっていった。これはいまも続いている。

こんなことをしているうちに、いつの間にか所属が開発基盤からインフラに変わった。tofuは安定して運用フェーズになっていたし、速度を担保するのはどちらかというとインフラの責任にするのがしっくりくるからだ(ちなみにこのあと開発基盤は id:secondlife 氏を初めとする有名エンジニアが次々入ってきて、ドリームチームどころか超人オリンピックみたいになってて笑えるんだけど、それはまた別の話)。

あるとき学生さんに僕の業務を紹介することがあって、僕はインフラでサーバを作ったり監視したり、画像配信やったりチューニングしたりしてるよという説明をしたら、こういう質問が来た。クックパッドのサービス開発がクリエイティブだということはわかった、でもインフラはそれを運用するという立場で、そこにクリエイティビティはあるのか。すごいことを質問するんだなと思った。 どんな仕事にもクリエイティビティはある。僕は学生時代に長いこと掃除のバイトをしていろんな人と働いたけど、創造的な発想ができない人にはまともな掃除はできなかった。 クックパッドのインフラはサービスを開発しさえしないけど、非常にクリエイティブな仕事だ。サービスは常に進化し続けるしユーザも増え続ける。そんな状況を支えるインフラとして、やるべきこと、やりたいことが山のようにある。パフォーマンスだけでなく、他にも解決したい問題がいくつもあって、どれも一筋縄ではいかないものばかりだ。クリエイティブでないとその一つも解決することはできないだろう。

実のところ、サービス開発から開発基盤に転向する時、新しい仕事にワクワクする一方、最前線から退くという負い目を感じていた。産みの苦しみから逃げてしまったという敗北感だった。でもそれは、あとから気づいたが、クリエイティブからの離脱ではなかった。領域がバックエンドに変わっただけでものづくりの現場であることには変わりなかった。今でも業務の半分以上はコードを書きまくっている。いま、インフラとなって、ユーザのアクセスを受け止めるこのインフラもまた最前線であると実感している。

クックパッドでの三年目を迎えたけど、会社もサービスもこれからもっと盛り上がって行く感じがあるので、これからも楽しみですね。あとこれだけは言っておきたいんだけど、 クックパッドはエンジニアを募集しております !!!!!!!

21161 views and 7 responses

  • Apr 8 2012, 9:53 AM
    山 ぷるぎす liked this post.
  • Apr 8 2012, 9:56 AM
    Keita Urashima liked this post.
  • Apr 8 2012, 3:58 PM
    Takamasa Wada liked this post.
  • Apr 8 2012, 5:40 PM
    Syoichi Tsuyuhara liked this post.
  • Apr 9 2012, 7:04 AM
    bardiche liked this post.
  • Apr 9 2012, 5:34 PM
    openarms liked this post.
  • Apr 13 2012, 1:03 AM
    oxycaster (Twitter) liked this post.