サムザップって知ってる?
今回CA Tech Jobにて、サイバーエージェントのSGE部門のサムザップ株式会社で三週間お世話になりました。詳しくは下記リンクを
インターン採用まで
夏だしなんかインターン探すか
↓
大学の日程的に人事とコネ(くしょん)があるサイバーエージェントくらいしか行けなさそうだなー
↓
ゲーム作ってるし、ゲームのバックエンドとかにしようかな
↓
サムザップさんを案内された(受け入れられるタイトルが少ないっぽい?)
みたいな流れになります。作ってるゲームの話は過去記事にて
やったこと
リリース前なので言えません!お酒の席で聞いてください
タイトルは戦国炎舞です。7年目を迎えるロングタイトルです。ゆえにレガシーもあります
まぁでも基本的にはよくある機能改修です。ちょっとデータの扱いがややこしいが、実装自体はある程度めどがすぐ立つみたいな分量です。
本日は8月度のJOB(長期インターン)&内定者バイトの成果発表会でした✨
— 清原苑子 (@so_m0318) August 28, 2019
13名の学生が社会人顔負けのプレゼンを行い、90名ほどの人数が集まる大賑わいな会となりました🥰👏
サイバーエージェントではこうして毎月、事業部横断での学びの共有を行なっています。#catechjob pic.twitter.com/zWp87oNgji
ホラ、キラキラ✨渋谷系エンジニアに見えてきただろう?
開発環境うんぬんについて
言語はPHPです。ぺちぱーって言われてるやつですね。環境もAWSに載せてはいますが、おおむねLAMP環境を踏襲した感じになってます。PHPmyadminもあるし、var_dumpデバッグも健在です。
開発に関して思ったこと
最近はもう静的型付けでしかプログラムが書けなくなってきたのですが、今回は本当に書けませんでした。Codeigniter系フレームワークをカスタムしてるような使い方をしており、PHPStorm君がまったく補完を利かせてくれません!おれがIDEだ!(周りに聞いたら大体頭に実装を叩き込んでいてびっくりしました。)
ソースコードを読むよりも、ゲームの仕様を把握するほうが大変というか、ゲームの仕様をわかってないと読めないコードが多々あります。
それが昔やってたイベントに合わせた実装であったり、補完の利かない動的型付けらしくどんな形で変数を渡してるのか見当もつかない(つくけど追いかけるのがとても大変)みたいなのが結構ありました。
開発環境まわりのリファレンスはあるのですが、ゲームの仕様は特にリファレンスになってないので、ひたすらプレイしたり攻略サイトを眺めたりしてソースコード読みました。ここらへんはゲーム特有の開発スタイルかもしれません。
サイバーエージェント・サムザップについて
前回のアーキテクチャチャレンジでもある程度話したような気がしますが、かなり人柄重視だなと思います。今どきの言葉で言えば「心理的安全性が高い」ってやつですね。
渋谷系IT企業としては珍しくコーディング試験をせずに面接を重視するところであったりすることからわかるとおり、社内の空気感にはかなり気を使っている印象があります。ただ、この辺りは言葉で説明しても難しいのでぜひインターンに参加しましょう(丸投げ)
有名な話ですが、子会社ごとに裁量があります。それゆえに会社ごとにいろいろルールが違ったりします。
サイバーエージェントはかなり大きい上に、子会社がかなり独立して運営しているので部門や子会社ごとにかなりカラーが異なるらしいです。サムザップは、う~んわからん。普通?割とワイワイしてる雰囲気があります。戦国炎舞の合戦になるとスイッチが入るところは流石だなと思いました(朝会のタイミングもそれに合わせてずらされている)。自分で作ってるゲームに自信を持っていることは大切だと思います。
参加して得たこと
- 鈍ってしまったコーディングの勧
こまかくレビューをいただくことができ、忘れてたり見落としていた部分を見ていただけて非常に助かりました。けど動的型付けはもう書きたくない……
- 高負荷なソフトウェアの運用ノウハウ
これは是非自分でリリースするときにいい感じにまとめたい
- チーム開発
とくにPHPはフレームワーク的にMVCのViewで結構ロジックが書けるので(そこが良いところでもありますが)、その分フロントエンドとのすり合わせは大切ですね。あとは、小さい機能なら多分一人でやったほうが楽です(結局フロント作んなきゃデバッグできないしね) Unity側でバグが出たけど自分は確認できないみたいなのが結構辛かったです。APIとみなせるところはテストを書いたほうがよさそうです
オプション
参加するとこんなの付いてきますよ~みたいなやつです
シャッフルランチ
人事の方が様々なインターン生や社員を混ぜてランチを組んでくれます。就業場所以外のこともいろいろと知れるので非常に参考になりました。トレーナーの方もサムザップ内でいろいろとランチを組んでくださり、さまざまな業種の方とお話しできたのがとてもよかったです(昼食代も浮いてラッキー)
コンピューター貸し出し
結構スペックのいいノーパソを貸してくれます。1秒も使いませんでした(サムザップの方で用意されてた……)
ジュース
無料自販機やウォーターサーバーがあります。めちゃくちゃ水分補給をするタイプなので助かりました。(ほかに書くことあるだろ)
インターン同期生との懇親会
インターン初日にあるらしいです。ちなみにその頃私は電気回路の試験を受けていました。
悪かったこと
「よいところもわるいとこもぶっちゃけて書いてくれ!」とのことで、いくつか気になるところを
環境が古い
これはサイバーエージェントというよりは、ゲーム部門あるあるなのかもしれません。ゲームは当たりはずれが大きすぎて安定して人を受け入れられるタイトルがあまりないみたいです。戦国炎舞では、AWSを使っているとはいっても、開発環境自体はかなりLAMP的です。クラウドサービスが発展して、「そもそもLAMPってなに?時代はGo!みたいな」みたいな学生エンジニアには少し物足りないかもしれません。
マイクロサービス化を少しずつ進めてるらしいので、そこら辺に期待したいですね(まぁ課金処理の基盤化とかは今のソシャゲ業界のトレンドっぽいので、そこら辺でGoとかいろいろ出てくる気がします。)
キャリアアップがかなりマネージメントより
これはインターンとはあまり関係がなく、サイバーエージェントに対する印象です。もちろん技術力でキャリアアップする人もいますが、人数で言うとかなり少ないなぁと思いました。サイバーエージェントにインターンに来る学生はやっぱり新しい技術をどん欲に追い求めるようなタイプが多く、そこにギャップがあるように感じました。僕の担当のトレーナーの方はいろんなところに会議に行ったりして忙しくしていて、技術のキャッチアップは趣味でやってるからどうにか追いつけているような印象があります。この辺りは会社も問題には思ってるらしいので改善されるとよいなと思います(ちなみに技術力の高い人自体は結構いるのであしからず)
まぁあとQA業務ちゃんと見てみたかったですね。そこは会社の都合でなかなかできなかったみたいです。
その他ゲーム業界的な話
最近ゲーム関係の会社の人と会話することが増えたのと、僕の周りにゲーム業界志望が多いのでそれ関係の話をしようかと。
ゲーム自体のトレンドの移り変わりが早いのに対し、ゲームの製作時間やコストは増えているのが現状です。サービス系が半年ほどでリリースにこぎつけるとしたら、ゲームだと3年ぐらい体感かかるといったお話を聞きました。実際どこぞのゲームは10年かかってたりしますしね。新卒で3年間ノーキャリアとなったら流石にリスクになるので、そこら辺の注意は必要だと思います。ゲーム作るのは楽しいのでそこらへんは心配ないと思います(自分の作ったゲームは神ゲーにしか見えなくなるので、世の中のクソゲーの大半はこの罠に陥ってるんでしょうね……)
まとめ
やっぱり実務が一番伸びますね!どうせ暇してる皆さんは是非参加しましょう!