Twitterで繋がりのあるエンジニアの方に、インタビューさせていただきました!
『エンジニアインタビュー』シリーズは、IT業界の「リアル」を伝えていく啓蒙活動です。
IT業界に興味がある学生の方、転職をしたい異業種の方の参考になれれば幸いです!
基本情報
今回は、初めてゲーム業界のエンジニアの方です!
どんな話が伺えるのか楽しみですね。
現在携わっているプロジェクト概要
オンラインスマホゲームのサーバーサイド開発に携わっています。
使用している技術や職場の環境など
メインの開発言語は「Go」を使用しています。
インフラはGCP(Google Cloud Platform)を使用しています。
私の会社は裁量労働制なので、出退勤の時間は特に決まっていません。
ゲーム会社だけあって、オンラインゲームが大好きな人が多く在籍しています。
なので、深夜までゲームして翌日は午後出社……なんていう社員も(笑)
上下関係等も厳しくなく、(良い意味で)緩い職場環境だと思います!w
ゲーム開発会社ならではの雰囲気!
Go言語は、Googleが2009年に発表した比較的新しい言語です。
新しい技術を取り入れている社風なのも、使っている言語から垣間見えます。
1日のざっくりとしたスケジュール、大体の残業時間
日によってスケジュールはかなり変わりますが、大体こんな感じですね。
- 11:00始業(メール、Slack等チェック)
- 11:30顧客との定例ミーティング(進捗報告等)
- 12:00作業開始(DB設計、API設計、実装、テストコード作成等)
- 14:00昼休憩(昼食、あとは読書したり散歩したり)
- 15:0030分仮眠(うちの会社は仮眠OKなんです!)
- 15:30会議準備
- 16:00設計したAPI機能のレビュー会(プランナー、クライアントプログラマーに向けて内容問題ないかの確認等)
- 17:00サーバーチーム夕会(進捗報告、雑談)
- 17:30午前の作業再開
- 20:00作業の進捗と明日の予定をまとめて退勤
22時くらいまで仕事をしている日もありますが、期限が迫っているタスクがなければ残業はほぼせずに帰ります。
僕は基本出社していますが、在宅勤務の人もいます。
仮眠OKなのは珍しい!
うちの会社も予定がなければ仮眠OKにして欲しいです(笑)
裁量労働制とのことでしたが、定時はないんですか?
会議などが無ければ、例えば「11:00~15:00の勤務でもいいよ〜」とかアリですか?
はい、もちろん「アリ」です!
実際、午後に予定がある時はそれくらいに帰ることもありますよ。
あとは中抜けもできるので、例えば12時〜14時は私用で抜ける、みたいなこともできます。
やるべきことをやれていれば、勤務時間は特に重視されていないと思います。
実際に弊社のリードエンジニアの方は、毎日13時出社とかですよ(笑)
あなたの強みとしている技術やスキル
これまで多くの開発現場を経験してきたので、主要なサーバーサイド言語であればほぼ読み書きはできます。
あとは前職でWebサービスの運用をしていた経験もあり、面倒な定常作業や単純作業を簡略化したり自動化することが得意です!
自動化……!出来たとき楽しいんですよね。
「30分でやれる単純作業を3時間かけて自動化する」みたいな人もいるくらい、
エンジニアには業務効率を重視する方もいたりします。
エンジニアを目指したきっかけ
就職活動をしていた時に、孫正義さん(ソフトバンク代表)の新卒向け無料講演会に参加したことがありました。
その時の孫さんの話に心打たれ、エンジニアを志すようになりました。
文系だったので、もちろんITの知識はゼロの状態でしたが「エンジニアの仕事がしたい!」という気持ちだけは強かったです。
そして就活の中でたまたま元ソフトバンク社員だった社長とご縁があり、そこの会社でエンジニアとしての第一歩をスタートさせました。
孫正義さんの話が生で聞けただけでもすごい……羨ましい……。
それだけじゃなく、そこから行動して目標を実現させたこともすごいです!
「やりたいな」だけではなく「やる」と覚悟決める段階も必要なことなのだと感じました。
仕事を通して、楽しさややりがいを感じる場面
自分の作ったプログラムがゲームに組み込まれて、実際に機能として動いているのを見た時は楽しく感じます!
難しいロジックを組んだりすることもあるので、それが上手く組めたときも楽しいですね。
あとは、たくさんの方々に作ったゲームを楽しんでもらえることを想像しながら仕事をするのもモチベーションややりがいに繋がっています。
不特定多数のユーザが楽しんでいる姿を想像するのも、やりがいに繋がりますね!
私の場合は業務系システムの仕事が多かったので「使う人の顔が見える」というモチベーションがあったりしました。
ゲームは人を楽しませるポジティブな要素が大きいので、とても楽しそうです!
逆に仕事でツラい場面
強いて言えばゲーム業界でよくある『仕様変更の対応』です。
今まで長い時間をかけて作ってきた機能が、仕様変更で全て無駄になるということが何度かありました。
ゲームは「こう作れば絶対面白い」という定石がなかなかないので、急に仕様変更が入ることがあります。
仕方ないのは分かるんですが、開発している側からすると頑張って作ったものが全て無駄になってしまうというのは、ツラいものがあります。
日々ユーザのニーズが移り変わっているので、それに対応していくと必然的に仕様変更も増えるというわけですね。
確かにそれはツラい……😢
どういう人がエンジニアに向いていると思うか
「相手の立場に立って物事を考えられる人」は向いているんじゃないかなと思います。
例えば、どんなにすごい技術を使って高機能でオシャレな見た目のアプリケーションを作っても、お客様やユーザーの方が望んでいないものであったり、操作が難しくて扱いづらいアプリケーションでは、せっかく作っても喜んでもらえないですよね。
「どうすれば喜んでもらえるだろう」「どうすれば使いやすいだろう」といった、相手の視点に立って物事を考えられる人は、ただ技術力やセンスがあるだけの人よりも向いていると私は思います。
エンジニア駆け出しの頃の自分にアドバイスするなら
技術的な勉強は無理にする必要はないと思いますが、もしやるなら基本情報技術者試験の勉強はしておいても良いかなと思います。
資格取得も無理には目指さず、1つ1つゆっくり理解していくぐらいで十分だと思います。
(むしろ短期で詰め込んで勉強して、資格取得できたら勉強終了、みたいな学習方法は個人的にはあまりオススメしません…)
基本的な知識がまとまっているので、他のスキルを学ぶときにも土台として必ず役に立つと思います。
あとできれば文章力も少し鍛えておくと良いかもしれません。
実体験として、私は年々コードを書く時間よりも設計資料や提案資料を作ったり、チャットやメールでお客様や関係各所とコミュニケーションを取ったりと、日本語で文章を書いている時間の方が多くなってきました。
エンジニアの仕事はプログラミングだけでなく、色々なドキュメントを作成したり、色々な人とコミュニケーションをとる機会も多くあります。
その中で、自分の意図や考えを相手に正しく伝えて理解してもらう、というケースは絶対出てくると思うので、今のうちから文章力を鍛えておくと、仕事で役に立つ時が来るかも知れません。
文章力……
お客様との認識齟齬がないようにするためにも大切ですね。
まとめ
今回インタビューさせていただいた方の回答は、個人的に新しい発見がたくさんありました!
- ゲーム開発会社ということもあって、柔軟な働き方ができる!(もちろん会社による)
- やっぱりユーザが楽しんでいる姿を想像するとやりがいになる。
- でも突然の仕様変更が入ると、今までの努力がパーになるのでツラい。仕方ないのはわかってるから余計にツラい。
- 「相手の立場に立って物事を考えられる人」がエンジニアに向いてると思う。
- 未経験であれば基本情報技術者試験がおすすめ。体系的に学べる!
- 技術だけでなく、顧客とのコミュニケーションで必要になる「文章力」も鍛えておくと良い!
ゲーム開発に携わっている方とこれまで関わりがなかったので、とても貴重なお話が聞けて楽しかったです🎮
次におすすめ
『エンジニアインタビュー』シリーズは、IT業界の「リアル」を伝えていく啓蒙活動です。
IT業界に興味がある学生の方、転職をしたい異業種の方の参考になれれば幸いです!