😇

フルサイクル開発を1年やってみた感想

に公開

MOSHの技術基盤を担当しているProductivityチームでソフトウェアエンジニアをしている Keisuke です。趣味はパンを焼くことです。ProductivityチームというのはPlatform Engineering Teamに近いチームだと考えていただけるとイメージがつきやすいかもしれません。

昨年の11月にMOSHに入社したのですが、早いもので1年が経ってしまいました。本日はMOSHで私が1年フルサイクル開発的に働いて感じるあれこれについて書きたいと思います。この記事はMOSHアドベントカレンダー19日目の記事です。
https://adventar.org/calendars/11936

フルサイクル開発とは

フルサイクル開発とは、Netflixが公開した Full Cycle Developersという記事から生まれた「作ったチームが運用まですべてをやる」という開発スタイルですが、MOSHでもフルサイクル開発を志向しています。当社くらいの小規模な組織では、望む望まないに関わらずなんでもやらざるを得ない側面はありますが、組織としてどういう働き方を志向しているかを明言し、認識をあわせておくことは、様々な意味で重要だと思います。各メンバーにどういう働き方を求めているか伝わりやすいですし、チーム編成や運用面の改善の議論などをするときにも、方向性が決まっているので議論がスムーズに進みます。

MOSHでのフルサイクル開発者ライフ

そんなわけで、MOSHのエンジニアチームは全員が何らかの形で運用にも関わっています。いわゆる開発と運用の業務比率は、参加しているプロジェクトの状況や個人の指向により個人差があるのが現状です。開発プロジェクトのピーク時には、既存システムの課題改善に割く時間は少なくなるのは仕方ないですし、どういう仕事に対してモチベーションが上がるかは人によって違いがあります。現状はその個人差を許容しつつ、目標設定などでチームとすり合わせる形になっています。

MOSHのエンジニアリングの特徴として、私が強く感じているのは、ユーザサポートチームなど顧客と直接接している職種と距離が近いことです。顧客のプロダクトへの要望はSlackチャンネルに流れるようになっているため、エンジニアもそれに目を通しています。すぐ対応できるものであればエンジニアの判断で対応することもありますし、少し根が深いがやるべきだと判断されるものであれば、チームでプロジェクト化することもあります。

また、毎週のエンジニアチームのオールハンズでは、ユーザー満足度や継続して発生している問い合わせや要望などがフィードバックされ、その場で議論になることもあります。顧客の声に向き合うことは、ときに辛い場合もありますが、次やるべき仕事を決めていくうえでの貴重なソースになることもあり、自分たちのプロダクトをよりよくしていくために必要なプロセスだと感じています。理想のフルサイクル開発にはほど遠いですが、全体がサービスを良くするためのサイクルで働いている実感があります。

入社後1年の振り返り

Join後の1年間を軽く振り返ってみたいと思います。裏側の技術基盤やこれから世に出る機能も含まれるため、この記事で具体的なプロジェクトの内容を説明することは避けますが、中規模プロジェクトが3つ、小規模改善系が数個、移行系が数個、その他トラブル対応系が無数、というようなバランスでした。自分としてはもっとできたかなという気持ちもありますが、まぁまぁ妥当だったかなとも思っています。

個人的に感じている課題はやはり、業務バランスの難しさです。運用面で差し込み業務が発生した場合、開発側に影響が出やすく、どちらか一方を優先すれば他方に影響が出るというトレードオフの関係にあります。まだあまり解がなく、試行錯誤しているところですが、ツールやAgentを最大限活用するなどして、生産性をあげていくのが今できることかなぁと考えています。

一方、フルサイクル的に働いているからこそ得られたこともたくさんあるように感じます。日々運用課題や顧客の声と向き合っているので、Join後の顧客の理解やプロダクトの理解がスムーズにできましたし、新規のプロジェクトにフィードバックできることもたくさんあり、よりよいシステムを作ることができている実感があります。また、自然に高いオーナーシップが培われるというメリットもあるのではないかとおもいます。MOSHのエンジニアは積極的に課題を拾ったりアクションしたりしていると感じることがよくあり、フルサイクルであることがよい影響をもたらしていると感じます。自分もそういうチームから刺激をもらっているだけではなく、ロールモデルとなれる仕事をしていかねばと感じます。

総じて、最初の1年としては、たくさん仕事ができて、得られたものも多かったし、いろんなレイヤーで楽しく激しく手を動かすうちに、少し鈍っていたエンジニアとしての勘所みたいなものも取り戻せたので、良い1年だったと言えるかなと思います。

最後に

MOSHは今、システムを作り変えていくフェーズの真っ只中にあります。既存システムが設計された頃には想定できていなかったユースケースやデータ量が発生しているため、これからの成長を支える新しい技術基盤を作り、プロダクトとして生まれ変わることが求められていると感じます。既存システムの問題解決にも、新しいシステムを作ることにも関わることができ、特に今のフェーズはどちらのアプローチからも成果をだしていけるエキサイティングな瞬間だと感じます。

とりとめのない話でしたが、MOSHに興味を持ってくれた方に少しでも中のムードが伝われば幸いです。このフェーズに興味のあるエンジニアがいたらぜひ一緒に働きたいです。カジュアル面談等、お気軽に話を聞きにきてくださいませ。

最後に、私が焼いたパン をおいておきますね(今年は趣味のパン作りもだいぶうまくなりました)。それでは良いお年を!

MOSH

Discussion