
はじめに
こんにちは、令和トラベルのバックエンドエンジニアの北山です。
この記事では、現在、私が運用業務を担当しておりスタートアップの運用で意識していることをお話しできればと思います。
運用担当を置いた理由
令和トラベルは今年4月に NEWTをリリースしました。
リリース前はエンジニアリソースを開発に集中することができていたのですが、サービスをリリースすることによって、サービスを運用する上で必要なデータ修正、問い合わせ調査なども合わせて行う必要が出てきました。
また、スタートアップである令和トラベルでは、PMFの達成をミッションとして掲げており、プロダクトのリリースをより素早く行うために最小単位戦略を取っています。
最小単位戦略に関しては、弊社代表の篠塚のnoteでより詳細に書かれているので、見ていただければと思います。
その関係上、優先度の高い開発案件から素早くリリースを行うので運用でカバーしていくことになり、そこにもエンジニアリソースを使う必要が出てきました。
運用と新規開発の両方を行なっていくことはサービスを運用する上では当然のことですが、運用業務は突然発生する事が多く計画を立てにくいので、エンジニアがその両方を担当してしまうとスイッチコストやナレッジがたまりにくい事が懸念されたため、運用をメインとする役職を置くことで、開発速度を落とさず運用業務が円滑に回せるようにしました。
また、開発の段階でも運用前提として開発を行いようにしています。
意識していること
前述でも書いたのですが、何よりもPMFが大事でありカスタマーへの価値提供が重要なので、デリバリーのスピードを優先してリリースのための最小単位戦略をとっています。
その中で運用していく上で以下の3点を意識しています。
- 可能な限り自動化を行う
- 頻度を計測しつつ必要なタイミングで機能化する
- セキュリティやお金に関しての運用は優先度上げて開発する
1. 可能な限り自動化する
こちらは、運用でカバーを行なってく方針とは少し矛盾するかもしれないのですが、マニュアルでのデータ操作はミスも発生しやすいです。
管理画面などに実装できない場合も、サードパーティーアプリやスクリプトを利用することで同じ結果を得られることがあるので、他部署とも連携しつつより良い折衷案を探すことを意識する必要があります。
例えば、Redash を使えば特定のデータが欲しい場合も実装を必要しません。
2. 頻度を計測しつつ適切なタイミングで機能化する
運用を行なっていると、実際の業務においての何が重要が見えてきやすい位置にいるので、開発時点では優先度を下げているが、サービスのリリース後に想定以上の運用工数がかかっていることがよくあります。(エンジニア以外にも他部署の工数も含めて)
その頻度と工数を日々計測しつつできる限り、先回りして開発を行なうことが大事になります。
3. セキュリティやお金に関しての運用は優先度を上げて改善する
基本的には開発段階で気をつけつつ、開発を行なっているのですが、運用が始まってから気がつくことがあります。この場合は、頻度は少なくとも優先的に対応を行なって、大きなインシデントが起こる前に機能化などの対応する必要があります。
今後について
今はPMFを目指すことが一番となっているので、目の前のリソース確保のための改善や効率化をメインとしているのですが、PMF達成後にはマニュアルでの運用を行うのは難しくなってくるので、運用で得た知見を生かしつつ先回りしてボトルネックとなりそうな箇所を潰していき、開発のためのリソースにより注力できる組織にしていきたいと考えています。
最後に
恒例の採用のなのですが、令和トラベル開発チームに興味を持っていただけましたら、ぜひカジュアルに情報交換できればと思います。
また12/21に令和トラベルとカウシェ、10Xの3社でモバイルエンジニア向けのイベントを開催します!少しでも気になった方はぜひご参加ください!!
- Native or Flutter議論や経緯、背景について
- アーキテクチャの紹介
- 技術選定の背景
それでは次回のブログもお楽しみに!