SEとしてただ一つ必要なことに気づいたけど、今まで誰も教えてくれなかったので自分で書きます

ということで書きました。

speakerdeck.com

社内で話す目的で書きましたが、とくに守秘する必要のあるものでもないので、ここで先に公開します。 俺が書いたんやで、という意味も込めて。


キモい話

こういう内容を周りの人に話したりしてると、「意識高いなワロタw」って確実に思われてる思うんですが、私の意識が高いんじゃなくて、どうも今の瞬間しか見てない人が多すぎるというのが正解です。

システムエンジニアリングはサービス業です。第一次、第二次、と数えてかなり後の次元の産業です。

そのシステムを使用する影響は、その前の次元の産業、そしてそこで働く人たちに影響を与えています。 システムを運用するとどうなる、運用した企業はどうなる、その企業がもたらしていた効果はどうなる……。 言い換えると、「意識が高い」のではなく、より「現実を見ている」と言い換えられます。

過去に起きた現実、それをしてきた人の知識・経験を知ることで、同じ失敗を踏まないように、より発展させられるように勉強するのが基本です。 本を読んだり、ネットで調べ物をしたり、考察するということはそういうことです。

ツイッターでもボソッと言ってますが、

これが、たぶん今後の私の命題になってくるんじゃないかと思います。

歯車のように生きれば楽だとは思いますが、まぁやれるだけがんばっていきたいです。

あと、会社員なので、もっとお給料ほしいです。

真・なぜ誰もこう書いてくれないDependency Injection入門

書きました。

speakerdeck.com

主旨は無印版と同じです。

前回の記事は明らかに手抜きすぎだし、実装部分をわかり易くかみくだけてないので、ちゃんと自分で一から書き直しました。

口頭で発表する予定がないのでリハーサルとかしてませんが、実際やると15分ぐらいはなるのかな、と思っています。

口頭説明なしでもわかるように頑張って書いたつもりなので、拡散なりフィードバックしてもらえるととてもうれしいです。

なぜ誰もこう書いてくれないDI(Dependency Injection)

書きました。

speakerdeck.com

前回のDockerの時と同じように、DIもググれば解説サイトなんて腐るほど出てきますので、今更感もあります。 ですが、これまたDockerと同じように、肝をついたような解説がなかなか見つからないものです。

これいるなーと思いついてズバズバと書いたものなので、コードレベルの細かい解説とかありません。 途中できしださんの記事のリンクも出てきますが、これもハードル高いと思ったら、読み飛ばしても大丈夫です。

d.hatena.ne.jp

解説サイトを漁る前のハードル下げというか、「印象を把握する」というレベルの認識で読んでもらえればと思います。

ということでお茶濁し記事でした。

SIerはもう終わったと思っている人/SIerに残ってるが意義が見出せない人に聞いてほしいこと

TL;DR

  • SI業界は縮小するかもしれないが、自社で情シス抱えられない会社がある限り続く
  • 新しいシステムを作るだけでなく、過去の負債的システムを清算することもSIerの役割である
  • いまもう”System Integration”じゃないよね?なんか新しい名前考えようよ

日本のSI業界が佳境に来ているというのは、事実だと思います。

自動化文化、クラウドホスティング環境の充実、ドメイン駆動設計などにより、自社でシステムを管理するための環境は十分整っています。それに合わせて情シス不要論はビジネスとシステムの橋渡しのために撤回されてきており、米国に追随する形で自社のサービスは自社で拡充・運用保守するのが正しいという流れになりつつあります。 事実、私自身も情シスへの転職を考えたこともあります。

しかし、今も私はSIerに残って続けています。 それは、あるお客さんに携わっている時に聞いた言葉がまだ頭から離れないからです。

ある中小企業の話です。

金属を使った製造業をしている会社です。 ライン・ロットで大量生産するようなものではなく、手作業でカスタマイズ製品を作ることが多い会社さんです。

そこではVB4か5あたりでベンダーが社内システムを開発・導入しました。 そのシステムはVB6を経て、現在のVB.NETまで拡張工事とマイグレーションを続けてきました。 過去の設計書など皆無で、現場に合わせてプログラムレベルでつぎはぎ状態です。 ソースコード上に個人名・役職名が当然のようにベタ書きされています。

と、ここまで書いておいて、今回の本題はそのシステムの構造・見た目の問題ではありません。

うちの会社が保守を担当するようになってからこんなことがありました。

保守作業の中では、システムの不具合といっしょに現場から挙がって来た改善事項も管理して、実施検討から開始してシステムを改善しています。

先方の窓口担当者は、現場からスタートして長い間勤めていらっしゃる役員の方です。 優しい印象の方ですが、その会社で作っているものにとても誇りと情熱をもっている方です。

保守内容について定期的に意識合わせをする会の中で、現場からの要望事項のリストを見ていた時、先方の窓口の方がふと口にした言葉が忘れられません。

”うちがこれまでお客さんから信頼されきたのは、依頼されたカスタマイズ品に対して一つ一つ丁寧に仕様を調整し、一つ一つ丁寧に品質の高い金属製品を作るという姿勢と、それを継続して来たという実績だと思うんです。ですが最近は、上層部も現場も「あれもこれもシステムでなんとかしてよ」という言葉をよく聞きます。このままでいいんだろうか?と思うことがあるんです。”

(だいぶ意訳しています)


システムによってビジネスの価値が犠牲になっている。

そう感じました。

会社を作るということは、新たに実践したいこと・新たにもたらしたい価値があってのことのはずです(会社のビジネスだけでなく、会社内の環境・スタイルの新しさもその一つだと思いますが、今回は本筋ではないので触れません)。

上述の言葉は、システムを導入することによって、その「新しいもの」がシステムの存在によって変化ないしは妨げられている可能性を示唆しています(「新しいもの」と「変化ないしは妨げられているもの」の一致・不一致はこれも本筋ではありません)。

これはいわゆる「あるべき論はいらないから、とにかく現場に負担のかからないシステムにしろ」みたいな盲目的なものでなく、「やっぱりERPはカスタマイズしてなんぼや!」みたいな時代錯誤な意見を支持しているものでもありません。

あくまで、「今この瞬間から先に、SIer業のどのような行動・成果が将来に価値をもたらすのか」を考えるための題材です。

システムはただの仕事道具。しかし人間は道具に適応できて"しまう"。否応なく。

私はこれまでの仕事経験でそう感じています。

何が言いたいかというと「ビジネスの価値が落ちる、ただ楽になるだけの道具を導入しても、それを受け入れてしまう」ということが事実あるということです。

SIer”がなぜこの世に発生したか?今一度考えてみましょう。

冒頭にシステムを自社で管理する流れが主流になっている、ということを書きました。ですが、日本でもそれこそ日立・富士通などの大手のメーカーなんかはもともと自社で情シスもってシステム管理していますよね。

ということは冒頭の流れというのはなんでしょうか? 単純に「システムを管理するのに必要なコスト・パワーが少なくなってきて、より規模の小さい会社でも自社で管理できるようになってきた」ということです。

では、この流れが起きる前、情シスを抱えるだけのパワーのない会社は、どのようにしていたのでしょうか? 外注していたんです。 それがシステムインテグレータ、通称SIerです。

SIerってなに?

情シスを抱える・システムを開発・管理するだけのパワー・コストを持ち合わせていない会社に、システムを提供することです。

つまり、 「SIerのやるべきこと・考えるべきこと」=「情シスのやるべきこと・考えるべきこと」 です。

全ての会社が自社だけでシステムを管理できるようになるまで、SIerにはやるべきことがある。

ということです。

その作業は、新規にシステムを構築することだけではありません。

そのなかには、上で述べた保守している会社のように「すでにシステムをもっているが、そのシステムがビジネスを妨げていないか見直す」という行為も含まれます。

これも、今この瞬間から未来、多くの場合SIerが実施”しなければならない”ことです。 なぜならそのようなパターンに陥るのは、自社でシステムを管理するパワーを持っていない場合のほうが圧倒的に多いからです。

この仕事は”SI”なんでしょうか?

「今ココ」状態です。

すでに多くの会社において、日々の仕事の道具をシステムにインテグレーションするという段階は、すでに終了しているはずです。

また、上記のような、これからのSIerの仕事は「システムへのインテグレーション」でしょうか?

システムインテグレーションはいわば「道具の正規化」。これからは「道具の非正規化」をしなければならない。

と言い換えられると思います。

SIという言葉も、日本のIT界隈では印象がよくないので、何か新しい言葉にしたいですね。 「人間に考えて・行動してほしいことを促す・示唆するためのシステムを作る」みたいな。「システムをビジネスの裏方化する」みたいな。

“Behind-ization"? "Background-ization"? 英語得意な人よろしくお願いします。

SI業界は縮小はするかもしれませんが、まだやるべきことが残っています。

つらつらと由無し事を書いて来ましたが、そういうことです。

立つ鳥跡を濁さず、じゃないですが、SIを野ざらしでほっぽり出すのではなく、ちゃんと未練なく埋葬しましょうということです(違う)。

化けて出ますよ(合ってる)。

私もそれを考えていきます。


わしのSIer生活は、もうちょっとだけ続くんじゃ。


8/31 追記

japan.zdnet.com

「Solution Initiator」かっこいいですね。これにしましょう!