システムエンジニア

【真実】SIerに入るとプログラミングできないは嘘!スキルが無いSEがやばい4つの理由

「SIerはプログラミングができないからつまらない」

「SIerで働くエンジニアは、プログラミングスキルがいらないんでしょ?」

最近、こんな話をよく聞いたり質問されるようになりました。

 

確かにSIerのエンジニアは、経験を重ねるにつれ、上流工程である「要件定義」や「設計」が主な仕事になっていくので、コードを書く機会は少なくなるかもしれません。

SIerの開発はウォーターフォールモデルと呼ばれ、要件定義からテストまでの開発手順を一つずつこなしていく手法が一般的です。

ウォーターフォールモデル

 

いちまり
いちまり
でも、SIerが全くプログラミングをしないわけではないよ!

 

わたしはSIerに勤めた経験があり、リーダー職を経験していますが、

メンバーのスケジュール管理や品質管理をするかたわら、現場でコードも書いていました。

なので、SIerに入るとプログラミングできない、なんてことはありません。

 

本記事では、わたしの経験談を基に「【真実】SIerに入るとプログラミングできないは嘘!スキルが無いSEがやばい4つの理由」について書いていきます。

飛ばし読みガイド【SIerに入るとプログラミングできないは嘘!スキルが無いSEがやばい理由】
created by Rinker
SIerに入るとプログラミングできないは嘘!スキルが無いSEがやばい理由

【真実】SIerに入るとプログラミングできないは嘘!

SIerに入ると全くプログラミングができないのか、と言われるとそんなことはありません。

 

いちまり
いちまり
ソースはわたし。現場でコードを書いてきたし、プログラマとしてベンダー資格も取ってきたよ!

 

ただし、少し条件や注意事項があるのも事実。

その内容についてこれから説明していきますね。

 

SIerのプログラミングの実態

プログラミングの仕事は新人の頃が多い

コードを書く仕事は、入社1~2年目のころが多いです。

新人にいきなりマネジメントをやらせたり、設計書を書けって言っても無理な話ですよね。

なので、まずは設計書を基にプログラミングを担当してもらい、仕事の流れを掴んでもらうんですよ。

 

いちまり
いちまり
わたしも新人の頃はプログラミングをすることから始まったよ!

 

その後、プログラミングなど仕事に慣れてきたら、徐々に設計書の作成を担当し、顧客との要件定義を担当し、開発チームのマネジメントを担当する…。

こんな風に、経験を重ねるにつれ、下流工程から上流工程にシフトしていきました。

 

いちまり
いちまり
この流れが一般的なシステムエンジニアの経歴の積み重ね方だと思うよ!

 

プログラミングがメインの仕事となるのは新人の頃の数年間なので、確かにプログラミングできる期間が短いのは事実。

ですが、新人の頃はSIerに勤める多くのエンジニアがプログラミングを経験していますよ。

 

いちまり
いちまり
ちなみに、人によっては技術のスペシャリストとして、経験を重ねたあともプログラミングスキルを磨く人もいるよ。

プログラミングする機会が少ない会社がある

SIerの中には、プログラミングをする機会が少ない会社があることも事実です。

SIerの業界構造は、よく以下の図のようなピラミッドで表されます。

SIerの業界構造

この図は、大手SIerが要件定義や設計などの上流工程を担当するのに対し、

下請企業はプログラミングやテストなどの下流工程を担当することを表しています。

 

なので、大手SIerは下請企業よりもプログラミングの機会が少ないんです。

 

とはいえ、大手SIerでもプログラミングスキルに長けた人はいます。

 

なぜなら、大手SIerは最終責任者として顧客に高品質のシステムを納品する必要があるからです。

司令塔でもある大手SIerがプログラミングスキルが無い人ばかりの集団だとしたら、

下流工程でどんな品質の成果物が仕上がってきたものか判断ができませんよね。

 

いちまり
いちまり
下流工程の成果物のレビューをすることもあるよ!レビューにはプログラミングスキルが必要!

 

大手SIerは下請企業よりもプログラミングの機会が少ないけれども、一定程度プログラミングスキルが優れている人がいる、というのが実態です。

プログラミングかマネジメントか選択できる会社もある

会社によって違うと思いますが、わたしの在籍していた会社では、入社から2年が経とうという頃、

上司との面談で「技術の道に進むか、マネジメントの道に進むか」どちらか選んでほしいと言われたことがありました。

 

よめ
よめ
これは悩ましい質問ね…。

 

わたしは、マネジメントの道に進みたいことを伝え、要件定義や下請業者のスケジュール管理などの仕事に就くことになりました。

このとき技術の道に進みたいと答えた同僚は、プログラミングによる基盤づくりなど、

プログラミングの効率化に関する仕事に就くことになりました。

 

いちまり
いちまり
大手SIerのエンジニアであっても、マネジメントばかりが仕事ではないんだよね。

 

自分の意思で、将来なりたいエンジニア像に向かって進んでいける会社もあるので、面接などで先輩社員に確認してみるといいですよ。

【悲報】プログラミングスキルが無いシステムエンジニアがやばい4つの理由

ここまで、「SIerでもプログラミングをやる」という話をしましたが、

大手SIerのシステムエンジニアかどうかに関わらず、プログラミングスキルが無いシステムエンジニアってやばいんですよ。

 

いちまり
いちまり
大手SIerにいるから「マネジメントだけやってればいい」なんてありえないんだよね。

 

ここからは、プログラミングスキルが無いシステムエンジニアがやばい4つの理由を解説します。

プログラミングスキルが無いSEがやばい理由

必要な工数を算出できない

マネジメントを担当するエンジニアにとって、全体のスケジュールを作成するのに工数を算出することは重要な作業です。

工数とは…
作業量を表す概念のこと。作業時間を「人数×時間」で表すのが特徴。
主に「人月にんげつ」「人日にんにち」「人時間にんじかん」という単位を使用する。

  • 1人月=1人の人が作業をしたら1ヵ月で完了する仕事量
  • 30人日=30人の人が作業したら1日で完了する仕事量
  • 720人時間=720人の人が作業したら1時間で完了する仕事量

引用:工数とは?その計算方法と管理のポイント/System Integrater

 

もし、工数の見積もりが甘いと人員が足りずスケジュールに遅れが出てしまうことになります。

逆に多く見積もってしまうと、人を多く雇いすぎて無駄な経費が発生してしまいます。

 

よめ
よめ
多すぎず少なすぎず、正確な工数を算出することが重要なのね。

 

工数の算出はプロジェクトを管理するマネージャーやリーダーが行うのですが、例えばプログラミング工程に必要な工数を見積もる場合、

プログラミングにどれくらいの時間がかかるのかがわかっていないと、正確な工数が算出できないですよね。

 

もしプログラミングスキルがあれば、「このくらいの作業にはこのくらいの時間がかかる」予測をつけることができるはずです。

 

実際にプログラミング経験が無い人が作った作業スケジュールは、かなりタイトだったりするので、現場のプログラマを苦しめることがよくあります。

 

いちまり
いちまり
正確に工数を見積もれないと現場からも顧客からも信頼を失うんだよね…。

 

プログラミングの経験は、工数を算出するのにも役立つんですよ。

技術的に対応可能か速答できない

顧客の要件を定義する会議に出席していると、顧客から

このシステムの開発はどれくらいかかるの?

と直接聞かれることがあります。

 

プログラミング経験がないと即答できず、一度会社に持ち帰らなければなりません。

 

いちまり
いちまり
会議中に正確な回答を速答できれば顧客からの評価も上がるんだけどね…。

 

一度持ち帰りになってしまうとスムーズな打ち合わせができないので、顧客からの信頼度が下がります

 

プログラミング経験があれば「この規模ならこれくらいの作業量だな」とか、

あるいは「技術的にこれは実装できないな」などその場で判断ができるので、上流工程においてもプログラミング経験は役立つんですよ。

緊急事態に対応できない

マネジメントを担当しているシステムエンジニアにプログラミングスキルが無いと、システムの不具合など緊急事態に対応できないリスクがあります。

 

システム開発では、プログラミング工程を終えると開発チームが縮小され、プログラマの人数が減っていきます。

 

そんな中、例えば予想もしなかった不具合が発生したとしますよね。

本来であればプログラマに仕事を振りたいところですが、開発チームの縮小により仕事を振ることができない、ということもあります。

こんな時、マネジメントを担当しているシステムエンジニアが自らコードを修正することができれば、緊急事態でも対応できるんですよ。

 

実際、わたしが小売業のシステム開発をしていたころ、あるチームのシステムに不具合が発生したことがありました。

製造フェーズを終えていたこともあり、すぐに対応できるプログラマはごくわずか。

リーダーはプログラミングスキルが無かったため、どうしたかというと…、

不具合が発生した早朝4時に、別チームのリーダーであるわたしを電話で起こして、呼び出すという行動をしたんですよ…。

 

いちまり
いちまり
めちゃくちゃ迷惑だったけどね…。
よめ
よめ
その後、ランチをおごってもらっていたからいいじゃない。

 

わたしは幸いにもプログラミングスキルがあったので、エラーを読み解きコードを修正し、応急処置を行うことができました。

 

このようにプログラミングスキルが無いと、突発的なエラーや緊急事態に対応できないというデメリットが生じてしまいます。

エンジニアとしての価値が低くなる

マネジメントだけできるシステムエンジニアと、マネジメントとプログラミングスキルが両方あるシステムエンジニア。

どっちの方がエンジニアとしての価値が高いと思いますか?

 

言わずもがな、マネジメントとプログラミングスキルが両方あるエンジニアの方が価値が高いですよね。

 

プログラミングスキルが無いとマネジメントにも少なからず支障が出ますし、緊急事態にも対応できないんです。

 

いちまり
いちまり
マネジメントができるからと言って天狗になっていたらいつか痛い目をみるよ!

 

システム開発に従事するエンジニアを名乗る以上、プログラミングスキルを持っていた方が、絶対にどこからでも重宝される人材になります。

プログラミングスキルが無いシステムエンジニアが取るべき行動

プログラミングスキルが無いシステムエンジニアが取るべき行動は、「プログラミングの勉強を始める」の1択ですね。

 

よめ
よめ
当たり前のことを言っているわね…。
いちまり
いちまり
でも、まず始めてみることが大事!

 

幸いにも現在はプログラミングを勉強するための学習サイトやスクールが豊富です。

何をはじめたら良いかわからない場合は、無料版もある「Progateプロゲート」を始めて見ると良いですよ。

 

いちまり
いちまり
有料版でも月額約1,000円と格安!

 

わたしがProgateで勉強してみた感想についてはこちらの記事でまとめていますので、参考にご覧ください。

https://life-care.site/progate_html_css_review

 

ただ、プログラミングスキルに自信が無いとはいえ、IT業界に従事するシステムエンジニアにとっては物足りないレベルかもしれません。

そんなときは、プログラミングスクールの活用がおすすめです。

プログラミングスクールの選び方はこちらの記事で解説していますので、参考にご覧ください。

https://life-care.site/programming_school_how_to_choose

 

プログラミングスクールは一月数万円以上の費用がかかり高額ですが、

短期集中でがっつり勉強すれば、最低限の経費で押さえられますし、間違いなく今後のキャリアプランにおいて役立つはず。

 

いちまり
いちまり
他のエンジニアと差をつけられるし、一生使えるスキルになるよ!

 

エンジニアとしての価値を高めるためにも、是非プログラミングの勉強を始めてみてくださいね。

【真実】SIerに入るとプログラミングできないは嘘!体験談を話します!|まとめ

本記事では「【真実】SIerに入るとプログラミングできないは嘘!スキルが無いSEがやばい4つの理由」について書きました。

SIerに勤めていても、プログラミングは経験できます

会社からはキャリアアップとしてマネジメントの道を進められることもありますが、技術のスペシャリストとして、プログラミングスキルを磨き続けるエンジニア人もいます。

プログラミングスキルを磨きたいなら、SIerでも技術の道に進むことは十分可能です。

ただし、会社による部分もあるのであらかじめ確認が必要ですね。

 

また、SIerに勤めているとはいえ、プログラミングスキルが無いシステムエンジニアはやばいです。

プログラミングスキルが無いエンジニアは、マネジメントにも支障が出ますし、突発的な不具合など緊急事態にも対応できないので、エンジニアとしての価値を下げます。

 

マネジメントの道に進むシステムエンジニアであっても、プログラミングスキルは重要なので、まずはプライベートでプログラミング学習の第一歩を踏み出してみましょう。