連載
» 2012年01月31日 01時31分 UPDATE

きのこる先生のエンジニア転職指南(7):このキャリア、Web業界で生きる? 職種別・Web業界相性診断 (1/2)

元プログラマ、現Web系企業の人事担当者による、エンジニア転職指南。「応募書類の書き方」や「自己PRの仕方」について、エンジニアの視点を持ちながらアドバイス。エンジニアの幸せな転職のために、菌類が奮闘する。

[きのこる先生,@IT]

 こんにちは、きのこる先生です。わが家では最近「しめじを干す」ことに凝っています。きのこを乾燥させるとうまみが凝縮して大変おいしいのですが、「干される」という言葉にはついつい反応してしまいます(会社から干されて、窓際族になりませんように!)。

行くべきか、行かざるべきか、Web業界

 さて、前回「開発手法とコミュ力は捨てろ――SIエンジニアに告げる、Web企業への転職戦略」では、SI業界からWeb業界へ移る際の心構えを解説しました。しかし、世の中には「SI」と「Web」には分類できない、さまざまなソフトウェア開発の仕事があります。

 そこで今回は、ソフトウェア開発の仕事をプロダクト別に分類し、そこで経験を積んできたエンジニアの特徴Web業界を目指すために気を付けるべきことを、プロダクト別にまとめます。

 なお、前回を読んでいただければ「Web系企業に抱く幻想」はとっくに投げ捨てているだろうと思います。今回の記事は、「それでもWeb業界を目指すよ!」という人のためのアドバイスです。幻想を捨て、「自分のやりたいこと/できること」をしっかり整理してから、「Web業界を目指す/目指さない」を選んでいただきたいと思います。

 なお、今回紹介するのは、下記の職種です。

  • ゲームプログラマ
  • アプリケーションプログラマ
  • 組み込みプログラマ
  • インフラエンジニア

あなたは何を作っているプログラマ?

 「プログラマ」と言っても、開発するソフトウェアにも使用するアーキテクチャにも、さまざまな種類があります。すべてを網羅するのは難しいですが、ここではざっくりと3種類に分類します。

  • ゲーム
  • アプリケーション
  • 組み込み

 現在SI企業に所属しているエンジニアは、自分が関わってきたプロジェクトがどこに分類されるかを考え、一番当てはまりそうなところを重点的に読んでみてください。

ゲームプログラマ

 ここでは主に「家庭用ゲーム機向けのゲームソフトを開発するプログラマ」を「ゲームプログラマ」と定義します。

 なぜ「家庭用ゲーム機」に限定するかというと、アーケードゲームは純粋なビデオゲーム以外にエレメカの要素が強く、どちらかというと後述する「組み込みプログラマ」に近い経験を積んでいる場合が多いからです。

 アーケード向けであっても、ビデオゲームの開発経験をしっかり積んだ人は「ゲームプログラマ」に含められます。最近何かと話題の「ソーシャルゲーム」の場合、仕事内容はほぼ「Webプログラマ」なので、ここでは除外します。

●エンジニアの特徴

 いわゆる「テレビゲーム」を作る仕事です。かつてはアセンブリ言語で開発していましたが、ある時期からはほとんどC/C++で開発しているので、C/C++を使えることが前提です。

 担当パートによってスキルの偏りが大きいものの、コンピュータの動作原理からユーザーインターフェイスまで幅広いレイヤの知識が要求されるため、平均すると他業界より高いスキルを持っています。また、ゲーム開発には「仕様書に書けないこと」が多いため、行間を読んでより良いものを作るという点での「問題解決能力」が備わっている傾向があります。

 残念なことに、慢性的に就業時間が長いせいか、勉強会に参加したり業務外でコードを書いたりする習慣を持たないプログラマが大半です。趣味嗜好がはっきりしているため、Webで仕入れる情報も偏っていることが多いようです。

●Web業界を目指すなら

 ゲームを作る仕事は大変、楽しいです。「仕事それ自体が報酬である」と考えることもできるため、「ゲームを作りたい」という意思が強い方にWeb系企業はおすすめできません。「ゲームソフト」的なソフトウェアを開発する機会はほとんどないからです。

 「基本的なスキルは高い」と採用担当は期待しているので、書類審査では目に留まりやすい傾向があります。期待を裏切らないスキルを持っている場合は問題ないのですが、そうでない場合はアピール材料を用意しておきましょう。Webの基本的な仕組みを知っておくこと、業務外でWeb系の開発を行うこと、それらをアウトプットしておくことが大事です。

 また、最近需要が伸びているスマートフォン向けのアプリ開発者としても、ゲームプログラマは期待されています。自分で開発したアプリをデモできると、強いアピールになります。

アプリケーションプログラマ

 パソコンで動く、デスクトップアプリケーションを開発するプログラマを、ここでは「アプリケーションプログラマ」と定義します。「パッケージソフトを開発する仕事」と「ユーザー企業向けに独自の業務アプリケーションを開発する仕事」に大別できます。

●エンジニアの特徴

 Windows向けアプリケーションを作ることが多く、VisualBasicが根強いです。C++で開発する場合もマイクロソフト独自の流儀が色濃いため、C++ではなく「VC++」と区別されたりもします。最近はC#と.NET Frameworkの組み合わせにシフトしているようです。

 業務アプリはどんどんWebアプリへのリプレイスが進んでいるため、需要は徐々に減少していくでしょう。パッケージソフトも、製品自体の淘汰が進んでいるため、「使われるだけの明確な理由」がないと生き残るのは難しいようです。そのためか、プログラマたちの「Web業界へ転向したい」という意向を強く感じます。

●Web業界を目指すなら

 残念ながら、Web系企業で生かせるアプリケーション開発の経験は多くありません。Webサービスの開発には、LAMPやJavaを使うことが多いためです。C#/VBが主なスキルの場合、ASP.NETを使っている企業以外は「スキルミスマッチ」と判断することが多いでしょう。

 選考を突破するためには、「業務外でのLAMP開発経験をアピール」という正攻法が有効です。業務でプログラミングをしてきたという経験と、「新しいことへのチャレンジとキャッチアップを恐れない」という将来性をアピールしましょう。

 企業によっては、業務知識が生かせる場合もあります。画像や音声を処理するアプリケーションを開発した経験が、画像・音声投稿をサービスを提供するWeb系企業のバックエンドにマッチした、というケースがありました。そのため、アピールの材料として獲得した業務知識についても書いておきましょう。もちろん応募先企業を下調べし、マッチングを探ることも忘れずに。

       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。