ゲーム開発・制作現場で活躍できるエンジニア
環境変化」に適応し続けるエンジニアの特徴
モバイルだけに限った話じゃないかもしれませんが、開発言語および情報、フレームワーク、その開発キット含め、どんどんネットに出ているので、特にWeb系の人の間では、そもそもエンジニアって何をする職種だったのか、という話があります。昔は「コードを書きます」、もしくは「大きなシステムに仕様書通りに作っていきます」というのがエンジニアだったのですが、そのコードを書ける人、仕様書通り作れるレベルのエンジニアががどんどん増えている状況下で、エンジニアの定義があいまいになりつつあります。そういった中で、エンジニアとして第一線でで活躍している人たちは、他の人が持っていないような何かを持っているはずで、それは何のなのか、そして、今後、必要になってくるのは何なのかというところを考えたいと思います。
Androidの世界で考えると、端末も無かった時代に、例えば、会社の危機感を感じて個人的に勉強していたとか、単純にSDKが無料で手に入って面白そうだから、とりあえず使ってみた人とか、エンジニアであれば、新しいものが出たら、好奇心からとりあえず使って見たいと思う人が多いのではないでしょうか。そういった人たちは、大手メーカーから、早い時期にベンチャー企業へと移って、現在も活躍しているので、そういった精神は大事なんだと思います。つまり、いま会社でやっている業務に関係のないところで、好奇心から個人で勉強しているという人が強いのではないのでしょうか。
そして、これはモバイルに限った話では無く、自分自信がいわゆるそのコンテンツ側の設計力を持っているというか、サービス自身とかを思いついて、こういうものが世の中に必要だよねとか提案したいみたいなものを作っていっちゃう人ですね。また、いわゆる触媒として機能する人で、これはコンテンツとなる誰かを、どれだけ最大化するみたいなことに力を使うんです。どちらも、結局、自分たちのやっている商売なり何なりというものが、何によって価値を生んでいるのか。価値というのはお金を指しているということを理解していて、これをいわゆる最大化するためにエンジニアリングとしてどうするか、といったことを考えられる人です。これは自分で物事を筋道立てて考えて、必要な技術が何かということが分かるということです。
例えば、何かのサービスをやるときに、サーバの台数がめちゃめちゃ必要ですということになって、コネクションの数、捌けるリクエスト数が増えれば増えるほど、お金が儲かるんだよねということになって、それらをクラウドでやっていると、マシンをいっぱい並べます。そのマシンの数が少なければ少ないほど、総体的に儲かってくれないとになったときに、じゃあ一番負荷がかかっているところはどこだろうということを調べます。結果、それはディスクI/Oじゃないかとなったとします。それだったら、ディスクI/Oが一番少ないサービスって何だろうという話をして、それをこれにリプレイスしましょう、といったことをできるというのが、触媒として機能するエンジニアです。そして、その手前の人というのは、そもそもこういうサービスをやったらこのぐらいの人が使うんじゃないかみたいなことを設計するという人です。これが合わさるときちんとした仕事になります。
その他、勉強会に参加する、色々な本を読むといったインプットよりも、とにかく何かを作ってアウトプットしていくことが重要です。実は、インプットしたときではなく、アウトプットしたときに一番物事を理解できるんです。逆に言うと、アウトプットしてないうちは理解できていないということです。このインプット→アウトプットを繰り返している人というのは、日々、成長しているので、ゲーム開発・制作現場でも活躍し続けることができます。