わたしは1990年に繊維・化学系のメーカーに就職しました。そして、配属先はコンピュータ部門でした。
当時はバブル絶頂期、わたしは多くの同期がいました。
コンピュータ部門の職場で働く人のうち、半分は社員のエンジニアでした。そして、もう半分は外部の業者から派遣されたエンジニアが常駐してました。
外部から来てるエンジニアには古参組もいました。古参組は、誰よりもわたしが入った会社の情報システムに精通している感じがしました。
社員エンジニアと外部エンジニアの役割分担は、比較的明確に分かれてました。
社員エンジニアは、情報システムの利用者(経理や営業の社員など)との会話を通じて、システムの改善要望をラフなスケッチとして仕様書に描いてました。
外部エンジニアは、ラフなスケッチを読み取り、それを設計書に落とし込み、Cobolでプログラム開発をしてました。
ただ、わたしは社員ですが、新入社員教育の一環としてプログラム開発をしてました。ですので、わたしにとってのプログラムの先生は先輩社員ではなく、外部から派遣されたエンジニアでした。
社員エンジニアと外部エンジニアは定期的なミーティングを行いました。社員エンジニアは、外部エンジニアの進捗を管理してました。新人のわたしは進捗会議の議事録をとってました。
日常のコンピュータ部門の仕事の風景はこんな感じでした。
ただ、システムを刷新するプロジェクトが発足した場合は、普段常駐している外部エンジニアを頼りにするのではなく、刷新対象となるシステムに精通した業者を選定しました。
たとえば、わたしのいた会社は、IBMのメインフレームを使って基幹システムを稼働させていたのですが、そのなかで、食品の生産管理領域を同じ IBMのオフコン(AS/400)に移植し、P-Packというパッケージを導入するプロジェクトがありました。P-Packは、RPGというプログラム言語で開発されてました。
このプロジェクトをまとめると、こうなります。
- ハードウエア:IBMのメインフレーム→IBMのオフコン
- プログラム言語:Cobol→RPG
- 開発手法:スクラッチ開発→パッケージ導入
と、なります。
外部から派遣されたエンジニアは、古いハード、言語、開発手法に精通してますが、新しい環境には経験がありません。ですので、システムを刷新する場合は、新しい環境に精通したエンジニアのスキルが必要になります。
業者は、SierであるIBMより紹介を受けたソフトウエアの開発会社が担いました。
選定された業者は打合せを除き、わたしの職場に来ることはありません。開発業務は業者のなかで行ってました。わたしは社員エンジニアとして、選定業者のエンジニアが開発(パッケージのカスタマイズ)するのに必要となる成果物(要件定義書)を書き起こしました。
ITエンジニアの働き方は、わたしがエンジニアになってから、30年たったいまも基本的には同じ構造です。
- システムの利用企業で働く社内エンジニア
- 利用企業からの発注を受け、自社で開発をする請負エンジニア
- システムの利用企業や請負会社に常駐するSES(システムエンジニアリングサービス)エンジニア
このようにひとくちに、ITエンジニアといっても、その働き方は異なります。ただ、学生時代に意外とこの認識を持たないまま、ITエンジニアになる人が多いと感じてます。学生は自分のなかで、ITエンジニアの働き方をイメージして、ITの仕事を得るのですが、学生時代にイメージしたことと、現実でギャップが生まれることがあります。それは、この構造の認識がないことが原因になることがあります。
ただ、30年まえのITエンジニアの働く構造といまとを比較すると、変わったと思うところもあります。
端的には、システムの利用企業や請負企業でのITエンジニアの新規採用は、抑制的な感じがするのに対して、SES企業の採用は積極的ということです。いわば、ITエンジニアを志す学生を育成する場をSES企業が担っていると思うのです。
会社の寿命は30年と言われます。
ただ、経営者は30年で会社を終えたいとは思わないでしょう。100年先も続く永続的な会社になりたいと思うはずです。
そうすると、リスクを減らして経営を合理化することを考えます。
情報システムの利用企業にとってのコアは、自社の商品やサービスの市場価値を高めることです。いまはモノが売れないと言われてます。売上アップに直結するのは、営業力やマーケティングの強化です。情報システムはそれを支えるツールですがあくまで裏方です。経営者は情報システムの運用を担う、社内システムのエンジニアを正社員として採用するより、アウトソーシングした方がいいと考えているのでしょう。
システムの請負企業にとっての生命線は技術力です。その意味では、優秀なエンジニアの確保は至上命題です。ただ、技術のトレンドは刻々と変化してます。プログラム言語を例にしても、いまは Pythonなどの第四世代が中心です。更にローコードや、ノーコードと言われるなか、プログラミング力が必ずしもシステム開発に要求されるスキルではなくなってます。そのため、Sierを頂点とする請負企業の役割は、開発力からお役様への提案力へと変わってます。開発を担うエンジニアは、お客様のニーズに合わせたエンジニアを外部から調達する方がメリットがあると考えているようです。
ITは紛れもなく成長産業です。しかし、システムを利用する企業も、請負開発をする企業も、自社の正社員としてエンジニアを積極採用することには、消極的です。それが、エンジニアを派遣するSES企業の採用強化につながっていると思います。