Cyber Agentのインターン「Architecture Challenge」に参加してきた

こんにちは、ぷらす(@p1ass)です。

この度、Cyber Agentさんが開催された「Architecture Challenge」というイベントに参加させていただきました!

個人開発をしていると、しっかりと考えることのないアーキテクチャについて考えることができる2日間となりました。

トップ

概要

今回のインターンのテーマは「架空のサービスのチャット機能部分のアーキテクチャを考える」というものでした。

お題 お題

評価基準 評価基準

他にもめっちゃ細かい仕様書が渡されたのですが、ここで全部紹介するのはしんどいので省略します。

簡単なチャットサーバーは組んだことがあったのですが、スケールできる構成を考えたことがなかったので、どう構成するかかなり悩みました。

また、今回はコードを一切書かないイベントでした。スケールできる構成を考えないといけないにも関わらず、その計測ができないので、ネットに転がっている情報を元に考える必要がありました。

作ったもの

今回は成果物として、ER図とアーキテクチャ図を作りました。

ER図 ER図

アーキテクチャ図 アーキテクチャ図

自分は主にアーキテクチャの方を担当したのですが、今思うと怪しいところが多かったなと反省しています。

このあたりは、フワッとした知識しか持っていなかったので、かなり適当になってしまいました。

しかし、同時に多くのことを学ぶことができました。 特に、Redisは使ったことがなく、ほとんど知識がなかったのですが、しっかり調査することができました。RedisにPubSub機能があると知れたのは良かったです。

GraphQL SubscriptionsとRedis PubSubを使ったリアルタイムチャットサーバー

インターン中は実際にコードを書くことが出来なかったので、後日GraphQL SubscriptionsRedis PubSubを使ったリアルタイムチャットサーバーを作ってみました。

解説記事をQiitaに書いてのでよかったら読んでみてください。

おわりに

インターンが始まる前はどうなるかなと思っていたのですが、終わってみると参加してよかったという気持ちになりました。 これからも強いエンジニア目指して頑張っていきます!

最後までご覧いただき、ありがとうございました。

お弁当 お弁当

お弁当 お弁当その2

お肉 お肉

Top