開発合宿に行ってきました 2024
8/20 ~ 8/22 にエンジニア 5 名で 2 泊 3 日の開発合宿に行ってきました。
合宿の目標設定と準備
今回の合宿では生成 AI を利用したアプリケーションの開発に必要な技術を習得し、実際にアプリケーションを開発することを目標に設定しました。チームでの開発を通じて、各自がスキルアップすることを目指しました。
8月上旬に開催された Google Cloud Next Tokyo ’24 に参加した際に、生成 AI を利用したアプリケーションの事例を多く見かけており、Google Cloud の生成 AI を使えば簡単に実装できることがわかったので、いざ使ってみることにしました。
合宿前には、生成 AI を利用したアプリケーションの案を出し合い、合宿中に取り組む課題を決定しました。また、合宿中に取り組む課題に必要な技術やツールの目星はつけておき、合宿中にスムーズに作業を進められるように準備を行いました。
合宿場所の選定と環境
前回の合宿では、湯河原の老舗温泉旅館『おんやど惠(めぐみ)』におせわになりました。移動距離や使用可能な時間、設備などを考慮し、今回はお隣駅の熱海にある『 I&O 熱海』に決めました。
I&O 熱海は2024年5月にオープンしたばかりで、駅からも近く、JR 熱海駅からタクシーで 3 分程度で到着できる好立地です。歩いても 10 分程度の距離ですが、かなり急勾配の坂を登る必要があるので、荷物が多い場合はタクシーを利用することをおすすめします。
I&O 熱海には、20人収容可能な会議スペース、10 人宿泊可能なベッドルーム、温泉、サウナ、水風呂などの設備、 WiFi 、ホワイトボード、モニターなどのオフィス環境を完備し、市内のレストランと提携した地産地消の食事、チームビルディングに特化したアクティビティなどを提供します。 (PR TIMES より引用)
そう、なんと使いたい放題のサウナまでついています。サウナでリフレッシュしながら、開発に集中できる環境が整っています。なんとも贅沢な合宿場所です。詳細は公式サイトをご覧ください。
開発合宿のスケジュールとタスク管理
1 日目
9時ごろに JR 品川駅集合し、東海道本線に乗って熱海へ移動しました。熱海駅に到着後、タクシーで I&O 熱海に移動し、11:00 ごろから作業開始です。冒頭でキックオフ MTG として合宿の目的を確認したり、大まかなスケジュールを共有しました。その後、各自の作業に取り組みました。
今回作成したアプリケーションは、ユアマイスターで実際に使われているデータを元に、コンテキストキャッシングも使いながら高速に費用を抑えて要約を生成するアプリケーションです。アーキテクチャの概要図は以下の通りです。弊社で使い慣れている Cloud Run と Cloud SQL を利用し、 Vertex AI Gemini API を使って生成 AI を実装しました。
- Terraform で必要なリソースを作成
- コンテキストに与えるデータの整備と、プロンプトの検討
- 要約を生成するアプリケーション本体の実装
- コンテキストキャッシングの実装
大まかにこの 4 つのタスクに分かれて作業を進めました。はじめて触る技術もありましたが、大きなモニタに途中作業の様子を共有しながら、アドバイス等を相互に行いつつ開発できたのが、合宿の良さだと感じました。やっぱりリアルタイムでオフサイトで一つのものを作るのは楽しいですね!
2 日目
7:00 ごろから散歩に出たり、温泉に入ったり、作業開始しているメンバーがいました。8:00 から朝食をとり、9:00 から集合して作業開始です。昨日の成果物を確認し、不足している部分を集中して進めました。
夕飯には、 BBQ を行いました。道具は有料にはなりますが I&O 熱海でレンタルすることができます。ベランダでできるので、開発が終わって 0 秒で肉を焼き始めることができたのは感動でした。
3 日目
3 日目も 9:00 から作業開始しました。最後に成果報告を行い、15:00 チェックアウトして開発合宿終了です。
まとめ
合宿により集中した作業環境を設け、新しい技術の利用、習得にチームで取り組むことができました。
通常のオフィス環境やリモートワーク環境では、会議や Slack による中断が多く、長時間が一つの業務に集中することが困難です。合宿では、こうした中断を最小限に抑え、集中して作業できる環境を設けることができました。
あえて物理的にも論理的にもそれまで担当している普段の業務を一度置いておいて、合宿中に一つのアウトプットに参加者全員で協力して進めることで、効率よく課題に取り組めたと思います。(20%ルールなどを設けても、通常業務の方が優先されどうしても進まないので、合宿でやるぞ!という強引さが時には必要です。)
文字通り、同じ釜の飯を食い、同じサウナに入ったことで、チーム全体の結束力も高まり、合宿後も業務においても効果が出ていると感じています。
ユアマイスターでは、今後も定期的に開発合宿を行い、技術の習得やチームビルディングに取り組んでいきます。