kudokai’s diary

自由気ままに書いていきます

X-Hackathon 2020 Summerに参加した話

今回は、株式会社GA technologiesのX-Hackathon 2020 Summerというインターンに参加させて頂きました。ハッカソン形式のインターンです。2020/6/27〜2020/6/28の2日間で行われました。ハッカソンのテーマは「世の中に存在するアナログな事象を解決するサービスを作る」でした!

www.ga-tech.co.jp

 

なぜ参加しようと思ったか 

とある逆求人イベントで、GA technologiesの人事の方と面談させて頂いたことがきっかけです。自分がこれまで取り組んできたこと、自分がどういう思いでプログラミングに取り組んでいるか、などなど思っていることをぶつけたら共感して頂きました。面談で今回のインターンを紹介して頂きました。

 

合否まで

正直、選考が通るか心配でした.... 

申し込んでから約1週間で合格の電話がきました。ちょうどプロジェクト学習中に合格の電話が来て、とてもテンションが上がりました。

内容

メンバー構成

3人1組のチームでした。

僕のチームは、、、

クライアントサイド(Swift)1人、サーバサイド(Ruby)2人の構成で臨みました。

ちなみに僕は、swiftでクライアントを担当しました。

どんなサービスを作ったか

もくもく会をオンラインで提供するというサービスを作りました。

サービス名は「もくもくオンライン」です!!

何か作業をしたいと思った人で、人がいる中でないと作業に集中できないというニーズに答えるために作りました。どうやって「人がいる感」を出したかというと、画面上にユーザのアイコンを表示することによって、「人がいる感」を演出しました。

以下にGitHubのリンクを貼っておきます。

github.com

 

アプリの画面を以下の載せます。

2画面つながっていますが、別々の画面になります。

f:id:nogihako:20200704015413p:plainf:id:nogihako:20200704015507p:plain


 

僕の役割

このハッカソンでの私の役割は、上記にもありますが、クライアントサイド(swift)です。サーバ側で、ユーザIDを発行するAPIやルーム(もくもく部屋)IDを発行するAPI、ルームに入っている人数を返すAPI、退出するユーザを削除するAPIを用意してくれました。これら4つのAPIを私がswiftで使い、ユーザに分かりやすいように画面に表示することをしました。swift側で使用したライブラリは、Alamofireです。

最後の発表で、デモを動かしたのも僕ですね。

 

見つかった課題

このハッカソンで見つかった課題は、非同期処理の実装です。1つのAPIならあまり気にすることはないかもしれませんが、複数のAPIを使う経験は無かったので、返ってきた結果を通知したり、結果を次のAPIのパラメータにしたりというところに苦労しました。通知のパターンとして、現在はクロージャを一番得意としていますが、ゆくゆくは、デリゲートパターンやオブザーバパターンでも楽々に実装できるようになりたいですね。

最後に

swiftを使ったインターンは初めて参加しましたが、とても楽しかったです!!(個人的にハッカソンが好きというのもありますが....) 

なかなかサーバサイドの2人の進捗に追いつくことができず、迷惑をかけてしまったと思っています..(僕を支えてくれてありがとう!!) 

とても中身の濃い2日間を過ごすことができました!!!

iOSのメンターの方にもたくさんお世話になりました。何度も僕の相談に乗っていただきありがとうございます。メンターの方と接していると、僕もいつかは、プロフェッショナルになりたいと思わされます。

最終日の成果発表では、優勝こそ逃したものの、「サービスの発想が面白い!」、「ビジネスモデルを構築できたのはすごい!」などのアツいフィードバックを頂きました。

イデアの発想だったら僕らが優勝していたと思います。(割と自信ある)

 

ハッカソンを通して課題も見つかったので、これらに向き合いつつ、大学のプロジェクト学習も頑張っていきたいです。

最後に、X-Hackathonを運営してくださった方々、メンターの方々、支えて下さりありがとうございます。今回、経験したことを、今後の個人開発やプロジェクト学習に生かしていきます。