この記事は freee Engineers Advent Calendar 2016 の 8 日目です。
こんにちは、freee 株式会社で事業開発エンジニアをしている @takatm です。
今年の 7 月から freee で働いています。
6月までは大手と呼ばれるSI会社で長らく働いておりました。
今回はそこからfreeeで働くことになったきっかけや
実際の経験について書いてみようと思います。
#さまざまな経験の中で
前職では大きな会社だったことから、時にはセールスエンジニア、最終的には海外での仕事から特許発明、サービス開発まで本当にあらゆることにチャレンジしてやらせてもらっていました。
またプライベートでは友人とクラウド課題管理というサービスも作っていまして、面白く感じる中で、
自分の手を動かして価値を出し続けたいという思いが強くなり
今後のエンジニアとしてのキャリアについて悩んでいました。
#生きる
そのなかで、毎年参加しているDevelopers Summitにて
@hiragiriさんの生きるという講演を聞くことになりました。
講演は、身を挺して限界まで、さらには限界を超えて
コミットすることで、得るものも大きいし本当の意味で
生きているという実感が得られている、といった内容でした。
迷った時は「モチベーションの源泉を探る」というお話があり、
自身の源泉となっているモチベーションはなにか?
本当にエンジニアとして毎日生きている実感があるか?を考えるきっかけになりました。
そしていまは雰囲気づくりから含めてfreeeの開発組織を作っていると聞き、
この方の元で働いてみたいと思ったのが縁あって、今に至っています。
#働いてみて違ったところ
SIな大企業とwebメインなベンチャー、とまったく正反対と言えることもあり
話す言語が違う、というのはわかっていたのですが
まさに得意とするベースドメインや重要とするポイントなど、
まさしく言葉の違いを実感しました。
これまでは全体のコンセンサスをいかにとるかが大事だったところ、
いまはミーティングやレビューなどのコンセンサスはサポート的なものでしかなく
すべて自分の責任でコード書き、サービスをリリースして
その後は運用まですべて責任をもつことがメインで、
その代わり成果もわかりやすいのかなと思っています。
#とにかく無駄がなくなった
これまでは企画から開発、プロダクトマネジメントから事業につなげていく
ところまで広くやっていました。
いまは役割がはっきりしていて、プロダクトマネージャーの方が
プロダクトのビジョンとそれを実現するための1歩まで考えてくれて、
それを形にするのがエンジニア、といった感じです。
作ってしまえばあとはマーケティング・セールスの方が責任を持って
売っていってくれるので役割がはっきりしています。
すべての成果はコードなので、プレゼンテーション資料をつくることがなくなり、
その分すべてアーキテクチャを設計して、コードにしていくことに
注力している感じです。
#チャレンジできたか
まだ半年といったところですが、バックエンドのコアエンジンから、androidのコードを書いたり、Windows、連携サービスの開発リリースなどしてきました。
いまはテストの大事さを実感して、PageObjectによるE2Eテストにも取り組んでいます。
#毎日0.1%ずつ成長する
その中で、毎日0.1%ずつだけでも成長できるようにしようと心がけています。
読んだコードを次触った時はすぐ書けるようにロジックを整理しておく、
書いたコードの技術体系を理解する、自動化、aliasなどで徹底的に効率化したりなど、
今日の自分の0.1%となるとほんの少しだけですが、
それでも1年で1.5倍、2年続ければ
100 * 1.001 ^(365 * 2) ≒ 2 と今の自分の2倍以上にも成長できることになるとかなと。
10倍の仕事量があっても、それを成長していくことで
普通にこなせるようになっていく、
いわゆるスーパーエンジニアな人との違いはそんなところに
ある気がしています。
#エンジニアとして生きる
毎日成長があり、周りにスーパーエンジニアなすごい人もたくさんいて
まだ全然底が見えない環境にもあり、
エンジニアとして生きている実感を得られています。
そんなfreeeに興味のある方はこちらまで。
明日は、皆が怖くて慎重になるインフラにどんどん切り込んで超高速化をなしとげていく、
インフラ神@sugitakさんです!