プログラマーとして10年先も生き残るために
プログラマーの現状
プログラマーは軽視されがち
ITエンジニアの仕事のうちプログラムを組む作業(コーディング)は、現状誰でもできる作業として多くの現場で軽視されがちです。よくIT業界の業種で見るピラミッド図にPG(プログラマー)が最底辺でその上がSE(システムエンジニア)で更にその上がPM(プロジェクトマネージャー)といったものがあり、このようにプログラマーは若手や初心者がやるといったイメージがあります。
そのため、40歳になっていまだにプログラムを組んでいる人は何か問題があるのではないか、あまり仕事ができないのではないかと言われの無い扱いを受けることもあります。実際に客先常駐タイプの現場でプログラムを組んでいる人は若い人が多いため、その中に比較的年齢が上の人がいると浮きますしPMの人が遠慮したりして指示を出しにくいといった扱いにくさがあるようです。
給与体系についてもPGよりもSEのほうが高く設定されているのもこういった流れを表していますので年収で見るとやはりITエンジニアでPGとして続けるのは厳しくなっています。
SEになると基本的にプログラムは組まない
PGの業務とSEの業務は多きく違い、PGの管理、基本設計や詳細設計などの設計書の作成、またプロジェクトに必要な会議の資料作成などプログラム以外の部分が主なものになります。
ただ、現状SEの業務ははPGのものを兼任していたりすることもありますのでこのときはまだプログラムを組んでいられる時期です。ですが、PMともなるともうプログラムを見ることすらほとんど無くなりますし、SEであっても後輩や若手が入ってくるともう管理が主な仕事となるでしょう。
PGでいられるのは20代で30代からはSE、そしてPMへ、この流れは変えがたいものがあり、中途採用の求人でプログラムだけを組みたいと言って入ってきた人でも最後に組んだのはいつか忘れてしまっているというケースもあります。
現場から見たプログラマーの現状
いいプログラムを組むのは実際難しい
とはいえプログラムが実際のところ誰にでもできて軽視されるべき業務かといわれればそうではありません。プログラムを作る際に実際に動くものを作ることはある程度技術があれば誰でもできますが、可読性が高いものや保守性に優れたものは技術以外にも経験や知識が必要になってきます。
プログラムは同じ動作を実現するためのコーディング方法は一つではありません。納期やコストを気にして若手だけでプロジェクトを組むと、作って動いたはいいが完成したプログラムが他人には読みにくく、保守や追加での対応が難しいため結果的にコストが余計にかかってしまったり取れるべき仕事が取れなくなります。プログラマーとしてのキャリアを残しにくい現状ではこのような問題が起こりやすいと言えるでしょう。
プログラミングだけじゃない
コミュニケーション能力はどちらにしろ必要
優れたPGとしてい続けることとSEとして管理する立場に進む、どちらのキャリアについても関係なく必要なのがコミュニケーション能力になります。自身の進路や展望に関して上司に対して上手くアピールすることも必要で、言語の幅を広げたり仕事を的確にこなすだけではそのまま管理への道を進むことになります。
飲み会や昼ごはんといった機会を上手く利用してそういった話を持つ機会を多くすることもプログラマとして生き残るためには必要です。また、習得している知識や技術に関しては直属の上司もいいですが、仕事を取ってきてくれる営業職の人にアピールすることで言い結果に繋がるかもしれません。
プログラマーとして10年後も生き残るために必要なこと
言語の幅を広げる
言語の幅を広げることはそれだけできる仕事の種類が増えますので生き残るためには必要です。
例えばJavaですと現状多くの仕事がありますが、その分技術を習得している人も多いためこのプログラミング言語を習得していたからといって重宝はされにくいでしょう。
しかし、もし他の言語でのプログラミング経験がある場合は例えばJavaで作ったプログラムを別のもので作り直したいといった仕事もできますし、技術者として評価を受けられる会社であれば年収についても結果的にプラスになる可能性もあります。覚えておきたい言語としてはまず「VisualBasic.NET」で、仕事の数がそれなりにあり、学習がしやすいのが特徴です。
そしてこの.NETを覚えていれば「VB6」やエクセルに付いている「Excel VBA」についても応用が効きますのでお得です。VBができれば正直なところIT業界を離れてもパソコンのある業種ならマクロ作成やちょっとしたツール作成でかなり重宝されますので覚えていて損はないでしょう。
次に「Java」で、これは前述した通り現状案件数が多いため受けられる仕事量の多さが魅力です。また、Javaでの考え方として存在するオブジェクト指向は「C++」などの別言語への応用が効きますので他言語への足がかりにも使えます。
そして新しい技術として「Swift」があり、これは2014にAppleから発表された比較的新しい言語です。この言語の特徴はiPhoneやMacなどのアプリ制作が主な用途で、これまでiOS開発として利用されていた「Objective-C」に変わるものとして徐々に浸透しています。新しいもので比較的熟練した技術者がいないため、必要とされる機会も多くなるでしょう。
主流じゃない言語も一応触っておいたほうがいい
現在主流の言語はそれだけ案件数も多く需要がありますので技術者もそういったのものを習得します。しかしそうなると逆にいなくなるのが主流ではない言語の技術者です。プログラマーは軽視されやすい傾向にあると述べましたが、ITエンジニアは30歳までにはある程度上流の工程に進みます。
大卒から30歳までに習得できる言語というのはそう多くはありませんので、実際に習得する言語は主にその時主流であったものになります。そうなりますとあまり需要のない言語を習得した技術者は逆にいなくなってしまいます。仮にいたとしても現場から離れてしまった人たちで開発業務に回すことができない可能性が高いです。
そのため、そういった需要のの薄い言語についても知っておくといつか役に立つことがあるかもしれません。では実際どの言語がいいのかについては「COBOL」が挙げられます。COBOLは1950年代に誕生し日本では1970年代から1990年代までのシステム開発で多く使用されてきました。
生誕50年祭が行われるほど古い言語ですが、現状これを使って作られたシステムでまだ動いているものも多くあります。そのため、現在でもCOBOLでのシステム保守やCOBOLで作ったシステムをJavaで作り直すといった案件があったりします。COBOL資産は無くならないとまで言われたほど数多くのシステムを構築してきましたが、現状この知識をもった技術者は引退間近かもう既に引退しています。
そのため、ITエンジニアとしてこの言語を覚えていることは意外なところで重宝されることになる可能性が高いといえます。
理解のある会社に転職する
ITエンジニアとして30、40歳になっていまだにPGのままでは何か性格に問題があるのではないか、自身のキャリアをそのように捉えられてしまうような会社では生きにくいでしょう。
IT業界全体としてプログラマー軽視のイメージは大変強いのが現状としてありますが、それでも理解のある会社というのはどの業界にも存在します。そこでプログラマーが会社としての大切な資産であるそのような会社を探して転職をすることも必要です。
やり方としては、新卒募集と違い中途採用はどこの会社でもある程度行っていますので求人があればそのまま応募し、求人がなくても気になった企業に経歴書を送ってみます。この際自身のやりたいこととしてプログラムをやりたいといったことをアピールすることが大切です。
ただ、その場合可能性としてやはり多くは面接までたどり着けないこともあるでしょうが、それでも中には聞いてみたいという企業もありますので数をこなすことで探し当てましょう。もし上手く転職できたとしたら自身のプログラマーとしての技術を評価してくれるため年収なども期待ができるかもしれません。
このコラムが気に入ったら
ぜひ「いいね!」をお願いします♪
みんなに役立つ情報をお届けします。