外注丸投げが過ぎると何のノウハウも身につかない問題


外注ばかりしていて大企業の社員が劣化しているという記事が昨日出ていました。

残業減らしで外注急増、大企業社員の劣化が止まらない

この記事の中では次のような具体例が出てきます。

  • プログラムを一度も書いたことのないSE。
  • 戦略作成はコンサルタント頼みの経営企画部員。
  • 文章をまったく書かない編集者。
  • 教育制度の企画運営を全部外注する教育担当者。
  • 代理店のインセンティブ(奨励金)プログラムを作るだけの営業本部員。

「プログラムを一度も書いたことのないSE」についてはこの業界の人間として痛いほど実感があります。エンジニアと名乗っていながら技術的なことが何もできない人の問題は度々話題に上がりますね。

他の例については自分の業界ではないので実感はありませんが、「プログラムを一度も書いたことのないSE」の例と同じくらい問題のある事例ということでしょう。

大手SI企業のエンジニアがプログラムを書けない理由

大手SI企業のエンジニアと名乗っている人達がプログラムを書けない理由ですが、これは改めて考えるまでもなく、業務でプログラムを書く機会がほとんどと言ってよいほどないからですね。ではなぜプログラムを書く機会がないかというと、開発の実作業は下請けに丸投げしてしまうからですね。

では大手SI企業の人達がダメな人達なのかというと、決してそんなことはありません。むしろ我々のような中小企業と比べればはるかに優秀な人材がそろっています。でも歳を重ねるごとに何もできない人も増えていきます。

私が接してきた大手SI企業では、新人の方だと意外と実用的な技術や知識を持っている人も多かったように思います。大手SI企業だと新人の研修制度が非常に充実していて、そこでみっちり育成されているのではないでしょうか。私の友人で大手SI企業に就職した人の話を聞いても、新人研修中にプログラミング研修を受ける機会は大手SI企業でも普通にあるようです。

でも残念ながらそういった優秀な方達が現場に出て実際に技術力を駆使して仕事をすることが大手SI企業の場合はほとんどなくなってしまいます。主な業務といえば顧客折衝、プロジェクト管理、外注管理といった業務が中心。バリバリとコーディングをすることなどまずありません。

長く経験を積んでもその経験は技術以外のところが中心。なので大手SI企業の場合だと経験年数の長い「エンジニア」ほど技術力がなく、技術的な話をしてもほとんど話が通じないようなことが起きてしまいます。

こうして大手SI企業ではプログラムを書けないエンジニアが量産されていくことになります。自分達がプログラムを書けないためか、プログラムを書けることに付加価値を認めずにバカにするような人達まで出てきてしまいます。

以上の通り、技術者として見た時には大手SI企業では新人が一番優秀です。後は経験を積めば積むほど顧客折衝、プロジェクト管理、外注管理のノウハウは蓄積していきますが、技術者としては劣化していきます。大手SI企業で技術者として成長できることはありません。

大手SI企業エンジニアとしての経歴

アクシアでは正社員、アルバイト、または新卒、中途問わず、会社ホームページから毎月10人前後求人応募の問い合わせがあります。その中には大手SI企業で長く経験を積んできた方からの応募もあります。

そうした方の経歴書は非常にきれいですし、経験してきたプロジェクトが列挙されている経歴書を見ると大変立派に見えます。しかし残念なことに面接してみるとそういった方達の多くはほとんど技術的なスキルは何も持っていないんですね。プロジェクトは多数経験してきていても、実際に積んできた経験は進捗管理や外注管理が中心。本人もそういうことに悩んで大手SI企業での地位を捨てて転職を決意されてるわけですが…。

大手SI企業でも、技術的なことは身につかずとも卓越したプロジェクト管理能力のある方はいらっしゃいますので、技術を身につけたいと考えているわけではないのであれば、大手SI企業への就職も全然アリだと思います。しかし技術を身につけていきたいと思っているのに大手SI企業に就職してしまうと、経験年数を重ねれば重ねるほどに厳しい状況に追い込まれていくかもしれません。

そして「プログラムを一度も書いたことのないSE」が量産されることになります。

SEなのに自宅にPC持ってない問題

昨日Twitterでこんな話題がありました。

普通に技術者としてやっている人にとっては、自宅でフレームワークいじってみたり色々試してみたいと思うのは当たり前のことです。そういうことに興味が持てなくなるようなら技術者としては終わってますよね。そういう人がいたら本当悪いこと言わないから今すぐパソコン買うか、技術者として引退するかをお勧めします。

採用活動していても未経験の方からの応募で「ずっと前からプログラミングに興味がありました!なおパソコンは持っていません!」という力強い話を聞くことが結構よくあります。最近はスマホやタブレットでほとんど事足りるようになってきてますから、パソコンを持たなくなっている人が増えていることはわかります。でもプログラミングに本当に興味がある人なら普通パソコンは買いますよね。

ですからSEなのに自宅にパソコンがないってやばいだろ!って最初は思ったのですが、ある重大な事実を忘れていました。

SEという職種にはプログラムを必要としないことが多々あるということを。

SEは必ずしも技術職というわけではないんですよね。忘れてました。だからSEと呼ばれる人達が自宅にパソコンを持っていなくても何の不思議もないわけですよ。

システムエンジニアという職種は「システム開発プロジェクトに関わるすべての人」くらいの広い意味で捉えねばなりません。そう考えるとSEの中には技術者もいれば、技術者ではない人もいると考えるのが自然ですね。

SEだからといってパソコンを持っているべきというのは誤りでした。SEでもパソコンを持っていなくても構いません。でも自分は技術者だと思っているならパソコンは持っているべきだと思います。

SI企業の本業って何ですか?

何を本業としているのかという問題は、システム開発の仕事に関わらず非常に重要な問題ですね。自分達は何を本業としていて、何のノウハウを蓄積していくのか。

当たり前ですけどノウハウというものは実際に業務を担当した人達に蓄積されていきます。ですので外注して丸投げした業務のノウハウが自社に蓄積されることはありません。外注する時はその業務のノウハウが自社に蓄積されるべきものかどうかはよく考えるべきではないかと思います。

数多くあるSI企業が自分達の本業を何であると考えているか知りませんが、中には何でもかんでも丸投げしてしまって何のノウハウも自社に蓄積していない会社も存在するように思います。単に発注元とのコネクションを持っていることだけが資産であり、そのコネクションを切られてしまったら後には何も残っていないみたいな。

別にプログラミング的なことを伴うことを本業とする必要性は必ずしもないと思いますし、開発は丸投げしてしまっていても自分たちの会社の本業は「システムの企画・設計」などとしていて、その部分で顧客に付加価値を提供できているのであればそれはそれで全然良いと思います。

でもシステム開発事業を本業と位置付けていながら、実際の開発業務は全て下請けにアウトソーシングしてしまい、開発ノウハウが何も蓄積されていない企業は普通にやばいですよね。

ましてや人売だけやってる中間搾取業者は本当にやばい。何のノウハウの蓄積もないし、不当に中間搾取しているだけ。全てカネのためだけです。社会の役に立ってない。少なくともこういう会社はシステム開発を本業とは言わないでいただきたいですね。

エンジニアはその会社でどんな経験を積めるか見極めるべき

システム開発の事業を行っていると謳っていても、実際にどんなことをやっているのかは会社によって全然違います。顧客折衝や進捗管理だけを行って開発の実作業は全て丸投げしてしまう会社もありますし、人売りだけしているようなとても「システム開発事業」を行っているとは言えないような会社まで様々です。

10年間進捗管理と外注管理だけしかやってこなかった人を雇うのはどうしても相当敷居が高くなってしまいます。10年間進捗管理や外注管理のノウハウを積み重ねてきた経験を評価してくれる会社がどれだけあるのかということはよく考えなければなりません。

その会社が実際のところ何を本業としていて、その会社で仕事をすると長い目で見てどんな経験を積めてどんなノウハウを身につけることができるのかということを考えずに就職してしまうことはとても危険だと思います。

今の時代、一つの会社に一生勤め続けるということの方が珍しくなってきているわけですから、いつか転職するかもしれないという可能性を考えて、その時に他の会社からも評価してもらえるような経験を積める会社を考えることは重要な事ではないでしょうか。

企業としては何を自社の本業として何を自社のノウハウとするかを考えるべきだし、エンジニアとしてもその会社でどんな経験を積めるかはしっかりと考えないとですね。そうしないと10年後に辛い思いをすることになるかもしれません。