paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

転職して技術を極める?管理職?SIerのエンジニアのキャリアガイド

f:id:paiza:20160330142855j:plain
Photo by Br3nda
f:id:paiza:20140916135428p:plainこんにちは。谷口です。

転職サービスを運営している仕事がら、SIerに在籍している人から「転職したい」という相談を受けることが非常によくあります。

特に「周りはどんどん辞めていくし、仕事は激務で毎日遅くまで帰れないし、このままここにいていいのか不安…」という感じの人が非常に多いです。

ただ、「今の仕事がとにかく嫌だ」というだけで退職を決めたり、転職活動を始めて適当に内定をくれた企業へ入社を決めたりしてしまうと、後から「やっぱり違った」「転職先が自分に合わない」「前職の方がよかった…」ということにもなりかねません。

特に明確なキャリアビジョンがあるわけではないけど転職を最近意識し出している」という方、また現職に不満を感じている方々は、「これから自分はどのようなキャリアを積んでいきたいのか?」といったことをまず考えるところから始めた方がよいでしょう。

今回は、新卒でSIerに入社した人が、その後どのようなキャリアの方向性があるかということを考えていきたいと思います。

SIerでの開発業務の構造

まず、基本的な受託開発における元請企業と下請の産業構造を見ていきましょう。

受託開発では、まずユーザー企業と呼ばれる顧客、例えば銀行が「ATMのシステムを新しくしたい!」といった場合、「こういうシステムを作ってください」という依頼を直接請けるのがプライムベンダーと呼ばれる元請け企業になります。この元請け企業は、ユーザー企業と「このシステムをいつまでにいくらで作ります」という契約をします。そして、元請け企業は下請け企業に実際の業務を振り分け下請け企業のエンジニアは要件通りの設計やプログラミング実装をします

N次請けの受託開発企業に入社をすると、まずは末端のPG(プログラマー)として設計書の通りにプログラミングをするところから始まり、大体1~2年ほどでSE(システムエンジニア)として設計もするようになったり、PL(プロジェクトリーダー)として開発チーム内のリーダーになったりします。大手の元請け企業に入社した場合は、順当にいけばさらにPM(プロジェクトマネージャー)となって数百人単位のプロジェクトを取りまとめるようになります。

もちろんこの辺りの役職名やどれぐらいで次のステップに進むかというのは企業やプロジェクト、人によっても異なります。しかし、ほとんどの企業ではPGから始まって、経験を積んで役職が上がり、PMに近づくほど設計や人員管理、顧客との要件調整や開発チームの取りまとめ等がメインとなり、プログラミングからは離れていく傾向にあります。

今の仕事や会社に不満がある人、また不安がある人は、こうしたSIerにおけるキャリアを踏まえた上で「そもそも自分はどういった仕事がしたいのか」「プログラミングをし続けたいのか」「顧客と話して仕様を決めたり、人員を管理したりする方が得意なのか」といったことを考えてみるとよいでしょう。

■今後どのようなキャリアの方向性があるのか?

f:id:paiza:20160330192816j:plain
Photo by i_yudai
それでは、SIerに入社したエンジニアの方がキャリアを積んでいくに当たって、どのような選択肢があるかを見ていきましょう。

◆現職を続ける

現職のSIerにいることとした場合、順当にいけばそのままN次請けであればPL、大手の元請けであればPMとなり、その後管理職としてキャリアを積んでいくことになるでしょう。

N次請けの場合は、顧客との間に元請け企業や二次・三次請けが入って中抜きが発生するため、業務自体の大変さに比べて待遇はあまりよくならない傾向にあります。Tech総研が22~44歳のIT系企業に勤務するエンジニア1000人にとったアンケートをもとに元請企業・下請企業別に給与水準を比較した場合、下請よりも元請の方が給与が高く、さらに年代が上がるにしたがってその差は広がっています。(IT業界の給与格差を探る!元請と下請でいくら違う?|【Tech総研】

f:id:paiza:20160302164850p:plain

また、顧客(発注者)との間には距離があり、基本的に必要とされるのは決められた設計や仕様の通りにプログラミングをするだけで、顧客の顔が見えにくかったり、自分の考えで改善することができなかったりします。

業務内容やスケジュールに関しては投入されるプロジェクト次第といったところですが、様々なプロジェクトを経験することができるので、自分次第では多くのシステムやサービスに携わり、知見を得ることができます。

求められること
・期日を守って自分の担当システムを作りきること
・配置される様々な常駐先やプロジェクトに順応すること

利点:いろいろなプロジェクトを経験するので、自分次第では様々な知見を得ることができる
欠点:スケジュールが遅れたときのしわ寄せを受けることが多い。仕事では決められた技術しか使えないことが多い。

◆上流のSIerに転職する

小規模なN次請け企業から同様のSIerへの転職を目指す場合、数千人規模の大手企業に入社するのは狭き門ですが、元請けもやっているようなより上流に近いSIer(数百人~1000人前後ほどの規模の中堅企業)への転職であれば、目指す価値は大いにあります。

より上流の企業へ転職すると、いずれPMとなってプロジェクト全体をとりまとめることもあるでしょう。また、前述のとおりN次請けの末端にいるよりは待遇もよくなる傾向にあります。

顧客と要件を詰めて、設計して、実装して、テストして……といった手順自体は得意な人や「仕事内容自体は嫌いじゃないけど、現職は労働環境が悪くて…」という人は、より上流に近い企業への転職が合っているかもしれません。(もちろん上流であれば必ず労働環境や給与がよくなるというわけではありませんので、応募する企業や条件に関してはしっかり調べましょう)

こうした企業では、自分の立場がPMに近づくにつれて期日と予算範囲を厳守しながら、システムを納品する管理能力が必要とされます。また、管理や設計に関するスキルは小規模なN次請けにいるよりも身につけやすくなるでしょう。

求められること
・スケジュールを作成・管理し、納期までに作りきること
・プロジェクトに携わる人員をまとめて管理すること
・設計ができること

利点:N次請けよりは経営等が安定している企業が多い。年収も上がる可能性が高い。
欠点:数年でプログラミングする必要はなくなり、プログラミング以外の管理能力を問われるようになるため、プログラミングをしたい人、人員管理等が苦手な人には向かない。

フリーランスのエンジニアになる

特にN次請けの受託で、高い技術を持っている人は常駐先から「〇〇さんにやってもらいたい」という指名を受けることもあります。それが続いたり、「あなたに直接仕事を頼みたいから、フリーにならない?」と言われたりして、フリーランスのエンジニアになる人もいます。

フリーランスのよいところは、中抜き等がないため契約した金額が全て自分のものになる(もちろん税金等はかかります)ことや、きちんと納期通りに成果物を出すことができれば時間や勤務スタイルの自由度が高いこと等が挙げられます。

ただ、もし企業が何度か仕事をくれたとしても、当然ながらその企業があなたを全面的にバックアップしてくれるというわけではありません。急に受注がなくなること等も充分にあり得ますので、安定志向の方には向いていません

また、フリーの場合は事務処理や契約金交渉等も自分でやらなければなりませんので、法律等に関する最低限の知識や、自分を売り込む高いスキルとコミュニケーション能力も必要となります。

求められること
・企業が契約してくれるレベルの高い技術や知識
・自己管理能力
・コミュニケーション力

利点:中抜きがなく、成果に応じた収入が望める(場合によっては報酬の交渉もできる)。自由度が高い。
欠点:会社の後ろ盾や保障がない。開発以外の事務処理等も自分でしなければならない。結果を出し続けなければ仕事はもらえず、リスクが高い。

◆起業する

まずフリーランスになってから起業をするという人もいますが、作りたいサービスや将来のビジョンが明確な人、大規模な事業を自分で手掛けたい人の中には起業をする人もいます。

ただ、日本では初年度に倒産廃業する割合が個人事業ベースで37.7%、企業ベースで20.4%倒産、廃業している(経済産業省「工業統計表」ベースの集計)という状態ですので、あまり調べもせず「やりたいことがある!」というだけでいきなり起業するのはお勧めできません。

特にWebサービス等の自社サービスで企業起業する場合は、どういった業界でビジネスを起ち上げるのか、どのようなビジネスモデルにするのかが重要で、一旦始めてしまうとそれを変更するのも至難の業です。ですので、事前に何かとリサーチをしておくということが非常に重要となります。

求められること
・リーダーシップ
・経営に関する知識
・事業計画
・資金調達

利点:明確にやりたい事業がある人は自己実現ができる。
欠点:失敗も全て自分達の責任となる。事業が軌道に乗らなければ収入がない場合もあり得る(マイナスになる場合も…)。リスクが高い。

◆自社開発・Web系の企業に入る

自社でWebサービスやアプリ、ゲームやパッケージソフト等を開発・運営している企業への転職は近年増加傾向にあります。多くの自社開発企業では即戦力が求められ、採用も中途がメインでしたが、最近ではある程度のプログラミングスキルがあれば新卒採用もするという企業が増えてきたため、求人数も増加しています。

自社開発では常に新しい技術の検討や導入が必要とされるため、日々自分のスキルを研さんしていく必要があります。若い世代のエンジニアが活躍している業界であり、早いうちから大きな権限を持って仕事をすることもできます。

新しいサービスや新機能をまず作ってみて出して、細かい整備はその後様子を見ながら…といったことも多く、SIerとは開発の進め方が全く違うため、「時間をかけて要件定義して、設計して、実装して、テストして…といった作り方ではなく、もっとスピーディーな開発がしたい」、また「B2Cでユーザーの反応が見えるサービスが作りたい」という方には向いているかもしれません。

一方で、これまでになかった新しいサービスを企画・制作・運営し、ビジネスとして軌道に乗せるというのはかなり大変なことです。頑張って作ったのに思いのほかお金にならない、競合に似たようなサービスをリリースされてしまった……などといったこともありますし、軌道に乗せられなかったサービスが終了になってしまった……ということも珍しくありません。ですので、着実に安定した企業で働きたいという人にはあまり向かない環境かもしれません。

求められること
・プログラミングスキルと技術を追い続ける感度
・スピード感についていけること
・ユーザーについてなどの調査、分析、企画スキル

利点:比較的自由な社風の企業が多い。新しい技術にチャレンジできる。周りも技術力の高い人が多い。
欠点:安定性に欠ける。小規模のスタートアップだと会社の制度が整っていない場合もある。

■まとめ

エンジニアの将来のキャリアについては、企業任せではなくある程度自分で考える必要があります

じゃないと企業によってはプログラミングが好きなのにすぐにPMになって仕事が管理業務中心となってしまったり、開発自体は好きなのにデスマ続きで潰れてしまったり…ということも起こり得ます。

また、「現職を続けることが自分には合っている」「順当に管理職を目指したい」という方は、当然ながら周りに流されて退職や転職を意識せずに今の仕事を続けていくこと早めによりよい管理職になるにはどうしたらいいかといったことに目を向けた方がよいでしょう。

転職したら必ずハッピーになるわけではないですが、まずは今の会社にい続けた場合にどんなキャリアを積むことになるのかその方向性は自分の目指すところと合っているのかということは、今後もエンジニアとして仕事を続けていく方であれば一度考えてみた方がよいかと思います。




paizaではITエンジニアとしてのスキルレベル測定(9言語に対応)や、プログラミング問題による学習コンテンツ(paiza Learning)を提供(こちらは21言語に対応)しています。テストの結果によりS,A,B,C,D,Eの6段階でランクが分かります。自分のプログラミングスキルを客観的に知りたいという方は是非チャレンジしてみてください。

http://paiza.jp