ぷらすのブログ

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

#インターン#Cyber Agent#SRE#AWS

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

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

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

トップ

概要

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

お題 お題

評価基準 評価基準

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

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

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

作ったもの

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

ER図 ER 図

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

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

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

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

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

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

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

おわりに

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

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

お弁当 お弁当

お弁当 お弁当その2

お肉 お肉

← pixiv2018冬インターンシップで「最高のpixiv」を作ってきた【参加記】direnvを使うときは環境変数を.envrcに書くより.envに書いた方が使い勝手が良い →
Topへ戻る