GoTheDistance

ござ先輩と言われています。(株) クオリティスタートという会社をやっています。

技術的老化というSIerの持病

トラバについての補足

先日の記事へのトラバありがとうございます。ブクマコメントじゃ長すぎなので、補足。本題についてはその次に書いてあるので、ご興味のない方は読み飛ばし願いますm(_ _)m

id:mkusunokさんのご指摘にあるような労働流動性の硬直化という問題は確かに無視できない側面ですが、*1技術者を解雇できるようになればこの業界がよくなるとは言えないと思います。この業界は医療業界と性質が似ている所があって、ヤブ医者をクビにできるようになれば医療業界が良くなるのかっていう話とあまり変わらない気がする。また、良い技術者と悪い技術者を統一的且つ網羅的に判断できるクライテリアを設ける必要もありそうだけど、それってITSSで出来ないんだっけみたいな話になりそうで混迷しそう。

このお話はビジネスモデルの変換があってから、つまりkmachuさんから頂いたブクマコメントにあったように「ダメエンジニアをかき集めて仕事を進めるスキーム」をどう変えるのかという議論を見据えつつ、SIerの人材マネジメントをどう考えるのか、端的には解雇の実現容易性をどこまで持てるのかを議論すべきだと思います。

ただ、そもそも人を切ることが日本の正社員雇用契約として無理なのよって話だとまた別ですね。

id:masayangさんのご指摘はおっしゃる通りで、他人にキンタマ捕まれているヤツがあるべき方向性に身動き取れるんだっけ、というのはユーザー企業全体の課題でしょう。ただ、日本は系列社会でもあるので、例えば新しく会社を作る時に系列内で新たなSIerモデルで会社を回してみる、っていう実験を行うことはアリだと思っていますし、親会社⇔子会社の関係ならおまんまを食わせて頂いているっていうのもあるので、親子の中でケンカするのは全然可能だと思います。そういった基盤の無い会社にとっては、それって相当覚悟がいる決断だけどわかってるんだっけ、というご指摘は全く同感。

mark-wadaさんのご指摘*2にある、特定領域に強みを発揮する専門会社群を形成するというのは、最終的な総合病院のようなものが出来るイメージを持ちました。内科、外科、眼科、耳鼻科・・・その単位でカテゴライズしてコラボレート出来る所は一緒にやりましょう、と。ただ、それが出来る顧客基盤を持っているSIerがどれだけあるのか。また、眼科と耳鼻科がどういうシナジーを形成でき得るのか、っていう議論もあるはずで。

コンセプトとしてはAgreeですが、まずは専門領域ってどういう単位で判断できるんでしたっけ、っていうのが大きな壁だと思います。またその辺は議論しましょう。

技術的老化現象

ここからが、このエントリの本題です。

id:higayasuoさんの最近のエントリがアツいことになっている。

あからさまにいうとさぁ。賢いスーツな奴らと、頭の固くてあわれで保守的なおやじの歴史だよ。

これは何でもそうなんだけど、人間は自分が理解できないことについては拡大解釈する傾向があります。虫眼鏡で一部分見ただけで全部分かったつもりになる。特にこの業界は一度覚えたスキルがあっという間に陳腐化してしまうので、余計に頭の固いおやぢが生まれてくるんだと思う。つまり、技術的に老化してしまう。で、正しい判断が下せなくなる。

正直な所SIerの中にいて思うのは、特にシステム構築という工程がもっとオートメーション化されない限り、絶対変わらない構図だと思う。良い悪いは別にして、システム構築という作業は前近代的でありカタコト機織機を動かしているのとあまり変わらない。高度な職人技であるが故に、分からない人には絶対分からない領域っていうのがどうしても生まれてしまう。輪島塗の伝統工芸品みたいなレベルならそれでも何の問題も無く、分かる人が分かればよいのであるでOKなのだけど、システムってのは社会インフラなんでそうもいかない。

技術なんて本質的なことを抑えておけば、最新のことは知らなくても問題ない。そういうおやじはまさしくおやじだ。技術の本質なんて誰もわからないよ。もし、本当に本質が理解できているなら、みんながこんなに苦しんでいるはずないじゃん。

このご指摘は相当アツい。確かに本質的なことが分かっていれば最新のことはあくまでその延長線上にあるんだから評価できるよね、って言う人はすごく多くいる。大抵40代〜50代の方。だけど、じゃあJavaの本質ってなんでしたっけって説明できる人はいない。やったことがないものについては、絶対評価できないんだから。

となると、技術的なライフサイクルをどういった見方で常にWatchすればいいんだっけというのがSIerにとっても大きな課題だし、今後どういう技術を担ぐ担がないという議論にもつながっていくと思う。

この老化現象はとめる事も出来ないので何らかの処方箋を考える必要があるんだけど、これをPDCA回すには絶対トップダウンでは不可能だと思う。現場のエンジニアでしか判断できない領域が必ずあって、彼らを巻き込んだうえで議論を重ねていかなければ同質の苦しみを常に生み続けることになる。

頭の固いおやぢがボトルネックになるのであれば、その存在をただ否定するのではなく、ボトルネックにならないで済む仕組みはどういうのがあるのか。その1つがSeasarのようなフレームワークによる実装面の品質担保による非本質的な苦労を取っ払うことであったり、現場のエンジニアを巻き込んだ技術評価委員会みたいなものを発足する、っていうのであったりするのではと思います。

追記

ポイントは駄目なエンジニアを切れないことが問題なのではなくて、ユーザー企業が必要とする技術は変わるのに、そこで機動的に技術者を入れ替えられないことが問題なんだけどな。

了解です。そういうことだったんですね。行間読めなかったです。

*1:タスクに人を割り当てるのではなく、人にタスクを割り当てているって感じ

*2:http://kamawada.com/~masanori/blog/2007/09/post_253.html

SQLを学習できるWebサービスを作りました。