はじめに
こんにちは、Web系エンジニアを目指して学習中の修士課程の学生です。
今回は、学生向けハッカソンイベント「技育キャンプ」に初参加した経験をまとめます。
技育キャンプは友人とチームを組んで参加することも可能ですが、
私は個人参加だったため、当日割り振られたメンバーで即席チームを組むことになりました。
個人開発ばかりだった自分にとって、チーム開発は未知の世界。
右も左も分からないまま飛び込んだ2日間でしたが、結果として多くの学びを得ることができました。
プロダクト概要
私たちのチームは「優柔不断を解決する決断サポートWebアプリ」を開発しました。
私はフロントエンドを担当し、以下を実装しました。
- 最初と最後の画面の制作
- デザイン提案
- バックエンドAPIの表示部分
ハッカソンで直面した壁
1. 議論の停滞と「舵を取る」決断
初日の打ち合わせは、正直かなり停滞していました。
初ミーティング特有の沈黙が流れ、誰も積極的に仕切らず、方向性が定まらないまま時間だけが過ぎていきました。
「このままでは何も決まらない」と感じた私は、思い切って舵を取ることにしました。
ただし「リーダーをやります!」と威張るのではなく、
「初めてなので分からないのですが、助けてもらえますか?」
と弱さを開示し、共有ドキュメントの作成を提案しました。
結果、徐々に議論が動き始め、他のメンバーも意見を出しやすくなりました。
停滞を嫌った姿勢が、チームを前進させるきっかけになったのです。
2. 設計不足による混乱
ハッカソン当日に仕様変更がなされ、結果としてバックエンドの負担が非常に大きくなってしまいまい、「設計が甘いとこうなる」と痛感しました。
3. アクシデントとチーム維持
5人で始まったチームでしたが、途中で1人が離脱。最終日には遅刻も重なり、実質3〜4人で進める時間もありました。
それでも「できることを探し続ける」意識を持ち、チームメイトの力を借りながら最終的に動くプロダクトを完成に近づけることができました。
工夫したこと
-
議論の見える化
「言葉だけだとイメージがバラける」と感じ、Wordに仕様を整理することを提案。全員が共通認識を持ちやすくなりました。 -
ユーザー視点の提案
機能設計で「選択肢をすべてユーザーに任せるのではなく、こちらである程度提示すべき」と提案。UXを意識できました。 -
ペア作業での相互学習
フロント担当ペアと積極的に質問・相談し合いながら進め、相互に成長できる環境を作りました。 -
AIの活用
コード補助や仕様整理にAIを利用し、技術的に追いつけない部分をカバーしました。 -
仲間の支え
即席チームでしたが、全員がそれぞれの持ち場で支えてくれました。- バックエンドの2人:Docker構築やGitHub管理、設計強化、スライド作成などを担当
- フロントの相方:積極的に連携しながら進めてくれた
- 離脱したメンバーも、事前のDiscordでの準備や助けがあった
自分一人では到底できなかったことも、仲間の力があったから形にできました。
学んだこと
学び1:停滞を嫌う姿勢がリーダーシップにつながる
場が止まるのを嫌った自分が「火をつける」役割を担ったことで、チームが動き出しました。
リーダーシップは完璧さではなく、弱さを開示して動くことでも発揮できると学びました。
学び2:設計と見積もりの重要性
バックエンドに負担が集中したことで、初期の設計とタスク見積もりの大切さを痛感しました。
学び3:まず動くものを完成させる
デプロイや一部機能は未完成でも「動くものを出す」ことができたのは大きな収穫でした。
まとめ
技育キャンプでの初ハッカソンは、技術面だけでなくチームで動く力を磨く絶好の機会でした。
- 停滞を嫌って前に出る勇気
- 弱さを見せることで場を動かすリーダーシップ
- 設計・見積もりの重要性
この経験を次の挑戦につなげ、**「ユーザーに価値を届けるエンジニア」**を目指して学習を続けていきます。
そして何より、即席チームながら最後まで一緒に走り切ってくれた仲間には本当に感謝しています。
一人では得られなかった学びも、仲間と一緒だったからこそ経験できました。
最後まで読んでいただきありがとうございました