MENU閉じる

HEXA BLOG

就活アドバイス

HEXA BLOGその他就活アドバイス2018.10.17

2018新人ブログデビュー!③

皆さん初めまして、今年度新卒で入社しました大阪プログラマーのオカリンと申します。

時が経つのは早いもので、入社してからすでに半年も経ってしまいました。
さらに言えばちょうど1年前が内定式で、2年前に至っては就職活動すら始まっておらず、
研究と就活準備に明け暮れていたのを思い出します。

就職活動に用いる作品の製作は何を作ればいいのか、どれくらいのボリュームが良いのか、プログラムの記述の仕方はあっているのか、当時は非常に悩み、苦労した記憶があります。

そこで本日はこの時の経験を踏まえ、これから就職作品を作る皆さんの手助けにできるような、
就職作品を作る際に私が意識したポイントについて共有させていただきます。

私が作品を作る上で意識したポイントは次の3つです。
①見た人が判りやすいよう書く
②アピールしたい要素を強調する
③ゲームとして完成させる

1つずつ解説していきます。

①見た人が判りやすいよう書く
例えば次のようなコードがあるとします。

Bulletクラス内のMove()という関数ですので行っていることは弾の移動であることはかろうじて読み取れます。
ですが中身をよく見ると変数の宣言がアルファベット1文字な上に、同じアルファベットがあったら番号で割り振るなど、その変数の役目がよくわかりません。さらに各計算が何を行っているのかぱっと見で分かりづらいです。
これでは見る側が苦労しますので、わかりやすくするための工夫を行ったのが次のソースコードです。


各変数が意味の分かる英単語にされており、その役割が明確になりました。
また、各計算や宣言のところにコメントを挿入することで何を行っているのか具体的に分かるようになりました。
これらの工夫でソースコードを熟読せずとも、処理の流れが把握できるようになり、読みやすさが格段に向上しました。

プログラマー志望においてソースコードは第2の履歴書ともいうべき存在です。
履歴書を書く時のように丁寧にかつ相手に伝わるように意識して書くことをお勧めします。

 

②アピールしたい要素を強調する
就職作品は自身の能力を知ってもらうものですので、自分は何が得意なのか強調する必要があるかと思います。
例えば描画周りであれば、膨大な数のNPCを一度に表示できるようにする、AI周りであれば環境の変化に応じてNPCの挙動が変化する、ネットワーク周りであれば通信対戦を実装するなどが挙げられます。その自分の得意な領域が強調されるように作ることで、プレイする場合でも作品を評価する上でもわかりやすく、確実に見る人に伝わると思います。

一方でこれといった得意分野の無い方もいらっしゃるかと思います。私もそうでした。
では私はどうしたのか?今まで挑戦したことのない分野にチャレンジし、それを実際に作品に組み込んでアピールしました。
新しいことに挑戦する意欲を示し、かつその結果が作品でどうなっているのかわかりますので、
アピールとしては比較的伝えやすい方法ではないかと思います。

ちなみに私はステートマシンを使ったAIの構築に挑戦しました。複数のエネミーがステージを巡回し、プレイヤーを見つけると追跡、攻撃を行うものでした。

また、他の方法として世に出ているゲームの仕組みを実装してみるなども非常にアピールとしてよいかと思います。私の知ってる限りでは、アーマード・コアやSplatoonを再現した方がいました。
既存のゲームを再現しますので何を作ればいいのか明白で、見る側としてもどうやって再現しているのか、見るべきポイントが分かりやすいです。ですが、その既存のゲームと比較されてしまうので、やるならばしっかりと再現する必要はあるかと思います。

 

③ゲームとして完成させる
当たり前のことを言ってるように思いますが、ここでいうゲームとしての完成とは、
ゲームが止まってしまうバグがなく、かつゲームがループして何度も遊ぶことができる状態です。
ゲームがループしている状態を、例として以下に示します。

タイトル

ゲーム

リザルト

タイトル

以下ループ

ゲームのボリュームとしてはとても少なく感じますが一通り遊べます。
対してゲームが未完成というのはどういう状態なのか。
プレイしていたら途中で終わる、そもそもバグが発生しプレイが続行できないケースがあるなどです。これらがダメな理由は、きちんと遊ぶことができない状態 = 未完成 = ゲームを完成させる能力が足りていないと判断される可能性があるからです。

大作を作らない方が良いというわけではありませんが、ボリュームの増加と共にバグも増えますので、製作が非常に困難になり、最悪バグが放置された状態で完成となってしまうかもしれません。
ですので、まずは必要最小限の実装でゲームが一通り遊べるものを作りましょう。それからボリュームの増加や追加の実装を行うフローが望ましいです。
追加実装した箇所がうまくいかない、だが提出期限は迫っているなどの状況下でも、
最小限の実装で動くものができているのでそちらを提出するといった措置が可能になります。

 

長くなりましたが、以上3点について共有させていただきました。
あくまで個人的な意見ですので、これらを守れば必ず就職できるという保証はできかねますが、
少なくともこれらを意識した作品で、作品選考を通過することはできましたので一度騙されたと思って意識して製作してみてください。

では、また次回ブログでお会いしましょう。

RECRUIT

大阪・東京共にスタッフを募集しています。
特にキャリア採用のプログラマー・アーティストに興味がある方は下のボタンをクリックしてください

RECRUIT SITE