2日間でAIと真剣勝負。生成AIは本当に私たちの仕事を爆速化できるのか?
みなさんこんにちは、ウルシステムズのエンジニア @ultaroです!
今回、生成AIによる爆速開発を目的としたTech合宿に参加してきました!生成AIをフル活用して、どこまで開発を速くできるのか? 2日間で体感してきました。
Tech合宿とは?
Tech合宿はウルシステムズ名物の社内イベントです。「PJのことは忘れて、ひたすら開発をする」というエンジニアの心をくすぐられる1泊2日の合宿です。過去最後に開催したのはコロナ前。3~4年ぶりの開催でした。普段の仕事場とは異なるオフサイト環境で、与えられたテーマの開発をチームで行います。
今回の開発テーマは?
今回のTech合宿の参加者は総勢21名。リフレフォーラム@東大島で行われました。3名毎のチーム戦で、与えられたテーマ「生成AIを使いこなして、最強のオレオレTODOアプリを作れ!!」に則した開発を行い、最も生成AIを使いこなす最優秀チームを競い合いました。
環境としては事前にGitHubActionsを使ってCI/CDが用意されており、TODOアプリの開発に集中できる状態でした。
使える生成AIは、社内チャットボットの ultaro(私が作りました!)に加えて、 GitHub Copilot、Azure OpenAI、Claude で、用途に合わせて?使い分けられます。ただ生成AIにコードを書かせるだけじゃなく、スケジュール化、仕様の考案、設計、テスト、報告までAIをどう組み込むかが試されました。
最終報告時には生成AI活用率を教えてね、とのお言葉!いろんなことに生成AIを使わなきゃ、と気合いが入ります。
懇親会?いや、みんな本気で開発中!
1日目のみんなのテンションはMAX。懇親会が夜にありましたが、飲む量を調整して「開発続けます!」と合宿部屋に戻りました。いざ戻ってみると、ほとんどの参加者が戻って開発を続けていました。
合宿部屋は午前2時で一旦解散ましたが、私たちのチームは個別の部屋に戻ってからも開発を続け、午前5時くらいまで頑張りました。他のチームも同じような感じだったようです。
朝寝坊して、ちょっと焦ったのは内緒です。
AIに全てを任せるとどうなるか?
今回、私たちのチームでは時間が足りなかったためテストは実施せず、仕様の検討、設計、実装、報告資料の作成にAIを活用しました。
仕様の検討では特に大活躍しました。
沢山の案をAIに出してもらって、私たちがやったのはその中から選ぶだけ。
そして、肝心の開発。AIを使ってスピードは確かに上がりました。設計から実装、AIにどんどん質問していけば、ある程度の答えが返ってくるし、「こんなアプローチあるのか!」と驚く場面も多数。
でも、実際にはAIが全部を完璧にやってくれるわけじゃない。特にスケジュール作成や環境構築、コードレビュー、細かいバグの修正などは、意図したものにするには、プロンプトをたくさん書かなければならず、一度きりの作業としては効率が悪いと感じました。加えて、GitHub Copilotでチャットウィンドウからソースコードへの反映時に意図してない部分も変更され、動かしてみるとおかしなことに、おいおい、生成AI!
つまり、AIは補助ツールでしかない。でも、その補助があるおかげで、自分では発見できない案が出たり、アイデアの実現がグッと近づいたのは確かです。使いどころを見極め、効率的に補助を受けるための工夫が必用です。
最終プレゼンで分かった、生成AIの真価
合宿の締めくくりは、各チームによる最終プレゼン。
AIをどの程度どのように活用して何を作り上げたのかや、自分たちの考える最強プロンプトを発表し合いました。
ここで私が気づいたのは、AIにどれだけ頼るかよりも、それをどう使って「自分の考えを形にするか」が重要だったということです。
AIを使ってスピードや品質を上げるアイデアや、クリエイティブさ、新たな生成AIの活用案などの人間として考える部分が勝負の分かれ目となり、残念なことに私たちのチームは、最優秀チームを逃しました。次点。無念、、、
モノづくりに集中することに重きを置かず、こんな方法だとうまくAIを活用できるか?といったチャレンジやアイデアが重要ですね。
AIは万能じゃないけど、共に進化していく存在
合宿を通して一番強く感じたのは、AIは人間の能力を加速させるけど、あくまで道具の一つだということ。つまり、「AIに任せておけばOK」ではなく、どう使いこなして自分のアイデアやスキルを最大限に引き出すかが鍵になるということです。
結局、AIに全部任せるのは無理。でも、その限界を知ることで、どこで自分が手を入れるべきかが見えてきたのは大きな収穫でした。次回のTech合宿があれば、またぜひ参加して、楽しみながら学びを深めたいです。
それでは、次のブログでまたお会いしましょう!