「SIerではプログラミングできないと聞いたけど・・」
「プログラミングできないと困るのかな?」
SIerにはプログラミングを【やらない】【できない】SEが多数います。
しかし、プログラミングできないSEは高品質なシステム開発ができなくなります。プログラミングスキルは開発力の基礎だらからです。
本記事では、SIerでプログラミングできない理由・困る点・対応方法について説明します。
本記事の内容
- SIerでプログラミングができない理由
- SIerでプログラミングができないと困ること
- SIerでプログラミングができない場合の対策
SIerと業界構造
SIerとは、System Integratorの略で、システム開発・保守を行う企業のことを指します。上図の一次請SIerが仕事を請け負い、業務の一部を二次請に委託して、二次請はその中の業務の一部を三次請に委託すると言う形で多重下請構造で構成されています。
システム開発の工程は大きくは設計・開発・テストの3工程からなります。一次請が設計を行い、二次請が開発を行い、三次請がテストを行うと言う形です。
そのため、二次請以外はプログラミングの実務に携わることはありません。
一部のSierのSEはプログラミングができない理由
一部のSierでプログラミングの仕事ができない理由は大きく以下3点です。
中堅中小のSIerでは、プログラミングを自社で行うことはあります。しかし、大手や零細のSIerではプログラミングは行いません。
以下、それぞれについて説明します。
大手や零細規模のSIerではプログラミングは行わないので
SIer業界は良く、ゼネコン業界に例えられます。
大手SIerが設計や現場監督、中堅SIerがプログラミング、零細SIerがテストを行うと言った形のピラミッド構造ができています。
このような構造にあるため、大手Sierではプログラミングは行わず、下請の中堅SIerに委託します。そのために、大手・零細SIerにいるとプログラミングを行うことはありません。
大手SIerから見るとプログラミングは単価の低い仕事だから
大手SIerが自社でプログラミングを行わずに下請けの中小Sierに委託する理由は、プログラミングは単価の低い仕事だからです。
SIer業界では仕事内容によって単価が異なりますが、プロジェクトマネージャーやプロジェクトリーダーと言ったプロジェクト全体の管理業務と比較するとプログラミングは単価の低い仕事です。
そのため、大手SIerでは自社でプログラミングをやりたがりません。
大手SIerではマネジメントを含めた顧客調整に価値があると考えられているから
プログラミングが単価の低い仕事であることに加え、大手SIerでは顧客接点での調整業務(要件定義など)に価値があると考えています。
逆に基本設計・詳細設計が決まるとルーチンワークとなるプログラミング業務は価値が低いと考えています。
単価が低く、価値が低いと考えているため、自社ではなく、下請けの中小のSIerに委託するのです。
SIerのSEがプログラミングできないと困ること
SIerでSEがプログラミングできないと困ることは以下の通りです。
要するに開発するシステムの品質を担保できなくなるのです。
品質担保と言う意味では、テストをしっかりと行えばよいと言う考え方もあります。しかし、ソースコードの品質が悪いとテストだけではカバーし切れなくなります。
特に開発改修を行っていくと、修正箇所に一見無関係に思える部分からエラーが発生するようになります。
ソースコードは保守性・可読性が大切ですが、そう言ったことを意識せずに開発すると、誰も保守・管理できないようなシステムになることが良くあるのです。
以下3つのポイントについて詳しく説明していきます。
高品質な要件定義・設計ができない
プログラミングスキルがないSEが要件定義・設計すると、開発段階で実装不能になることがあります。
その結果、最悪の場合、設計や一部要件の見直しが必要になります。
プログラミングスキルのあるSEが要件定義・設計を行うと、開発イメージを持ちながら行います。そのため、開発段階に入って設計や一部要件の見直しと言った手戻りが発生することはありません。
高品質な要件定義・設計とは顧客の意図を組んだうえで、開発を見据え、実現可能性を加味して行うものです。
そのためにはプログラミングスキルは必須と言えます。
開発・納品されたソースコードの品質を評価できない
プログラミングスキルのあるSEは、開発をプログラマーに丸投げしません。
折を見てソースレビューを行い、ソースコードの可読性・保守性を評価してフィードバックを行います。そうすることで、システムの品質を担保するわけです。
プログラミングスキルないSEは開発をプログラマーに丸投げするため、成果物の品質を担保することができません。
障害対応ができない
プログラミングスキルのあるSEはアプリケーション障害が起きた際に、事象から当たり付けを行い、該当箇所のソースコードを即座に確認します。
そのため、障害対応が迅速で的確です。
一方、プログラミングスキルのないSEは事象から当たり付けを行うことはできますが、ソースコードを読めないため、プログラマーに調査依頼を行います。
そのため、原因を突き詰めるのにも解決するのにも時間が掛かります。
プログラミングができないSEのキャリア上の問題点
プログラミングができないSEはキャリア上、抱える問題点は以下の通りです。
それぞれについて、以下説明します。
高品質なシステム構築ができない
全くプログラミングスキルがないSEは高品質なシステムを構築できません。
なぜなら、プログラミング実装を念頭に置いて行う詳細設計ができないためです。
プログラミングスキルがないSEが作る低品質なシステムが問題となっています。そのため、最近は入社5年程度はプログラミング実務を経験させるSIerも増えています。
技術上、詳細な内容について顧客の相談に乗れない
アプリケーションの不具合の解決には仕様をプログラミング実装レベルで詳細に確認しなければなりません。
しかし、プログラミングスキルがないと顧客から相談されても自身では回答できません。
質問を持ち帰って、下請のSierの技術者に問い合わせることになります。こう言ったSEは顧客の信頼を得ることもできません。
プログラミングスキルが必要なWeb系の会社などには転職しづらい
人気のWeb系(自社開発)に転職したいと考えても、プログラミング実装スキルがなければ転職できません。
SIerと異なり、Web系(自社開発)は自社でプログラミング開発を行っていることが多いためです。
なお、Web系(自社開発)の是非については以下の記事を参考にして下さい。
プログラミングができるSIerの探し方
求人の探し方には大きく以下の2通りがあります。
- 求人サイトで自分で探す
- 転職エージェントから紹介を受ける
このうち、プログラミングができるSIerを見つけるには、「転職エージェントから紹介を受ける」をおすすめします。
求人を見るだけでは、プログラミングを行うのか、外注するのかは判断できません。
転職エージェントは企業の実務を把握しています。プログラミングを実際に行うのかどうかを踏まえた求人提案を行ってくれます。
リクルートの調査によると、転職活動の成功者は平均3.4の転職エージェントに登録していました。
おすすめの転職エージェントのおすすめ3点セットは以下の通りです。
1位:doda
【公式】https://doda.jp/
筆者の3年に渡る転職活動を支えてくれた面倒見の良い業界No2の転職エージェント
2位:リクルートエージェント
【公式】https://www.r-agent.com/
業界最大級の非公開求人数(27万件弱)を誇る業界No1の転職エージェント
3位:ワークポート
【公式】https://www.workport.co.jp/
未経験者のITエンジニア転職支援に強い代表的な転職エージェント