たいていの日本の中小企業は、ITの活用レベルが高くありません。これは世間で言われているとおりと、わたしも感じています。ただし、例外にも思えるような中小企業が時々見つかります。なかには、会社のコアとなる基幹システムを自前で構築してしまったという中小企業も存在しています。
大企業が完全内製で基幹システムを構築、という例はほとんどないと思われますが、中小企業の場合、事業規模があまり大きくないことも手伝い、実は自分で作ろうと思えばできてしまうという側面があります。そうかといって社内にスキルの高い技術者がいないと当然不可能ですが、たまたま1人くらい「できる人」が社内にいると、その人が根気強く取り組んで構築を果たしてしまう、ということが起こるわけです。
うらやましい会社だ、と思うでしょうか。ベンダーに頼んで作ってもらうよりコストもかからなくて素晴らしい、と感じるでしょうか。わたしが見る限りでは、そうした会社は「経営者に問題がある」おかげで、大きなリスクを抱えていることが多いと考えています。
経営者が自ら手掛けてシステムを作ってしまった、というなら結構です。しかし、技術者が独力で作ってしまった、という状態は、経営者の情報システムに対する知識や理解の欠如、関与しようとする意欲の低さ、会社にとっての情報システムの位置づけの設計不足、等々の欠陥によって引き起こされた結果なのです。
そのとき、その会社の経営者は、何らコントロールができていません。言い換えれば、放任です。情報システムに対する知見がないがために、自分がコントロールしなければならないという発想さえも浮かばないのだろうと思います。それが、事業運営に大きなリスクを抱えることにつながります。
では、基幹システムが事業の根幹をなすクリティカルなシステムであることを十分に理解する経営者ならば、どのようなことを発想できることが求められるのでしょうか。
いくつもありますが、長くなりますので、そのうちの数点を以下に書き連ねてみたいと思います。「自分はこんなことを考えるに及ばない」と思われるなら、少なくとも社内のIT担当者が「作っちゃいました」と言い出してこないような業務環境にするよう努めるべきでしょう。
● 中小企業の自前開発は、たいていは特定の技術者が単独あるいは少人数で進め、達成します。そしてそのシステムの仕様を設計した技術者はまともに形式知化せず、その構築ノウハウは属人化します。それは、会社にとって大いなるリスクです。一刻も早く、システムに関するノウハウや詳細仕様をドキュメントとして完全に網羅し、保守を長く継続できるような組織と仕組みを整備することを考える必要があります。
特に、開発した技術者が高齢であるほど、その技術者が会社を去るまでの時間の制約が厳しくなります。そして、そういう技術者に限って、言葉や図式による表現やわかりやすい説明が上手くなかったりすることが往々にしてあります。システムの仕様や、細かい(けれど重要な)属人的ノウハウを引き継ぐ時間が限られる可能性を、十分念頭に入れる必要があります。
このとき、多くの経営者は、「若い技術者を採用して、開発したベテランの下に付けよう」ということくらいは思いつきますが、その程度ではまったく十分ではありません。必要なことは、「属人化から脱却すること」です。単に若手を採用すればよいという考えは、属人化した「人」に新たに属人化させる「人」を付けているだけのことです。属人化の継承では意味がありません。「組織で実行するにはどうすればよいか」を考える必要があります。
● 中小企業の基幹システムの自前開発は、その多くが10年近くかけて少人数の特定の技術者だけで実行されます。それほどの時間をかけて技術者に業務遂行させることの是非を、本来ならまず経営判断すべきです。
仮に是と判断したとしても、10年経たないと完成しないようなシステムで事業に役立つのか、その認識を経営者が示さない限り、技術者は好きな方法で、適当なスケジュール感で、システム開発を進めるでしょう。技術者の優先度と、経営者の優先度は、何のすり合わせもしなければまったく違ったものであるのが常です。技術者が優先するのは、技術の追求、技術の都合、技術の制約、です。経営者が自分から考えを示さない限り、彼らは経営の優先事項には何の関心もありません。逆の立場で、経営者にはIT技術者の発想がしづらいのと、同様のことです。
● 自前でシステムを開発できる技術者でも、態度には決して出しませんが、万能ではありません。プログラム開発には長けているがネットワーク設計は知識が低い、システム設計は得意だが情報セキュリティ設計には疎い、等々、だれでも得意分野と不得意分野はハッキリしているのがフツウです。IT分野に関する、会社としての知見の甘さを的確に検知して補強する努力は、ITを操る以上は必ず要求されると心得るべきです。
それを怠り、「うちの技術者は基幹システムが作れたのだから他のことも何でもできている」などと考えているなら、自社のシステムに知らずのうちに大きな欠陥を抱えるリスクがあります。そのリスクを軽減するには、まず経営者自身が、ITの技術分野のポートフォリオについて知ることです(技術に詳しくなれという意味ではありません)。そのうえで、自社では疎い技術分野を認識し、知見を持つ人材を(採用、外部支援両面で)採り入れ、組織を強化する努力をすることです。
● 自前でシステムを構築するにも知識が必要ですが、自前で作ったシステムを運用保守していくにも(別の)知識が必要である、と発想できるかどうかが問われます。構築出来たら終わり、使えていれば問題なし、ではありません。自前でシステムを運用保守するのに相応な知識体系を構築して、人材の育成を組織として継続実施することが求められます。
ましてITは常に進化し、またその進化は速く、既存の技術が陳腐化する可能性も高いです。ベンダーに依存していればベンダーが実行するようなことを、自前で情報システムを作った以上は自前で実行する義務がある、と心得るのが肝要です。
自社のエンジニアは、会社の費用で外部に修行に出すべきです。社内だけで教育しようとすれば、知識に偏りや淀みが起きやすいものです。まして人材に乏しい中小企業ならなおさらでしょう。外部で学ばせ、その知見を社内に持ち込ませ、社内の古い知識や偏った理解をアップデートさせるように図ります。または、外部の有識者を定期的に呼び寄せて、様々なテーマでレクチャーしてもらうことも考えられるでしょう。
優秀な人材に単に依存するなら、属人化するだけです。一流のシステム運営能力を持ちたければ、会社が「組織として」努力しなければなりません。それをリードするのは、経営者自身です。