久しぶりにQiita記事を書きます。
そういえば気づいたらハッカソンに2回出ていたので、軽くまとめておきます。
どちらもまったく違う雰囲気で、技術的にもチーム的にもいろんな発見があったので、備忘録として残します。
1回目:SPAJAM 2025 九州予選
- イベント公式サイト:SPAJAM 2025
- 受賞:優秀賞
参加のきっかけ
研究室の人たちが出ると言っていて、最初は断ってたんですが、やっぱり出たくなって友人を誘って別チームで参加しました。
テーマ発表とアイデア出し
当日発表されたテーマは「星」。
過去テーマが「オノマトペ系」が多かったので、まさか名詞で来るとは思わず意外でした。
他チームが「評価」「夜空」「願いごと」みたいな方向に寄るんじゃないかと予想して、他とは異なるために、漫画などで“頭の上に出る星”をモチーフにしたアイデアに決めました。
STAR - ShooTing AR -
開発したのは、ARで相手と星を撃ち合うゲーム「STAR -ShooTing AR-」。
相手をカメラで映すと、顔の周りに輪っかが表示され、その中に星を投げ入れると、星がヒット。命中すると相手の頭の上にぐるぐる回る星が現れ、それをゲットしてスコアを競います。
ユーモアと直感的な楽しさが評価され(?)、見事優秀賞を受賞しました。
チームと技術構成
- チーム構成:エンジニア5名(うち1名欠席)
- 使用技術:Swift(言語はこれだけ!)
私は唯一のSwift経験者で、まず土台を一人で作りました。他のメンバーはSwift初挑戦でしたが、、AIを使いながら一気にキャッチアップ。Macを持ってないメンバーはコードを書き、Macでビルドして動作確認するという、アナログだけど効率的(?)な開発スタイルでした。
当日の雰囲気と結果
2日間ほぼ寝ずに開発していたので、正直かなり眠かったです。
発表のときは、プレゼンが下手すぎて「終わった」と思いました。
でも、結果はまさかの優秀賞。
ちゃんと“面白さ”が伝わっていたみたいでホッとしました。
2回目:ハックツハッカソン 〜ウイングアーク1st × ギラヴァンツ北九州編〜
参加のきっかけ
SPAJAMのときに別件で欠席していたメンバーが「今度一緒に出ませんか?」と誘ってくれたのがきっかけ。気づいたらまたハッカソンに出てました。
テーマとアイデア
お題は3つの中から選択制で、
「北九州を盛り上げるサービス」を選びました。
私たちはGiraMatchという、ギラヴァンツ北九州のファン同士をつなぐマッチングアプリを開発しました
ユーザーは一緒に応援するひとを募集・参加でき、マッチング後はチャットで調整。そして、試合後は「感想を語り合う場」をつくることで、ファン同士が試合前から試合後まで繋がれる仕組みを目指しました。
使用技術
フロントエンド
- Next.js (v15) / React (v19) / TypeScript
- Tailwind CSS (v4) / Google Maps API
バックエンド
- Node.js (v20) / Express / JWT / bcryptjs
インフラ
- AWS SAM / Lambda / API Gateway / DynamoDB
- Docker / GitHub Actions (CI/CD) / Vercel
私はバックエンドとインフラを担当しました。
アーキテクチャ全体の構築、API設計、AWS周りをまとめて担当するのはとても大変でした。
トラブルとハプニング
最後の10分前にVercelの無料プラン制限が来てデプロイ不能。
CI/CDも通らず、発表はまさかのlocalhostデモ。ギリギリで動かした画面を見せながら説明しました。ある意味、一番ハラハラする発表だったかもしれません。
(発表中にCI/CD通って、デプロイしました😭)
チームの雰囲気
2人チームで、相方がフロント、私がバック。
役割が完全に分かれていたので作業はスムーズで、雰囲気もずっと良かったです。
ハックツ運営の会場も快適で、宿とご飯付き。開発環境としても最高でした。
まとめ
ハックツハッカソンでは、開発そのもの以上に、たくさんの人と話せたことがとてもよかったです。宿が一緒だったこともあって、夜は技術について語り合ったり、連絡先を交換したり、「開発仲間」ではなく「技術好きの仲間」として繋がれたのが嬉しかったです。
多分、またどこかのハッカソンに出ていると思います。
そのときはぜひ、一緒に戦いましょう。