30代を目の前に、エンジニアのキャリアパスを再考

これなに

次の年度が20代最後の年度となるので経験の棚卸しとこれからエンジニアとして大事にしていきたいこと・やりたいことなど文字起こししておく。

...

もう20代終わりなの?早くない?

何をしてきたか、大事にしてきたか

2018年に新卒としてマネーフォワードに入社し、約3年間B2B事業のマネーフォワード クラウドの開発に携わりました。マネーフォワード クラウドは20前後のサービスを提供していて、自分はそういった環境で生まれる横断的な技術課題を解決するためにアプリケーションレイヤーの共通基盤の開発に取り組んでいました。一部具体例をあげるとマネジメントとして採用やチーム組成、PdMとしてプロダクトを0から作ったり、PjMとして複数チームとのプロジェクトの推進、エンジニアとしては共有データベースパターンのアーキテクチャーをマイクロサービスパターンに移行させるために必要な基盤の開発運用や移行計画の作成・一部実行、SRE文化の導入としてObservabilityやレジリエンスの向上・DevOpsなど色んな活動の推進に関わらせてもらい、入社時の「共通基盤の開発をしたい」という自分の希望を大きく叶えてもらいました。

その後の2021年春にグループ会社のマネーフォワードケッサイに出向し、マルチクラウド・NoOpsなどマネーフォワードとは違った技術や文化環境でデータ領域のエンジニアとして新規事業やデータ基盤、パイプライン開発に関わり、21年末にチームの立て直しをミッションとしてデータ領域のEMになりました。データ領域は技術に強いメンバーに恵まれてるのでHowに関する意思決定は任せ、優先順位の洗い出し・決定やPJ管理などといったWhy/Whatに関することやドキュメント文化の醸成などコミュニケーション設計の改善を行い、生産性と満足度の向上に取り組んでいました。またプロダクトビジョンの策定や開発組織全体の課題抽出、サービスのクローズなどデータ領域に閉じない活動もさせてもらってました。

様々な課題に異なる役割や権限で向きあってきましたが自分の中で大事にしてきたのは課題に対してやるべきことをやる(経験のない領域だったとしても)・ある状態の発生原因・課題を定義or特定して人を巻き込み解決できる状態を作る、ということでした。

同じグループの会社ではあるけど、マネーフォワード・マネーフォワードケッサイという異なる会社で同じことを大事にして行動したこと、そして結果が出たことは大事にしてきたことが間違っていなかったという証明だと思っているし、自信にも繋がりました(もちろんやりきれたこと、途中で止まってしまったもの、うまくいかなかったものなど色んなものがありますが)。

次にやりたいこと

4年間こういう動き方をした結果、ありがたいことに今後のキャリアとして選べる方向性が多い状態になっていることに気づきました(PdM, EM, Full stack, Platform Engineer, SRE etc)。そしてどれを取るか決めるために次の数年を何に投資したいか、自分のエンジニアリングテーマはなにか、を先に定める必要性を感じました。

結果的に Developer Productivity Engineering (通称DPE。Productivity Engineering/Developer Productivityなどとも言われていたりする) という自動化技術やツール、文化面のアプローチから開発者の開発体験を改善し、ソフトウェア開発チームの生産性を向上させ、その結果プロダクト価値が高まっていく、というアプローチを次のテーマにしてみようと思っています。自分の馬力でプロダクトを作りユーザーに直接価値を届けるよりも、プロダクトを作るチームやプロセスが生み出す馬力を高めることにフォーカスすることで結果的にユーザーへの価値提供に貢献する、みたいなイメージです。

DPEは3, 4年ほど前からアメリカの有名なTech企業で取り組みが始まっているテーマで日本だとメルカリさんやサイバーエージェントさんなども取り組まれているようです。DPEをざっくり理解するにはこれがちょうど良いです: https://www.linkedin.com/pulse/developer-productivity-engineering-next-big-thing-software-caccamo/

このテーマにしたのは次の数年を投資していくならワクワクすること、努力と思わず続けられる範囲が大きいことにしたく、それをこの4年間の中で特に嬉しかったこと・ワクワクしたことをベースに考えてみた結果でした。

4年間の中で特に嬉しかったことを思い出してみると、開発体験上の自分のペインを解決した時にそれが一緒に働く開発メンバーの役にも立ったり、チームのアウトプットが上がったと感じた瞬間でした。ユーザーの課題が解決されたという反響や売上が上がったということよりも自分自身と自分に近い人が喜んでいたりワクワクしている状態が実現されていること、その状態に対して自分が何かしらテクノロジーや仕組みで貢献してることが僕にとって大きく重要なものだと気づきました。これに該当する過去の自分の取り組みを抽象化すると数年前に流行ったDX(Developer Experienceの方!)がキーワードになりそうと思い、そこから色々調べていった時にDPEにたどり着いて、しっくり来る感覚を覚えました。

テスラがプロダクトである自動車を製造するプロセスに強くこだわりを持ち最適化を続けていることは有名ですが、彼らと同じようにソフトウェアを提供する会社でソフトウェア開発のプロセスにこだわりをもってみることにチャレンジしてみたいなと思ってます。

DPEについてだらだら

キャッチアップを初めたばかりなので間違ったことを言ってる部分がありそうですが、DPEは継続的に長く続けていくことが一番効果を発揮するのではないかなと思っています。もちろん規模が小さければDPE専門の人は必要なケースは少なく、アプリケーションエンジニアでそういう動きもする人がいる、ぐらいが適切かもしれませんが。一方事業が複数あるとかコンテキストが複雑・多いなどが発生するフェーズに入ってくるとDPEを専門にやっていく人が必要になってくるのかなと感じています。またDPEという範囲をDeveloperに絞らず、会社全体にフォーカスを当てたProductivity Engineeringという観点も重要かなと思っています。

このあたりは今後継続的にインプットアウトプットしていくつもりです

最後まで読んでいただいた方、途中まで読んでいただいた方、ありがとうございました!