個人開発でやっていたサービスが少しづつ大きくなってきたため、去年の夏の終わりくらいから前に同じチームだったエンジニアを誘ってチーム開発で取り組むようになりました。
半年以上経ち、個人開発からチーム開発になって取り組んだことなどをまとめておきます。
目次
Slackでワークスペースを作ったり、Google Analyticsなど諸々の連携
まず最初にSlackのワークスペースを作成して、チャットや開発がしやすいように整備しました。また、Githubの連携やチャンネルの作成などチーム開発がしやすいようにしました。
次にGithubやNetlify、Contentfulなどの開発に必要なツールの連携、Google AnalyticsやSearch Console、Clarityなどの各種ツールを招待して使えるようにしました。
その他にもアーキテクチャの説明や各種使い方など、今後チームとして開発する上で必要なことを実施しました。
アジャイルな開発
個人開発でやっていた小さなサービスということもあり、柔軟かつ頻繁なリリースを進めるためにアジャイル開発を取り入れました。
同じチームだった時にアジャイル開発でやっていたこともあり、お互いアジャイル開発のメリットややりやすさを感じていました。
カンバンを作成して、1週間を1イテレーションとし、毎週必ずプランニングの時間を入れていました。プランニングでは主に前イテレーションでやったことと次イテレーションでやることを話します。
クォーターの初めに大まかにストーリーを作成し、ポイントをつけていきます。ある程度イテレーションを回していくとベロシティが計測できるため、今クォーターはここまでできそうだねというよう話ができるようになり、スコープを調整しながらアジャイルな開発を進めることができました。
ふりかえりの実施
さすがに毎イテレーションのふりかえりまではできていないですが(本来はやった方がいいけど業務後に進めていることもあり毎週は負荷が大きすぎると判断)、ふりかえりも行うようにしました。
実際にふりかえりをしてみるとこれからはこうしていこうやもっとこうすればよかったなど新しい発見や学びがあります。また、お互いに普段思っていることなどを話すので、認識や考えの共有ができる良い機会になりました。
最後に具体的なアクションを出すことで、次にやることが明確化されて、ふりかえりをやった効果をさらに実感できました。
定期的なオフライン会によるペアプロやリフレッシュ
プランニングやMTGなど基本はオンラインでやっていますが、月一くらいでオフライン会を実施しています。
オフラインで集まってペアプロしたり、サウナに行ってリフレッシュしたりと作業&遊びみたいな感じになっています。
定期的にオフラインで集まることで雑談やふと思ったアイデアなどを話す機会となり、とても良い取り組みとなっています。
OKRを立てる
2023年から実際にOKRを立てて、目標を明確にするようにしました。OKRとは、Objectives and Key Resultsの略称で、目的と重要な成果指標のことです。
OKRを考えて立てることで、中長期的なビジョンを掲げることができ、今後の見通しがクリアになりました。
毎週のプランニングでOKRの進捗の確認をすることで、今どの程度達成しているのか、何をやらなければならないのかが明確化され、より推進力を持ってサービスの成長にコミットすることができたと思います。
また、単純に達成されていることが見える化することでモチベーションも上がりますし、達成感も得やすいと思います。
開発以外のことも共有したり話し合うような時間をつくる
サービスが大きくなるにつれ、開発以外の取材や外部の方との打ち合わせ、お問い合わせが増えてきました。
チームに入ったエンジニアには主に開発をお任せしてもらっていますが、随時お問い合わせや打ち合わせの内容を共有したり、意見を話したりするようにSlackやMTGで話す時間をつくりました。
また、お問い合わせの内容による対応や対策を話し合ったり、ユーザーの声を拾ってどうしていくかを検討したりと一緒にプロダクトを成長させていくような取り組みをしました。
このように、自分だけが持っているコンテキストをなくすことで、常に共通の知識とビジョンを共有している状態を目指しました。
この辺りは現在自分含め2人だけなのでやっていけている感ありますが、人数が多くなると課題になってくるかなとは思います。