見出し画像

システム業界の仕組み 考察

ここでは、システム開発における業界の仕組みについて考察していきます。
この記事を読むとシステム業界の仕組みが理解でき、IT業界に就職を考えている学生や転職者が何に気を付けなければならないかが理解できます。

システム業界の仕組みは分かりづらい。
ユーザー、システム開発会社、技術者の三者から分析していきます。

尚、対象はユーザー企業のシステムを開発するケースとします。
自社サービス開発、インフラ業界等はここでは当てはまりません。

この記事を是非読んで頂きたいと心から願う方は以下の通りです。

この記事を是非読んで頂きたい方
・IT業界に就職を考えている学生、転職者
・IT業界に入って数年の若手エンジニア
・IT会社選びに失敗したと入社してから感じた人
※主に技術者向けに記載しますが、発注側が読んでも参考になると思います

IT業界を熟知している方は、この記事の内容は十分ご存じだと思います。
この記事を読む時間がもったいないと思います。この記事を読む必要がない方は以下の通りです。

この記事を読まなくてよい方
・IT業界に興味がなく、システム開発を依頼することもない
・自社サービス開発、ゲーム開発、インフラ業界に関わっている
・IT会社の上層部にいて既に技術者育成と成長に邁進している
・社員として現在のIT会社に満足している
・IT業界に長くいて特に疑問を感じない

編集記録
2020/10 大幅に内容を変更しました

自己紹介をします。
私はこのIT業界20年。
プログラマ、エンジニア、プロジェクトエンジニアと経験を積みました。
20代にブラック企業に在籍した経験があります。
また30代には月に450h稼働(残業約300時間!)した経験を持ちます。
つらかった時期もありますが、IT業界を選んで心から良かったと思います。

私は学者ではないので、論述的なことは言いません。
しかし、システム開発にはどっぷり長く経験しています。
苦労もした分、IT業界の現実を見てきました。

システム開発では様々な業種や職種の人たちと関わることができます。システムを導入してユーザーさんに感謝もされます。
IT業界には果てしない未来があります。
技術者は知識・経験を得れば年齢に関係なく活躍することができます。

この記事の結論にもなりますが、あなたがシステムを発注する側、または技術者を志す方であれば、会社選びは慎重に。
IT業界は複雑で外からでは分かりづらい。自分に合った会社を選ばないと遠回りをしてしまいます。

なお、学生の方などIT業界の経験、知識がない方は先に以下の連載記事を見ていただくことをお勧めします。

ここから本文に入ります。

はじめに

システム開発には、商流というものが存在します。
システム開発を発注する企業(以下、ユーザーという)は、一次請け(元請けとも言う)会社にシステム開発を委託します。システム規模にもよりますが、多くの場合、一次請け会社は二次請け会社に再委託します。大規模システムになると三次、四次・・・と委託されていきます。
これを商流と呼びます。

「商流がシステム業界の悪だ」などと言っているサイトを見かけます。
しかしそれは間違っています。
商流自体は悪い仕組みではありません。
商流とは流通のことでありメリットは多々あります。

確かにこの商慣行が悪いことを引き起こす場合があります。
そこはこの記事で指摘していきます。

以下では、まずIT業界の背景に触れます。
次に商流によるメリデメに触れ、誰が得をして損をしているのかを見ていき
最後に私の考察を述べていきます。

IT業界の背景

システム開発には様々な技術が必要です。
プラットフォームも多岐にわたり、プログラム言語も使い分けが必要。
 PC、iOS、android、AWS、GCP、Java、C#、Python・・・
そして様々な設計・開発手法、仕組みがあります。
 DX、IoT、AI、クラウド、DevOps、アジャイル開発・・・
さらに斬新なアプリやサービスが提供され続けています
 セールスフォース、Uber、Google、電子決済・・・

いくら大手SIer(SIerの説明はシステム業界の仕組みにて)といえども一社で全てのシステムを開発することはできない状況となりました。
(大昔は一社体制でも開発することができました)

また、大規模開発も一社では引き受けられません。
例をあげると、この間リリースしたみずほ銀行の勘定系システムの開発予算は4500億円!とも言われています。
4500億円という金額は、スカイツリー建設費の7本分!!にもなると、ある雑誌で見たことがあります。
多くのシステム開発会社の手が必要であり、再委託(商流)が必要となります。

また上記で述べた様々な技術や、大規模な開発を、システム未経験のユーザー企業が管理するのは無理です。
多くの会社、技術者を管理していくために、SIerの管理が必要となります。

このような背景がIT業界にはあります。

それでは次に商流のメリデメを見ていきましょう。

商流によるメリット

ユーザー、システム開発会社、技術者の三者から商流によるメリットを見ていきましょう。

< ユーザーのメリット >
・大規模なシステムを委託することができる
・様々な技術を組み合わせたシステムを得ることができる
・多くの技術者を集めることで短納期となる

背景で述べたように、複数社に委託することによって、数(技術者数)と質(サービス)を確保することができます。

多くの技術者を集めることで一斉に開発することができ、開発期間を短縮できる可能性があります。(できない場合もあります)
競合と差別化するには、いかに市場に早くリリースできるか。これは重要です。

< システム開発会社のメリット >
(一次請け企業)
・多くの技術者を集め大規模開発が可能となる
・様々な技術・サービスを保有する企業と連携できる

この2点は「IT業界の背景」で述べたとおりです。

(二次請け以下の企業)
・自社では請けられないシステム開発を受注できる
・自社の得意とする技術だけに特化できる

全てのシステム開発会社が一次請けできるわけではありません。
二次、三次請け会社から見ると、商流は必要であり、複数請けの商流がなくなれば明日から困ってしまう。

また、ある技術やサービスにこだわって仕事をしている企業があります。
その技術・サービスだけでユーザーの要望する全てに答えることは難しいため、分業は必要となります。

< 技術者としてのメリット >
・特定の企業に属さなくても様々な仕事をみつけられる
・自分の得意とする技術だけに特化できる

一次請けだけではなく、N次請けの企業、ある技術に特化した企業、いずれに属しても開発ができます。

また、企業と同じように、自分の得意とする技術の仕事だけを見つけ開発することができます。

ここでは企業に属する技術者を想定していますが、フリーエンジニアも同様なことが言えます。

まとめると、流通により様々な会社や技術者に仕事がいきわたります。
技術者不足がこれだけ叫ばれていますから、これは大きなメリットです。
2030年には79万人の技術者が不足するという考えもあります。
(平成28年 経済産業省)
また、多岐にわたる技術・サービスが必要となりますから、1社単独では難しい。

以上がシステム業界の仕組みである商流のメリットです。

次にデメリットも見てみましょう。

商流によるデメリット

デメリットもユーザー、システム開発会社、技術者の三者から見ていきます。

< ユーザーのデメリット >
・コスト増につながる
・品質が低下しやすい

例を挙げて説明します。
ユーザーがシステム開発をA社に委託し
A社→B社→C社に再委託をして、C社の技術者が稼働する場合。
以下のケースが考えられます。
ユーザー→A社:技術者一人に120万支払い
A社→B社:80万、B社→C社:60万、といったこともあります。
ユーザーから見ると、コスト高と考えられます。
(ユーザーがC社の技術者と知り合えた場合ですが)

品質低下については、一概には言えませんが
上の例でいうと、A社の品質をC社の技術者が担保できない場合、品質の低下が危惧されます。

< システム開発会社のデメリット >
(二次請け以下の企業)
・商流の間の会社が(不必要)に取られてしまう場合がある
・ユーザーではなく、上位会社の意向を優先しなければならない

上記の例でいうと、C社から見れば、A社もB社も不要といえるかもしれません。

また、C社の技術者はユーザーのシステムを開発することになります。
上記の例でいうとA社がマネージメントをすることが多く、時にユーザーの意向よりA社の意向を優先させなければならない場面もあります。
例えば、A社の都合で中間納品を迫られ、全体最適から考えるとムダなコストや期間が必要になる、などがあります。

< 技術者としてのデメリット >
・所属会社の売上が少ないため給与も上がらない

こちらも上の例で理解いただけると思います。
フリーエンジニアも同様になります。

システム開発会社の実情

デメリットを見ると、全ての会社が一次請けできれば問題ないように思えます。しかしそう簡単にはいきません。

システム開発会社や技術者が多くなれば、それだけ管理も大変になる。
ユーザーが自社に合うシステム開発会社を探そうにも手段がない。
そういった観点ではマネージメントできる会社が必要となります。
マネージメントにもテクニックが必要です。

また、全てのシステム開発会社が一次請けを希望するわけではありません。
一次請けをするには、①顧客に自分たちを知ってもらう営業力、②技術・コンプラなど社員の育成、③プロジェクトで問題が起こった際にカバーする企業の体力、などが必要となります。

また、全ての技術者が大手SIerに入社できませんし、入社したいわけでもありません。中規模企業で早期から活躍したい、ベンチャーで技術に特化していきたいという希望の技術者もいます。

最近流行りのフリーエンジニアも、個人で活動していく以上、誰かがマネージメントする必要があるでしょう。

ここが問題!誰が得をし誰が損をしているのか

では、何が問題なのか?

このIT業界には、悪徳な企業がある。
しかも残念ながらその数は多い。

他社の技術者を右から左、利益だけ取り続ける会社。
自社の技術者の育成を全く考えない会社。
問題が起きたら責任を取るわけでもなく、さっさと逃げ出す会社。

そういったIT会社とは名ばかりの人材紹介会社(紹介すればまだよい)を、私は目の当たりにしてきた。

こういった会社に間違って入社してしまう技術者が不幸。
その技術者は自社の先輩もいないプロジェクトの中で、ろくに技術を教えてもらえるわけでもない。成長もない。

技術者目線で見れば”百害あって一利なし”。

そういう会社はこの世からなくなればよい。

本気でそう思います。

まとめ

現在、ネットを通じて案件やエンジニアを紹介しあうサイトも多く見かけるようになりました。
小規模な案件であればそれもよいかもしれません。

中規模以上のシステム開発などは上記で述べたように、多商流(二次請け以下の商流)が必要な側面もあります。

しかし、不要なシステム開発会社も実在します。
そういった会社は市場から締め出されるように願うばかりです。

私はコメンテーターではありません。
この業界が変わってほしいとは思いますが、どのように変えたらよいかは正直分からない。
私の会社ではユーザーから一次請けをして、技術者を育成する制度を充実させ、責任を持った仕事をする。
それが私のするべきことだと思っています。

これから技術者を目指す学生や転職者は、くれぐれもおかしな会社につかまることのないように。会社選びには十分注意してください

そのためにアドバイスがあります。
IT業界であなたは何をしたいのでしょうか?
プログラマーとして活躍したいのか、エンジニアとしてユーザーとコミュニケーションをとりながらシステム設計をしたいのか?
またはプロジェクトマネージャーとして責任ある仕事をしたいのか?

会社選びのためにも、あなたは何をこのIT業界でしたいのか?
まずは、それぞれの役割を理解することからはじめましょう。

この記事を最後まで読んで頂いてありがとうございます!
是非、"ハートマーク”(いいね)を押してください。
(noteユーザーでなくても"ハートマーク”は押せます)
執筆の励みになります!
コメントもお待ちしております。

それでは。

この記事が気に入ったらサポートをしてみませんか?