ハッカソンで優勝しました
目次
3と4逆じゃね?と感じる方もいると思いますが、先に結論と作品の紹介をしたかったのでこのような順序になっています。
1. はじめに
自己紹介
初めまして!!take-2405と申します。
とある北海道の情報系大学でプログラミングの勉強をしています。学校の友人たちとハッカソンに参加した体験談をこの記事に書かせていただきます。
【ハッカソンレポート】
— ハックちゅう@株式会社ハックツ (@Hackz_team) 2021年3月18日
記念すべき第10回目に相応しい規模とクオリティのハックツハッカソンなりました!
6種の北海道チーズ牛丼 優勝おめでとうございます🎉
参加者の皆様、協賛企業の皆様、Tanga Tabel様、本当にありがとうございました🙇♂️
ブラキオカップ、これにて閉幕!#ハックツハッカソン pic.twitter.com/yRiWLZXf9w
2. 参加したハッカソンの紹介
今回参加させていただいたハッカソンは株式会社ハックツさんが開催していた「ハックツハッカソン ブラキオカップ」です。
↓↓ハックツさんの情報はこちら↓↓
ハッカソンの簡単な情報を紹介します。
開催場所:北九州市小倉TangaTable
開催携帯:オフライン(オンラインも可)
テーマ:「自分が1番のユーザーになれるもの」
事前開発:可能
宿泊場所、食事:ハックツさん側で用意してくださいました!!
開催期間:2021/3/15 〜2021/3/17
参加チーム数:15チームほど
↓↓イベントの詳細な情報はこちら↓↓
3. ハッカソン -発表&結果-
今回作成したサービス「PR-card」はこれからの時代を想定した名刺交換サービスです。
オンラインでも簡単に自己紹介ができるように、自己紹介された相手を簡単に記録できるようにするべく、ARを用いた名刺交換を実現しているサービスです。
デモ動画
サービスを作成した動機
僕たちの学校は2020年度の1年間オンラインで授業を受けており、学校に登校した回数は5回ほどでした。
そのためオンライン上でのグループワーク、ミーティングが当たり前となりました。
さらにこれから就活が始まります。
オンラインでのさまざまな活動を通して感じたニーズは「相手が目の前にいなくても自分の経験や人柄を簡単に紹介できるようなものが欲しい」というものでした。
このニーズを実現するために今回「PR-card」を作成しました。
サービスのアーキテクチャ
最終的に以下のような形で実装を行いました。
発表
最終日、5分のプレゼン時間でギリギリになんとか出来上がったサービスのデモ実演と概要説明を含めて発表をしました。
他のチームのプレゼンテーションを見るととてもレベルが高く、自分が発表する頃にはかなり緊張していました。個人的にiOSアプリを作成しているチームが多かったなと思います。
↓↓プレゼン中の僕↓↓
結果
タイトルにもありますが、なんと優勝でした。
他のチームのレベルが高くて正直優勝は厳しいかなと思っていたので、結果発表でチーム名が呼ばれた時に僕だけ反応がワンテンポ遅れていました笑
4. ハッカソン -開発-
今回僕たちは「6種の北海道チーズ牛丼」というチーム名で参加し、「PR-card」というサービスを開発しました。(チーム名の癖が、、、)
今回のハッカソンは事前開発が可能でしたが、僕たちは事前にアイデア出し、実装する機能の決定、要件定義、開発のタスク分担などを行いました。
アイデア出し
「自分が1番のユーザーになれるもの」というテーマでメンバーでアイデア出しを行いました。
「新時代的なもの、自分たちが技術的にも挑戦できそうなもの、作っていてワクワクするもの」を意識し全部で10個ほどの具体的なアイデアを発案しました。(中には18禁のぶっ飛んだアイデアも)
最終的にメンバーで多数決をとってアイデアを決定しました。
その結果最終的に決定したアイデアが今回作成した「PR-card」です。
開発
ハッカソンの開催期間は3日間でしたが、最終日はほぼほぼ発表だったので実質2日間での開発となりました。
チーム名から想像が着くとは思いますが、今回は6人での参加でした。
- iOS 3人
- バックエンド3人(Go:2人 Node:1人)
僕は今回Goでバックエンドの開発を行いました。
今回はメンバーそれぞれが持っているスキルセットを元に全員が開発に携われるようにタスクを振り分けました。
その結果、僕が開発したバックエンドでは
- Node:名刺に必要な画像の生成(png)とそのオブジェクトストレージへの格納、etc...
- Go:クライアントからのリクエスト処理、NodeのWebAPIとのhttp通信、名刺情報へアクセスするためのQRコードの生成、etc...
というようにタスクを振り分けました。
少し時間的に余裕があったので、Go側でも画像の生成やオブジェクトストレージへの画像の保管などの機能は実装していたのですが、オブジェクトストレージとして想定していたfire storeのサポートがされておらず、AWSのS3での実装になってしまいました、、、
もともと大学の講義などである程度一緒に開発したことがあるメンバーでしたが、オフラインで実際に会話をしたりしながら開発を行うの初めてだったので新鮮で、発表日前日は全員が徹夜をすることでなんとかサービスとして形にすることができました。
感想
今回のハッカソンは自分にとって初めて結果を残すことができたイベントでした。コロナウイルスで直近1年間ほどはオンライン上でチーム開発をしていたので、久々のオフラインチーム開発でとても楽しみながら開発することができました。
開発する過程でさまざまな新しいライブラリを触ったり数rことができました。自分がこれまで実現しようとも思わなかったようなこと(実現できないだろうという固定概念に囚われていたこと)も意外と調べながらやってみるとできてしまい、自分の中のバックエンドで実現可能なことの範囲がグッと広がった気がします。
また、短い期間に集中して他の仲間達とアウトプットする機会はもっと必要だと感じたので、どんどんハッカソンなどイベントに参加していきたいと思います。
今回のイベントで得られた知識、経験は確実に自分の中で大きなものだと感じます。この機会を提供してくださった株式会社ハックツさんには感謝してもしきれないです。わざわざ北海道か九州まで飛んだ分の収穫は得られたなと思います笑
お読みいただきありがとうございました!