ASOポップカルチャー専門学校ゲーム系 Advent Calendar 2024 一日目
(ゲーム系専門学生の)ゲーム業界就職・就活についての私見
「私見」と書いてるので割と好き勝手に書きます。たぶんご意見沢山ある方も出現すると思いますが、議論するなら公の場で、そう、CEDECとかのパネルディスカッション等で行いましょう。
ちなみにここで書いてるのは、2024年12月時点の状況を鑑みての私見なので3年~5年もすれば就活の常識が一変している可能性もあります。5年後にこの記事を読んで「時代遅れだなあ!」と思ったらその通りだと思いますので、現時点でのという事はご了承ください。
ここでお話しするのはあくまでもゲームプログラマの話であり、CGアーティスト(2D,3D)やゲームデザイナーは含みません。
なお、私は常勤で10年位学生の就職年次・次年度就職年次ばっかり見てきて、何となく大変さや傾向やらはある程度は見えてきてるかな~と思ってる所です。
ここでお話しすることが、全員に当てはまるわけでもないし、地域差やら何やらもあると思います。
参考までに実績としては、福岡というどっちかというと地方都市で、コンスタントにクラスの3割~5割をゲームプログラマにしている感じです。
ゲーム系専門学校って言うと正直「応募者全入できる学校」なので、その中で3割~5割を維持できているのは正直頑張ってる方じゃないかな~とは思います。
と、自慢話はこのくらいにして本題に入っていきましょう。
言葉の定義
- 就職年次:4年制の学校ならば4年生、3年制の学校ならば3年生の事。本来就職活動をする年次(でも実際は3年次から就活が始まっているのが実情)
- 次年度就職年次:4年制の学校ならば3年生、3年生の学校ならば2年生の事で、実質ここから就活が始まっていたりします。「次年度」と略すこともあります
- 作品:ゲームプログラム作品(つまるところ完成したゲームの事…場合によってはゲームでなくてもOK(メガデモとか))
- 書類選考 : 履歴書やらエントリーシートおよび作品をゲーム会社に送り付ける事
- インターンシップ : 就活前に職業理解のためor本人の力量を図るためなどの目的で、会社で実習(職場体験)が行われる事
- NDA : "Non-Disclosure Agreement"の略で、秘密保持契約の事で、会社には公開しちゃいけない情報もあるので気をつけましょう
- 自社エンジン : UnityやUnrealEngineなどではなく、各企業が独自に作っているエンジン
就活は次年度就職年次の後期…いや前期から既に始まっているッッッ!
「えっ!?就職活動は就職年次になってからするものでしょ?」
「貴様は就職活動を舐めたッッ!」
これでは、いけませんね
そもそも、次年度就職年次の後期から既にゲーム会社からの募集は始まってるし、インターンシップなどは次年度の前期から行われます。
次年度就職年次の2月で募集を締め切る会社なども稀にあり、就職年次になってから「よしっ!就活始めるぞ!」と言ってもすでに締め切られていることがあります。
後述しますが、よほどの有名大学(旧帝大やらなんやら)か、学生の間に日本ゲーム大賞(アマチュア部門)等の有名なのでもない限り、この職種での就活で一発内定ってのはなかなか稀で、ある程度は不採用通知が来ることを覚悟したほうが良いでしょう(100社くらい受験してやっと内定を取った学生もいます)
インターンシップについて
インターンシップにはいろいろな種類がありますが、種類を問わずなるべく片っ端から応募したほうが良いです。
理由としてはまず職業理解を深めるためです。行きたい会社のインターンシップならなおさらです。
職業理解を深めるというのはかなり重要で、仮に内定が出たとして会社の人事として最も避けたい結果は「ミスマッチ」です。働き始めてから「なんか違う」と1年以内に辞められては会社および本人にとって悲しい結果になるからです(1年以内で辞められると会社にとっては教育コスト等の回収ができないため避けたいし、本人もスキルが身につかない)
これらの理由から、面接や履歴書(エントリーシート)において「職業理解ができているか」を見ています。職業理解が甘いならば採用される可能性が低くなります。
そういう事のないように、本格的に就活を始める前にインターンシップには参加しておいたほうが良いわけです。
職業理解ももちろんですが、志望する会社のインターンシップには参加しておいたほうが会社の空気感や仕事のやり方等が垣間見えていいでしょう
また、インターンシップには次の4種類があるように見受けられます
- 一日インターンシップ
- スキルアップのために一定期間授業と実習形式のインターンシップ(1~2ヶ月)
- 職業体験インターンシップ(1週間~2週間?)
- 採用を前提としたインターンシップ(1週間~2週間?)
一日インターンシップに関しては、会社見学に近いかもしれません。そうだとしても会社の雰囲気や仕事の雰囲気は感じられますし、説明会よりも得るものは大きいと思います。できる限り参加しましょう。
授業&実習形式のインターンシップは、企業が「オブジェクト指向講座」や「グラフィックス講座」などのイベントを行い、一定期間ごとに課題の提出が求められます(リモートのことが多いかもしれません)。ここから会社とのつながりができて優先的に選考が行われることもあり、そうでなくてもこの手のインターンシップには自分のスキルアップにつながるため、こういうインターンシップがあれば参加しておくことをお勧めします。
職業体験インターンシップは、実際に一定期間会社で働きます(早期実習に近いですが、あれは内定が決まった後に行われるものであるため、あくまでも職業体験としてのインターンシップであり、もちろんお給料は出ません。交通費等は出るかもしれませんが)。
働くといっても未公開のゲームや会社に影響を与えそうな仕事はさせてもらえないと思います。このため、場合によってはデバッグをひたすらやる事になったりもします。
場合によっては参加者だけでお試しプロジェクトを立てる事もあるようです。このインターンシップも開発の方とつながりができますので、採用につながる可能性があるといえます。
採用を前提としたインターンシップは、もうこのインターンの出来次第で採用するかどうかを決めるつもりのインターンシップです。よほど仕事としてのレベルが低いか、ヒドイやらかし等がない限り、限りなく内定に近い状態となります。
このためこのインターンシップは選考のハードルが高くなりがちです。逆に言うとこの手のインターンシップに採用され、最後までやり遂げればほぼ内定と言っていいでしょう。
このように色々なインターンシップがありますが、インターンシップに参加するのにもある程度の選考が行われるため次年度就職年次の前期までにはある程度の技術力をつけておく必要があります(ゲーム系の専門学校生ならばC++やC#を習得しゲームを2~3本完成させている事など)
もちろん、採用される難易度としては1日インターンシップが一番採用されやすく、採用を前提としたインターンシップが一番高い難易度といえます。
インターンシップに応募するのにも書類を書く必要があり、場合によってはポートフォリオ等を送る事になりますので、否応なく「就活のリハーサル」的なものになるのも大きいですね。いきなり就活するよりも前の段階でほぼノーリスクでリハーサルできるので参加しない手はないです。
ただ、もちろん全員採用されるわけではないため、受からなかったら自分の実力を上げて再挑戦しましょう。そういう意味でも早くから1度目の挑戦をしておいたほうがいいでしょう。
最後にインターンシップの注意点ですが、恐らく最初にNDAの話はされるかと思いますが、契約書を交わさなかったとしてもインターンシップで知り得た情報をSNSなどに公開するのはやめましょう。仮に公開しても問題ない情報であったとしても「ああ、そういうネットリテラシの人なのね」と思われて就活に響く可能性があります。
いざ就活
さて、最初にも言いましたが次年度就職年次の10月11月くらいからもう募集が始まり、いざ就活です。
この時期にとっとと内定を取ってしまう学生もいます。優秀な学生ほど動きが早いんだ、これが。
逆に実力のない学生ほどグダグダ言ってじぇんじぇん動かない…そしていつの間にかチャンスがなくなる…というのを毎年見てきました。
実力がない学生こそ数撃ちゃ当たれ!とっとと活動するんだよオイ!
「さっさと、そして沢山応募する」には2つの利点があります
- 可能性自体が低くても、試行回数が増えればそれだけ当たり数は増える
- たくさんこなすことで履歴書や面接の経験値が上がり、文章や受け答えがこなれてくる
そう、多少は不器用な学生でもだんだん慣れてきて成功率が上がっていくんですよ。でも時間自体は過ぎていくため回数をこなしている間にタイムリミットが来てしまいます。だから早めに動き始めるのが重要なんです。
そのことを前提として色々な注意点やコツを書いていきます
就活時のメンタリティと戦略
特に序盤は
- 「今は落ちて当然」 と思っておきましょう
- 書類選考も、筆記試験も、面接もすべて「練習」くらいに思っておきましょう
- ガッチガチの第一希望は通らないと割り切って序盤で受験しておきましょう
また、全体を通しては
- 「合否を決める構成要素の半分は『運』である」と思いましょう
- 無理して嘘はつかないように、分からない事を分からないと言える胆力を持ちましょう
ですね。
就活は最初の方は特に信じられないくらいにうまくいきません。それはたいていの場合自分を客観視できていないため、良くも悪くも相手に伝えたい事が伝わっていないんです。まずはそこに慣れるための練習だと思いましょう。
また「私は○○でしか働くつもりはありません!だから他は一切受けません!!」というメンタルの人がいますが、この考えもやめておきましょう。後述しますが就活の半分は「運」の要素が強いです。どんなに優秀でもどんなに準備しても落ちる時は落ちます。
しかもこの考え方は自分に過剰なプレッシャーを課すため、成功率も下がってしまうという…碌な結果を生みません。「背水の陣」というと格好はいいのですが、そんなもん経験のない学生がとるべき手段ではないと思います。
そして何度か書いていますが「運」に関して。就活には様々な運が絡んできます。
- 社会全体の景気や傾向
- 会社の業績ぐあい
- それまでにその会社で何人くらい内定が出ているか
- 学校と会社(採用担当者)の関係性
- 試験や面接当日の体調
- 試験や面接当日の天気
- 面接官(採用担当者)の機嫌
- 交通機関の機嫌
- 試験問題や面接の受け答えの内容が対策と合致しているか
- 自分の性格適性検査結果が会社とマッチしているか
などなど様々な要素が絡み合ってて、そのランダム性はrandom_deviceなみであると言えましょう。
準備や実力がある場合はこの「率」が少し上がる程度に考えておいてください。100%というのはよほどのことがない限りあり得ないでしょう。
つまり、理不尽なようですが皆さんの一生が決まる(と思い込んでいる)就活は、サイコロの目にゆだねられているわけです(準備が全然できてない人は限りなく0%に近づいているわけですが)
こうなってくると就活の準備としてやる事をやったら、あとの結果は天に任せるしかないわけですが、ある準備と実力において確率が仮に30%だとするとあとは、試行回数を増やすしかないわけです。なので片っ端から受験していきましょう。
あー・・・でも、ここでメンタリティ上、大事な事を言っておきます。
「落ちる事はノーダメージではない」
です。
無責任に「片っ端から受験しろ!」と言っておいて何ですが、個人差はあれど不採用通知を受け取った際のダメージは0ではないです。それなりに精神的ダメージを受けてしまいます。
30社も受けてどこも不採用だった場合「このままやってもダメなのではないだろうか?俺は社会で必要とされていないのではないか?」などという思いが頭の中をグルグルしてしまいます。
これは仕方がないです。対策としては
- 落ちた時のダメージを最小にする
- 回復を早くする
工夫しかないかなと思います。
落ちた時のダメージを最小にするにはなるべく早め早めに受験しておくことが一つの方法です。理由としては「時期的に後がない」時に落ちるのか、「まだ時期的に余裕がある」時に落ちるのかで当然ダメージが異なります。
時期的に後がない場合は1社落ちただけでもパニックになりそうですが、「まだ何度でも挑戦できる」時に落ちればまだダメージは軽いと思います。
また最初の一社目は落ちやすいものですが、ダメージを受けやすいのもこの最初の一社目です。このため「最初の一社目に落ちる」事をある種の儀式と思って、とっとと済ませてしまいましょう。
次に「回復を早くする」ですがまず結果が来る前に次の応募をしてしまいましょう。
よく、前の結果が出るまで次の行動をしない人がいますが良くないです。そもそも高校や大学の受験結果や検定の受験結果と違って、結果がいつ出るのかなんて会社都合なのでわかりません。
受験した数時間後に結果が出る場合もあれば(最短1時間)、3か月くらい待たされることもあります。そんなもん待ってられませんし、もし不採用通知を受け取ると次の出足が遅くなってしまいます。
逆に不採用だったとしても「次申し込んでるし、気持ち切り替えよう!」となるわけです。
あとは周囲の友達や先生や…とにかく周りの人に励ましてもらいましょう。ちょっと気を付けてほしいのはSNSで悩みを吐露するのはやめておきましょう。色んな人がいるため、変に傷つける人がいるかもしれません。闇に引きずり込まれるかもしれません。SNSとの付き合いは慎重に。
メンタリティに関してはこんなもんで
書類選考(履歴書・エントリーシート)
作品に関してはまた別枠にしますので、ここでは純粋に「提出書類」としての履歴書・もしくはエントリーシートについてです。
これもある意味「書き慣れ」るしかないのですが、そもそも日本語の文章作成能力に難がある人がいます。僕自身も作文が苦手なのですが、そういうんじゃなくて「マジで伝わらない」文章しか書けない人がいます。
こういう人は自分一人で悩んでもまず解決しませんので
- 周囲の人に頼る(文章系の学習障害の可能性も0ではないため)
- ChatGPT君などの生成AIに頼る
を検討してください。今は優秀な生成AIがあるからいいですね。バンバン活用すべきです。作文が苦手な人には2種類いて
- そもそもネタがない
- ネタは沢山あるけど1つの文章として構成することが苦手
です。後者においては生成AIの出番です。ChatGPT君などはこういう課題が大得意です。
要は自分が持っているネタを箇条書きにして生成AI君に教えておいてあとは「ゲーム会社に提出すべき履歴書の自己PRについて200文字以内で記述してください」といった具合にお願いするわけです。もちろん必要に応じてお願いは変更してくださいね
ただし、生成AIは息をするように嘘をつくことがありますので「高校では生徒会長を兼任し~」などとありもしない過去を捏造することもないわけではないため出力された文章を自分が責任をもってしっかりチェックしましょう。できれば自分以外の人にも見てもらったほうが良いと思います。
さて、困るのが前者です。ネタがないことにはどうしようもない。マジで困る。
学生時代にやるべきことをやってきた(ゲームも2~3本は作ってきた)のに、ネタがないという人の場合はハードルを上げ過ぎている事が多いです。
「こんなのネタにもならないっすよ…フフフ」と謙遜し過ぎている場合があります(やるべきことやってない奴は知らん💢)
こういう場合は、時系列に1年の頃から何をやってきたのか書き出してみましょう。最初は先生から言われたとおりにプログラムを書いて作ったゲームかもしれません。そこから書き出してみるんです。作ったものをリストアップしていって、オリジナルの要素を入れた箇所や苦労した箇所、工夫した箇所などをメモしておきます。
そういうのをとにかく片っ端から生成AIに食わせます。ネタがないならハードルはバンバン下げていきましょう。それでも「ない」ってんなら本当に何もしてなかったんです。潔くあきらめましょう。それもまた一つの選択です。
あと 「志望動機」についてですが、書く前に会社を調べてください。徹底的に調べてください。
今はほぼすべての会社がWebサイトを持っているものです。とにかくそのWebサイトを徹底的に調べてください。
最初に「会社概要」を調べてどういう会社か誤解はないか確認しましょう。あとは採用情報のページにある仕事の内容や先輩の声などを読みましょう。
そしてこれはすべての会社というわけにはいきませんが技術情報などを公開しているところがあれば必ず読みましょう。教育に積極的な会社はCEDECで講演したり自社イベントで講演していたりしますし「技術ブログ」なども公開しています。分からなくてもいいのでひと通り目を通しておきましょう。
ChatGPTにまとめてもらってもいいのですが、息をするように嘘をつくため「ハルシネーション禁止!」と最初に断ったうえでまとめてもらいましょう。それでも騙してくる事はあるため、まとめを読んだうえでざっと自分でも企業情報を調べましょう。
筆記試験(SPI3等)
筆記と言っても最近はWebブラウザ上で行う事が多いですね。
SPI3等の筆記試験に関してはある程度以上に大きな会社ならほぼ確定でやると思っておいていいでしょう。応募者も多いため、ある意味足切りしてくるんですね。
会社によってSPI3、玉手箱、CAB/GAB、CUBIC、その他…をやってきますが、後述する独自の筆記試験に比べると対策がしやすいです。あくまでも目的は足切りだと思われますので…
この手の適性試験は事前に対策をしていれば点数は稼げます。一回通しでやるだけでも全然点数が変わります。逆にナメてかかると全然点数が取れません。
理由としては問題に要する時間が異様に短いんです。一つ一つの問題は中学生レベルなのですが、とにかく問題数が多すぎる。これはSPI3対策本等で事前に時間を計測しながらリハーサルすると良いと思います。1問に1分かけてるようでは間に合わないのです。
しかしちょっとだけ朗報があります。SPIには言語的能力(国語・社会)と非言語的能力(数学・論理)があるのですが、プログラマを志望する場合はまず「非言語能力」だけ対策しておけば十分だからです。これだけで対策時間が半分になったよ!やったね!
あと、SPI3以外の適性試験対策ですが、まぁ少々差はあれど似たようなもんですので、SPI3対策やっておけばいいと思います。
あ!でもちょっとだけ注意点。非言語能力と言いましたが文章問題も多くて、日本語を正しく読めないと点数を取れない問題が多数あります。
要は引っ掛けが多いんですね。対策としては問題の文章をきっちり最後まで読みましょう。ここで慌てると大事な言葉を飛ばして間違う事になります。
筆記試験(独自試験)
ゲームプログラマの筆記試験においては「数学」および「プログラム」、あと場合によっては「コンピュータサイエンスに関する基礎知識」に関する問題が出題されます。
数学に関しては高校生までの範囲。特に「三角関数」や「ベクトル」や「行列」に関するものや「幾何学(図形問題)」が出題されます。完全に独自のイジワル問題もあれば、どこかで見たような問題もあったりします。この辺に関しては高校の三角関数とベクトル周りの問題をやっておけばいいかなと思います。
あとこれはコンピュータサイエンスと被ってるんですが、論理系の問題ですね。二進数とか排他的論理和とかそういうやつ。
「プログラム」に関してはpaizaとかで出題されるような問題が出ると思っていいでしょうブラウザで動作確認して、大丈夫そうなら提出!みたいな感じですね。これに関してはもうpaizaでランクBくらい取れるようになっておけば十分かなと思います。
「コンピュータサイエンス」に関しては「基本情報技術者試験」のプログラム寄りの部分を把握していればいいのではないかと思います。マネジメントとか開発プロセスとか要件定義とかは外していいでしょう。
範囲としては「アルゴリズムとプログラミング」と「コンピュータ構成要素」をおさえておけばいいでしょう。
あと、会社によっては結構な割合で「英語」を出してきますので中学英語くらいはしっかり復習しておきましょう。
筆記試験(宿題)
これは例外的かもしれませんが、1週間くらい要する宿題を出してくる会社もあるようです。
恐らくは「問題解決能力」を測っているのだと思われます。このため学生さんが解決できるギリギリレベルの課題が示されます。ここで重要なのは
- 諦めない事
- 八方手を尽くして問題解決を図る事
- 最後は力技でもとにかく完成させること
です。問題解決能力と「やりぬく力(GRIT)」を測ってるのかなと(たぶん出題者そこまで考えてないと思うよ)
別に試験ではないため、周りに頼ってもググってもいいので、とにかくがんばって課題をやり遂げましょう。
面接(全体的な話)
さて、いよいよ面接です。面接の内容云々に入る前にここができてなくて落ちてくる人がいるので、最初に書いておきます
落ちる原因
- 身だしなみが酷い(最低限をクリアしていない)
- 姿勢が酷い(前を見ろ前を)
- 声が小さくて聞こえない(「え?」「は?」と 聞き返されてしまったらアウトくらいに思っておいたほうが…)
- 自信がなさそうすぎる
- 面接中に長時間黙り込む
- あまりにも履歴書の内容と話す内容が乖離している
はい、体育会系っぽくてスミマセンがこれで落ちます。
いや「俺TUEEEEE!」みたいなレアキャラ人材ならこれでも合格したりするんですが、大抵の人はザコです。クソザコです。自覚しましょうハイッ「わたしはクソザコナメクジです」。
身だしなみでイキるんだったら相当の実力をつけてからにしましょう。
なんの実力も知名度も示せない段階でイキっても自分がガキである事を証明しているだけです。
とりあえず、身だしなみに関しては無難な方が良いです。
髪について:今どき茶髪を指摘する会社は多くないとは思うのですが、気にする人も0とは言えないため、黒くしておいたほうが無難です(そこはもうお任せします)。髪型に迷ったら床屋か美容院に行って「リクルートカット( ー`дー´)キリッ」と指定したほうが無難です。できれば面接の前の週に切りに行っておきましょう。
スーツ等について:これも前述の理由から「リクルートスーツ( ー`дー´)キリッ」とやっておいたほうが無難です。それはいいんですがどっちかというと心配なのはカッターシャツとネクタイですね。
シャツでよくあるのが首回りのサイズが合ってなくてボタンが止まらない人…これはもう一回り首回りが大きいシャツを買ってくるか、確実なのは採寸してもらう事ですね。
また、ネクタイじたいはDAISOのやつでも構わないのですが柄に関しては「リクルート ネクタイ」等で検索して似たような奴を買ってきましょう。そしてテキトーに締めずにネットで締め方をしっかり見ながらきっちり締めましょう。
姿勢が酷い:ある程度猫背なのはしょうがないんですが、立っても座っても前を向いてない人(だいたい下を向いてる)がいます。障害とかなら仕方ありませんが歩くときも立ってる時も座ってる時も相手に向かって顔がまっすぐに向くようにしましょう。これ無意識にそうなってる事が多いので、面接練習の時などにスマホで映像を撮影してもらって客観的に自分を見てから少しずつ改善していきましょう
声が小さくて聞こえない:これは「自信がなさそうすぎる」とも関連してきますが「この子に仕事任せて大丈夫か?」「倒れるんじゃないか?」という不安感を相手に与えてしまいます(学マスの篠澤広なら許されますが)
これも個人差があるので仕方ないですが、声の大きさを意識するよりも声が相手に伝わるように工夫しましょう。つまり背筋を伸ばして胸を張るだけでも声が通りやすくなります。そして一語一語をはっきりと発話するように事前に練習しておきましょう。
自信がなさそうすぎる : 声が小さいのもそうですが、姿勢は委縮してたり、使う言葉も「たぶん」「ええ…」「そうでしょうね…」などと自分の言葉に自信がなさそうに濁してくると信用されません。これはもう場数を踏むしかないかなとおもいますが、準備できることとしては理論武装しておいて「どっからでもかかってこいや!」の状態にして、万が一わからない質問をされたら大きな声で「スミマセン!!そのことに関しては不勉強でして!ご教授願えますでしょうか( ー`дー´)キリッ」と返すしかないです
面接中に長時間黙り込む : これは最悪です。たぶんパニックになって頭が真っ白になってるんでしょうけど、面接官も困りますし、自分もあせります。こうならないように事前に理論武装はしておくべきですが、それでもプレッシャーでこうなることはあります。なのでもう「あ、真っ白になってるな」と自覚した時点で「すみません、もういちど質問していただけますでしょうか!」と仕切り直してください。それしかないです。
あまりにも履歴書の内容と話す内容が乖離している : これはもうダメですね。面接前に自分が提出した履歴書もしくはエントリーシートのコピーを一度見直しておきましょう。書いた当時から変わっていることがあればそれを説明できるようにしておきましょう。
はい、それではいよいよ各面接の話を書いていきます。大抵は3回かなと思います。会社によっては1回で終わる事もありますが。3回の体で書いていきます。
面接1回目(人事面接)
ここでは、提出された履歴書やエントリーシートをもとに、自社への志望度や本人の社会性を見られると思ってください。このため、質問内容としてよくあるのが
- 自己PR(自分の長所など)
- 志望動機
を聞いてくるでしょう。場合によっては変化球で短所について聞いてきたり、世間話をされることもあります。なので、ある程度の理論武装をしつつ、想定外の質問が来ても対処できるようにしておきましょう。この辺も冷静に対処するには場数を踏むしかないため、ある程度の失敗はあるもんだと思ってください。
ただ、ここに関しては一般的な質問にとどまるため、会社のカラーはあまり出ないし、技術的な事もあまり効かれないかなと思いますので、対策はしやすいです。
対策としては、とにかく事前に「面接練習をしておく」これしかないです。あと話すべき内容は箇条書きにしてメモっておいて、面接前に何度も目を通しておきます。でも忘れてもあわてないでください。寧ろ忘れたうえで話せるように練習しておきましょう。
それでもやっぱり「本番が一番の練習」ですが事前の練習はしっかりやっておきましょう。何やかや言うても本番でやらかすとダメージがデカいので…
あと、話すべき内容をメモっておくとは言いましたが、記憶の中からそれを話すのはやめましょう。すぐにバレます。よくあるのが想定された質問と違っていたため、質問と違う内容を返すってのがありますが、これも良くないですね。落ちます。なかなか大変ですがしっかり練習して乗り越えられるようにしておきましょう。
人事面接の内容はわりと一般化できるため、ChatGPTを用いて壁打ち練習するのもアリかなと思います。手元にあるテクノロジーはしっかり活用していきましょう。
面接2回目(技術者面接)
技術者というか、開発現場の人が面接します。
この時は技術的な質問が飛んできますので、事前にしっかり復習しておきましょう。会社がCEDEC等で講演している場合はそう言った資料にも目を通しておきましょう。
話す内容としては、もちろん自分がどういうものを作ってきたかという事になりますが、作るうえでの苦労話があると良いと思います。どういう所で詰まってそこをどういう工夫で乗り越えたのかを話すと喜ばれます。
技術おじさんはねえ、若者が技術的な壁に苦しんで工夫して乗り越えていく話がだぁい好きなんだよ
正攻法じゃなくていいんです。力技で乗り越えた話などは大好物…のはずです。そういった話を用意しておきましょう。
面接3回目(シャッチョさん面接)
社長面接と書きましたが、社長が忙しい時は副社長や専務や常務など、とにかくお偉いさんの面接です。
ここまでくるともう最終確認と言った感じなので、ほぼ内定は決まってる状態ですね。
よほどやらかさない限り大丈夫です。まぁ相手の機嫌が悪いとか、よほど親の仇に似てるとかじゃない限りは大丈夫でしょう。ここで落ちたらとにかく運が悪かったと思ってください。
いちおう、一般常識を持って臨んでください。とんでもないやつなら落とされます。
作品・ポートフォリオについて
はい、面接の話までしておいて何ですが、ここでいったん時間軸をインターンシップ前くらいに戻します。
ゲームプログラマの就活が他業界プログラマの就活と比べて大変なのは、やっぱり作品…ですよね。
この作品を「就活前に」ある程度揃えておかなければならないというのもツラい。でもしょうがない。
学歴問わず一発逆転するために作品選考があるとポジティブにとらえてください。作品がなかったら単純に学力だけで勝負することになるとしたら、どう?勝てそう?
と書きましたが、実は有名大企業の場合は作品提出が不要な事が多々あります。恐らくは応募者が殺到するため一つ一つ見てられないから試験で篩い落とすというやり方をとっているのかもしれません。
ただ、だからといって専門学生が作品を作らずにそう言った会社を受験して合格することはほぼないかなと思います。そもそも作品作ってなきゃ履歴書に書くネタも面接で話すネタもないでしょ?
とにもかくにも作品についてお話しします。
作品を評価するうえでの優先順位
まず、作品を評価する優先順位についてですが、会社の方針や評価する人の方針にもよるため一概には言えませんが
- 完成度
- コーディングの品質
- 技術点
- 独自性
かなと思います。
完成度
そもそもゲームとしてある程度は完成してないと評価に値しないので、中を見てももらえません。ガントチャート等を利用してしっかりと計画を立ててゲームとして完成させてください。
「ゲームとしての完成」とはゲームの内容は勿論のこと、タイトル画面→ゲーム本編→ゲームオーバーなどの流れがきっちりできている事を指します。ゲームの内容に関しても、例えばシューティングゲームなのに弾が撃てない、敵も出てこない…なんてのは論外です。
「完成とはどういうものか」は、Steamの低価格帯ゲーム(100~500円)を参考にしてみましょう(フルプライスのゲームに比べて、比較的コストかけずに完成させてるものが多い)
コーディングの品質
次にコーディングの品質についてですが、たとえばあちこち「マジックナンバー」だらけだとコードの品質が低いと評価されます。ここは最低ライン部分なので必ずチェックしておきましょう。
コードの品質チェックに関しては"cppcheck"というツールなどがあるため、しっかり活用しましょう。
ただ、ここでいうコーディングの品質とは静的チェックができるものなのであくまでも最低ラインです。
そこから先はオブジェクト指向設計がしっかりできているコードとしての品質を問われます。
- オブジェクト指向が理解できているか(ポリモーフィズム等をわかっているか)
- 結合度
- 凝集度
などですね。プロレベルの品質は求められてないにせよ、設計を意識していることは高く評価されます。
もちろんプロレベルの設計ができていればかなり高得点になります。
あ、あと、C++に関してですが「関数の説明コメントはヘッダ側に書いたほうが良い」というのも書いておきます。これ結構学生から質問が来るんですが、ヘッダ側はクラスや関数の利用者が参照するファイルなのでそちらに書きましょう。逆にC++側に書いたコードはlib化されることもありますし、コード量が膨大になりがちなのでヘッダ側に書く方が親切です。
技術点
この辺が自分の技術者としての売りになってきます。ここがないと「及第点なんだけどパンチが弱いなあ…」という事になり、相手の記憶に残りません。
技術的にアピールできそうなのは例えば
- シェーダを駆使して凄いエフェクトを表現している
- マルチスレッドやインスタンシングを用いて大量のオブジェクトを表示している
- その他サウンドとかネットワークとかで凄い事やってる(詳しくないのでスマン)
とかです。ポートフォリオで自分の用いた技術などが説明されてるとなおいいですね。
独自性
独自性はプログラマでそれほど重要視されてないかなと思いますが独自の工夫のことですね。相手に「えっ!?この表現ってどうやって実現してるの?わからない…」って思わせたら勝ちです(笑)
まぁなかなかそこまでは求められないかなと思いますので、1~3でしっかり点が取れるようになっておきましょう。
ポートフォリオ
ポートフォリオについてですが、これ15年くらい前の就活ではほとんどなかったんですが、現代の就活では割とみんな作っています。
何かと言うと、作品を送り付けても相手の環境で動かないとか、動かすのも時間がかかって相手の負担になるとか、色々セキュリティ的な面からほぼ必須化してきてるのがこのポートフォリオです。
何かと言うと、自分が作ってきた作品のカタログですね。今までどういうものを作ってきたのかをパワーポイント等を用いて、スクショと図と文章とで表現します。これがあると相手も評価しやすいためポートフォリオを添付しておいたほうが作品選考に通る可能性がかなり高まるでしょう。
ポートフォリオの構成の仕方は重要度順と時系列順がありますが、とりあえず一番見せたいもの(もしくはもう一つくらい)をトップに持ってきて、それ以外は時系列にするのが一般的かな~と思います。
言語は何が良いの?ゲームエンジンは?
はい、これも論争になるやつですね。なので、あんまり言及したくないのですが、質問が来そうなので書いておきます。
言語について
これこそ私見を書いておくと言語はやっぱりC++がいいかなと思います。もちろんUnityがありますのでC#でもいいんですが、Unity&C#を選択してしまうと就活の対象企業が実質Unity使ってる企業に限定されてしまうんですよね…シェーダとか書いてるならC++採用企業でも行けるかもしれませんが、そうでない場合は就活の範囲を限定してしまう事になり、個人的にはあまりお勧めしないかな…と。
Unityで作品を作るのはいいですが、C++でも何かしら作っておいたほうが良いとは思います。
とくに自社エンジンを作っている会社や、UnrealEngineを採用している会社はC++の方が喜ばれるかなと思いますので、全体的に言うとC++の方がお勧めです。
ゲームエンジンは何が良いの?DirectXがいいの?
う~~~~~~~~~~~~ん、非常にお答えしづらい質問ですね。これは志望する会社によります。
志望する会社がUnityを使用していればUnityの作品でいいでしょうし、UnrealEngineを使用していればUnrealEngineの作品がいいでしょうし、自社エンジンバリバリの会社ならDirectXとかVulkanやっておいたほうが良いかなと思います。
まぁ、どれでやるにしても「レンダリングパイプライン」とか「コンピュータアーキテクチャ」とかの知識とか理解力が高ければ高く評価されるとは思いますので、そういう概論的な所を勉強したうえで、自分が志望する会社に併せてスキルセットを構築するといいかと思います。
おわりに
と、まぁ色々と書いてきましたが、最初にも書いた通りあくまでも私見です。常識も数年ごとに変化するでしょう。あまり鵜呑みにはせず、あくまで参考程度にとどめて就活を頑張ってください。応援しています。