執筆者:中込
プログラマーとしてモノリスソフトへ新卒入社。 以来、アプリケーション開発業務を担当。 好きな食べ物は山吹色のお菓子。
TECH BLOG
こんにちは。モノリスソフト プログラマーの中込です。
新卒採用で入社し、現在4年目となりました。
今回は番外編として、学生向けの就活アドバイスを掲載したいと思います。
技術を紹介する内容ではありません。
たまにはこういった内容も、お目通しいただければと思い、執筆致しました。
それでは「新卒応募者向け プログラマー応募書類作成の注意点」を解説致します。
可能な限り、一般的な情報を書かせていただきます。
弊社の採用に関わる情報は掲載できませんし、多くの会社を受験せざるを得ない新卒応募者の事情も考慮して、広く応用できる基本的な内容とします。
ゲーム系の専門学生からしてみれば、よく耳にする常識的な内容かもしれません。
下記に記載するのは私の実体験に基づいた内容ですが、全てのゲーム会社・応募者に当てはまるとは思いません。
就活に絶対に正しい方法というのは無いので、ご自身の事情に応じて、あくまで判断材料の一つとしてご活用いただければ幸いです。
プログラマー職に応募するのであれば、どの会社でも必ず提出を求めるのが、いわゆる「プログラミング作品」です。
実行ファイルとソースコードの両方を送付するのが一般的です。
数分で遊べるゲームか、技術デモとなるプログラムを提出する人が、大多数だと思います。
このプログラミング作品の内容について、重要なポイントを三点紹介したいと思います。
家庭用ゲーム機向けのゲーム会社に送る作品はC++で作るのを推奨します。
なぜなら、実際の業務で使う言語が、大抵の場合C++だからです。
入社後にC++を一から教えることは、多くの会社で想定されていないと思います。
就活時点でC++の使用が確認できれば、応募者のC++習得に関しては選考担当者も安心できるはずです。
そうは言いつつ、実は私は、作品をCで作り提出しました。
私は専門学校の二年制学科の卒業生なのですが、カリキュラムの都合上、一年生のうちにC++を履修できておらず、致し方なくCで実装しました。
利用しているDirectX9のAPIはC++なのに、自分の書いた部分は全部Cというソースコードになりました。(私の在籍した学科では一般的でした)
Cで作った作品でなぜ書類が通ったのか自分なりに考えますと、理由は大きく二つかと思います。
作品を完成させた後の就活中、必死にC++を勉強したことはいうまでもありません。
一般的に悪いと言われるコードを書いていないか、提出前に確認はしましょう。
マジックナンバー、深すぎるネスト、長すぎる関数、インデントの崩れ、あからさまなスペルミス、あたりはチェックされる可能性があります。問題のあるコードを修正するのも作品作りの一環と捉えて、リファクタリングにも手を抜かないことをお勧めします。
コメントですが、適切な分量で付けるのが良いです。どの程度が適切なのかは、たくさんコードを読み書きして、さじ加減を掴むしかありません。
その上で、コメントを付けるか付けないか迷う箇所は、付けておくのをお勧めします。なぜかというと、選考担当者は応募書類を早く処理する必要があり、コメントで大雑把に内容が分かった方が、ソースコードを読むよりは早く確認できるからです。
応募書類として読まれる前提のコードなので、その趣旨に即した形に体裁を整えておくことは、評価する側の心象にいくらか良い影響があるかもしれません。
作品のアピールポイントを、明確に用意することをお勧めします。
なぜかというと、選考担当者にソースコードの全てを読む時間はありません。選考担当者は多くの場合、所属しているプロジェクトの仕事も抱えながら、忙しい中で膨大な量の応募書類を確認します。実行ファイルやソースコードを、隅から隅まで把握するのは、物理的に難しいのです。
以上を踏まえると、短い確認時間の中で自らの技術力を証明する必要があり、そのために明確に「ここを見てほしい」とアピールするのが良いと思うわけです。
では何がアピールポイントになるのでしょうか?
理想を言えば、プログラマーがピンとくる技術を自力で実装すると、技術や意欲が伝わりやすいと思います。ゲームAI、アニメーション、シェーダー等で、技術名として存在するものを探して、実装してみると良いかもしれません。このブログのタグ一覧も、考える上で参考になります。
アピールする技術が見つからなかったり、実装が難しい場合は、学校で習った内容に+αで工夫を加えて提出するのでも良いと思います。私が在籍したような二年生学科の場合、就活開始まで一年間しか猶予がありません。時間不足は如何ともしがたいです。勉強期間も考慮に入れてくれると信じて、現時点でのベストを尽くしましょう。
アピールポイントを用意したとして、それをどう伝えるかという問題があります。
考えないといけないことは、プログラミング作品が届いた後、それを確認する選考担当者側の手順です。
いきなりソースコードを読みに行くでしょうか?
それは無いと思います。ソースのどの箇所を読めばいいか分かりません。
以下のような行動が、手順の最初にくるのではないでしょうか。
アピール箇所のソースコードを、main.cppから辿って見つけるのは時間が掛かります。
大抵はファイル名で分かったり、grepですぐ引き当てられますが、ドキュメントに「この箇所読んでください」と書いてあれば選考担当者は助かると思います。
私は、Wordで作った作品紹介ドキュメントに、直接見て欲しいソースファイル名を明記していました。
皆さんの作る作品は、起動後すぐにアピールポイントが伝わる流れになっているでしょうか?
実は作品を実行するだけだと、上記のような不備があり得ます。
だからこそ、動画を作るのをお勧めします。アピールポイントを上手に映像化できれば、選考担当者にアピールポイントがより伝わりやすくなると思います。
プログラマーのポートフォリオがどんなものか、見たことがある人は少ないと思います。
基本的には、就職作品や学校の課題で作ったものを載せます。
こういったものを作るのは、相当な時間が掛かります。ただでさえ時間が無い中で、このような準備をするのは大変な手間でした。
応募企業にもよりますが、ポートフォリオや先述した動画は、提出の必須要件ではないと思います。
こういった任意の提出物が無くとも、プログラミング作品など必須提出物だけで選考を通過することは、十分に可能だと思います。
ただ私は、以下のようにも思います。
私は新卒入社と言いつつ、専門学校以前に一般企業で職歴があり、新卒就活も二度行いました。
世のほとんどの就活は、皆が同じルールで筆記試験を行い、面接を行い、その数日の結果のみで判断されます。ゲーム業界のような特殊な業界だけが、作品提出という実はいくらでも準備ができるものに、大きな重きが置かれているのです。
ゲーム会社に入社後の業務内容は、期日に間に合わせて、成果物を用意して提出することです。就職活動はその予行練習と言えます。面接や履歴書では何とでもアピールできてしまうからこそ、目に見える形で成果物を提出できれば、それが信用となり、仕事能力の証明にもなります。
何にせよ入念に準備を行い、皆さんの能力が正しく判断されるよう整えて、書類通過を目指しましょう。
こうして文章に書き出してみると、応募書類の作成一つとっても、意外と現在の仕事に活きていると感じました。
実際の業務では、他人に使ってもらう関数を用意するときや、他職種向けに資料を書くときなど、それを利用する側の状況やレベルを意識して、コードや文章を調整します。他者の視点に立ち、分かり易い意味の関数名を付けたり、技術的に細かくなりすぎない資料を書いたりするわけです。
私が今回書いた内容は、一言でまとめるなら、利用者側(選考担当者)の視点を意識しようということです。
これが中々難しいのですが、就職活動の中で身に付けば、就職後も色々な場面で役立つ能力となるはずです。
私もまだ至らぬ点が多く、伝わりづらいコードや文章を書きがちではあります。
今後も引き続き、精進していければと思っています。
執筆者:中込
プログラマーとしてモノリスソフトへ新卒入社。 以来、アプリケーション開発業務を担当。 好きな食べ物は山吹色のお菓子。