はじめに
去年は初めてハッカソンに参加したのですが,その後も他のハッカソンに参加し,合計3回出場しました.
振り返りをしていなかったので,参加の経緯や得られたことについてまとめておきます.
1つの記事では1つのハッカソンについてまとめます.3部構成です.
TL;DR;
- UMP-JUSTハッカソンの参加記録をまとめました
- 技術賞とcotomi賞を受賞することができました
- チームメンバーとさらに仲良くなりました
ハッカソンとは
ハッカソンとは,主にComputer Science系の学生が集まり,短期間でソフトウェアサービスを開発するイベントです.
基本的な流れ
1.テーマ発表:
- 主催者から作成するサービスのテーマが発表されます.参加者はテーマに沿ったサービスを開発します.
2.チーム編成:
- 参加者は3〜5人のチームを編成し,指定された開発期間でサービスを開発します.
- チームメンバーの中でも役割分担(サービスを開発するエンジニア,サービスのプレゼンを行うプレゼンテーターなど)するのが一般的です.
- ソフトウェア開発の場合,さらに細かくフロントエンド(Webサイト開発)・バックエンド(API・DB開発)・インフラ(デプロイ等)の担当で分けるのが一般的です.
3.開発期間:
- 多くは1日〜2日で開催され,アイデアだしからサービス開発,最終発表まで行います.
- 開発期間が1ヶ月ほど与えられるハッカソンもあります.
- 2日間のハッカソンの場合,1日目の夜は徹夜に近い状態で開発することになります(深夜4時くらいから自分の限界を超え始める).
4.発表・審査:
- 開発したサービスを発表します.
- ピッチ形式,2分~10分の発表時間であることが多いです.
- 開発背景→課題→解決策→サービス内容→デモ,の流れが一般的です.
- どれだけ良いサービスを開発してもプレゼンがうまくいかないと審査員には伝わらないので,スライド資料・プレゼンにも力を入れる必要があります.
UMP-JUSTハッカソン
僕が初めて参加したハッカソンです. 2024年9月7日,8日の2日間で開催されました.
東京大学大学院情報理工学系研究科の一組織「UMP-JUST」が主催のハッカソンで,当時所属していた学科の教授が宣伝しているのを見て知りました.
ハッカソンのテーマは「生成AI」.(特にLLM)をテーマにしたものでした.
2023年以降はLLMの爆発的な普及によって,生成AIをテーマにしたハッカソンが非常に多いです.
参加背景
高専時代や大学2年次はハッカソンに一度も参加したことがなく,ハッカソンは未知の世界でした.
そんな中,その年の3月に大学編入同期の友人があるハッカソンで優勝し海外研修に行くのを知り,ハッカソンに興味を持ち始めました.
しかし,当時の僕はソフトウェア開発について全く知識がなく,個人開発の経験もありませんでした.できることと言えばpythonやLLMを使ったアルゴリズム開発くらい・・・. (友人の仕事の関係でハッカソン前に少しソフトウェア開発に携わることになったのですが,それはまた別の機会に)
ただ,このハッカソンは条件があまりに良く,貴重な機会でした. 参加学生が学内に限られていて,電子情報工学科の3, 4学生 or 情報理工の院生のみだと思われる(昨年は参加チームが10チーム程度). さらに,優勝賞金が30万円と大会の規模に対して非常に高額... 対外的に開催しているハッカソンでは,優勝賞金が10万前後,賞金なしの場合もある,参加チームは30チーム以上であることが多い. それを考えるとこのハッカソンの条件は別格です.
お金に目が眩んだ僕は参加することにしました.
メンバー探し
参加することに決めた次は,チームメンバーを探します.
声をかけるチームメンバーは参加を決めた瞬間から決めていました. 大学編入同期でインターン先も同じだった2人に声をかけました. 2人とは1年以上の付き合いがあり,実力に対して絶対の信頼をおいていたので,この2人以外にはいないなと考えていました.
強い仲間を引き入れて自分の実力の無さを補う作戦です.
幸い,2人とも参加を快諾してくれました.チームメンバー探しはこれにて終了です.
事前準備
ハッカソンは2日間のみの開催なので,アイデア出しはある程度事前に行っておくのが得策です(当日になってアイデア出しから始めると,実質的な開発時間は徹夜でやっても10時間弱になる).
メンバーと事前にmeetingを2回ほど行い,アイデアだしを行いました. メンバーの1人は先ほど述べた優勝経験のあるメンバーだったので,アイデア出しや当日のノウハウは彼に教えてもらいました.
meetingを通してメンバー2人とさらに仲良くなれました. アイデア出しも楽しい時間になりました.
開発するサービスの案を2つまで絞り込み,本番に臨みました.
本番
1日目
会場は東大の弥生キャンパスにありました. 普段通っている本郷キャンパスと隣接しているキャンパスですが,初めて入った場所でした.
朝早くに起きて大学に向かい,何だか新鮮な気分の状態で会場に向かいました.
参加チームは10チームでした. 学部3年の同級生が2チーム,学部4年のチームが1チーム(?),即席チームが1, 2チーム,残りが修士チーム・博士チームでした.
会場に入った瞬間は,ハッカソンへの参加が初めてなのもあり,かなり緊張しました. ですが強強のチームメンバーが一緒だったので少し経ったら緊張は解消されました. 小中学生時代に参加していたピアノの発表会ではずっと緊張していたので,仲間がいることに心強さを感じました.
1日目は前半がアイデアソン(アイデアを出し合う)で,後半からプロトタイプ開発が始まりました. アイデアソンでは終始わいわいでしたが,開発が始まったらどのチームも忙しく開発してました.
昼休憩時間に開発するサービスを決定し,午後は開発を頑張りました. 僕はbackend・LLMを使ったアルゴリズムの開発,友人Aはfrontend・インフラの開発,友人Bはリーダー兼ビジネスモデル調査・プレゼンを担当することにしました. 役割分担が綺麗に決まり,事前にMVP(Minimul Viable Product)を話し合っていたこともあり,開発はスムーズに行えました.
初日の開発は順調に終わりました.
ここからが徹夜作業です.
帰宅後,zoomで開発の方針・明日の方針を決め,爆速開発に入ります. 僕は睡魔に勝てず深夜4時ごろには寝たのですが,友人Aは徹夜で頑張ってくれました(本当に感謝). 深夜テンションでの開発は楽しいです.zoomを繋いでおしゃべりしながら開発すrのでさらに仲良くなります.
2日目
一番の難関,朝の起床を乗り越えました. 無事会場に辿り着きます.
午前中は開発だったので,ずっと残りの開発をしていました. 計画通りの時間にデプロイ段階に入りましたが,若干バグが残った状態で開発時間が終了してしまいました. ギリギリまで全集中して取り組んでくれた友人Aには大感謝です.
若干の心残りはありましたが,作ったサービスには相当な自信があったので自信を持って発表に臨みました.
友人Bがスライドを作ってくれました.ビジネスモデル提案から開発したプロダクト・デモ紹介まで素晴らしいスライドで,大感謝でした. 発表も完璧で,感謝でいっぱいです.
プロダクトデモ動画
実際に開発したサービスのデモ動画です:
結果
全チームのプレゼンが終わり,ドキドキの状態で結果発表を待っていました. 開発したプロダクトの出来,プレゼンともに両方良い感触を持ちましたが,審査はどうなるかわからないのでかなり緊張しました.
審査の結果,技術賞とcotomi賞を受賞することができました. 非常に嬉しかったです.

受賞の様子
大会が終わった後は打ち上げで本郷三丁目近くの韓国焼肉屋に行きました. 非常に美味しかったです.
打ち上げの様子
メンバーと雑談も色々できてさらに仲良くなりました.
感想
ハッカソンは開発期間が短くて大変だけど,期間が短いが故に技術も急成長すると感じました.
同じチームで参加してくれた友人に大感謝.
ハッカソン楽しかったです.