ITエンジニアに求められる最低限の素質とは

やあやあ。

夏だから色々ぼやいてみたいと思うよ。

 

ところで、ITエンジニアに求められる最低限の素質って、何だと思いますか?

色々あると思います。よく聞くものとしては

  • コードを書く技術
  • 仕様書を書く技術
  • 算盤をはじく技術
  • 専門特化した知識
  • コミュニケーション力

この辺りですかね。

さて、本当にこれらがITエンジニアに本当に必要な最低限の素質となりえるのでしょうか?

 

コードを書く技術

IT技術者としてお飯<オマンマ>にありつくためには何かしらを作って対価にお金を貰うか、作った何かでお金を生み出す必要がありますね。

となると、コードを書く事で何かを生み出す必要があるのは間違いありません。

かと言って、世のIT技術者が皆コードを書いてお飯にありついているかというと、そうでもありません。

IT業界で悪の代名詞としてよく使われるSIerと言う世界では、コードが書けなくてもプロダクトに携わって大金を得ている人種が少なからずいます。

彼らをIT「技術者」と言うべきかどうか、そもそもそういうお金儲けのスタイルがどうかと言う話もありますが、事実として、コードを書く「技術」がなくても生きていく方法はあるようです。

必要とされるのは「コードを書く『手段』」のようですね。

ですので、一旦最低限の素質としては保留しておきましょう。

 

仕様書を書く技術

コードが書けない彼らの内、その一部は「仕様書」なるものを書いてお飯にありついているようです。この仕様書を元に、コードが書ける人に理想の実現を代行して貰おうという仕組みのようです。では、この仕様書を書く技術があれば最低限の素質を満たしていると言えるのでしょうか?

所で、みなさんはデスマーチと言う単語をご存知でしょうか。デスマーチとは、破綻したプロジェクトの中でメンバの健康や私生活を無視して、命のある限り過酷な労働を強いる状況を指します。

この地獄の所業が起こりうる要因は沢山ありますが、その内の一つとして、「方向性が確定されておらずフラフラとした質の低い仕様書で強引にプロジェクトを進める」と言うものがあります。

この低品質の仕様書が生まれる更なる原因は、仕様書を書く技術に乏しいと言う事では説明できないことがママにあります。よくある話としては

  • お客さんがコロコロと要望を変える
  • お客さん自身が望んでいるものが分かっていない
  • クリエイティブと言う単語を免罪符に行われる無慈悲な仕様変更
  • 政治的な要因で結論ありきで仕様が決まる

まあ、この辺りでしょうか。これらは仕様書を書く以前の問題ですので、仕様書を書く技術だけでは、安定してお飯にありつけないようです。

ですので、こちらも一旦保留としましょう。

 

算盤をはじく技術

コードが書けない彼らの内、「仕様書」も書かずにお飯にありついている人もいます。それは、算盤をはじいている人です。つまり、お財布を握っている人ですね。

プロジェクトの中では、誰かに働いて貰う為には、それ相応のおちんぎんを用意しないといけません。SIerの世界では、それを「人月」という単位で扱う事が多いです。

 

とある要件を受託し、そのプロダクトを納品する為に、4人で6ヵ月掛かるとしましょう。すると、このプロダクトは 4 x 6 = 24人月必要な案件であると表現されます。

仮に、1人月のランニングコストが社内で70万掛かるとしましょう。これを粗利30%と仮定して、100万/人月で契約すると、24人月で2400万円の案件となります。

 

こういうことを考えて、お金の出入りを管理する人も、ITエンジニアとしてご飯を食べているわけですね。

 

さて、先ほどの例題に戻りましょう。

この2400万の案件で現時点では粗利が30%なので720万なわけですが、良くある話としては、利益を720万ではなく1000万以上に何とかしろと言われることがママにあるわけですね。ここで算盤をはじく人は以下のようなことを考えます。

 

算盤をはじく人「今の予算はこうだ」

 4(人) x 6(ヵ月) = 24(人月)

 24(人月) x 100万 = 2400万

算盤をはじく人「で、以下を達成したい」

 2400万から1000万以上の利益 => 実働1400万でやりくりすれば良い

算盤をはじく人「予算から考え直そう……」

 実働1400万 => 1400万 / 70万 => 20人月

算盤をはじく人「20人月で回せば何とかなる!」

 5(人) x 4(ヵ月) = 20 (人月)

 4ヵ月あれば、土日全部使えば+1月分くらい時間は生まれる

 残業代はかかるが、4人月浮くからそれを更に別案件に売ればいい

算盤をはじく人「ふはははは、完璧じゃないか!」

 

まあ、この後どうなるのかはお察しですね。

このような事ばかりしていると、実際に手を動かしてくれる人はその場を去っていきます。このような焼き畑農業ばかりしていくと最後は自分にも火を放つことになるので、安定してお飯にありつけないですね。

ですので、こちらも一旦保留としましょう。

 

専門特化した知識

「我々には、今まで培ってきた知識・経験がある」

よく聞くワードです。つまり、今までの案件に特化していると言う事ですね。

さて、将来の案件もまた、過去の実績でどうにかなるのでしょうか。

いや、確かに同じような案件は続くかもしれないのでそれらに関しては太刀打ちできるでしょうが、それ以外の依頼では役に立たなさそうですね。

 

もう少し具体的な専門特化を考えてみましょう。

例えば「金融系システムに特化した知識」があったとして、それが売りだと言っている集団に「スマートフォンを使った新しい案件」が飛び込んでくるでしょうか?

多分飛び込んでこないでしょうね。

 

なら、「スマートフォンを使ったソリューションに特化した知識」があると豪語する集団があったとして、将来生まれてくるであろう全く異なる異質な要件が、彼らの元に降り注いでくるかと言うと、きっとその時には回ってこないでしょうね。

 

「我々は○○に特化しています。これ以外は認めません」という生き方はロックですし、切れ味の良い刃物になるのでしょうが、その刀だけで戦い続ける事は出来ません。

ですので、こちらも一旦保留としましょう。

 

コミュニケーション力

新卒採用市場で最も重視されているという噂の能力ですね。

この謎の力、正体は「自分の意見や気持ちを第三者に伝える力」と定義されています。

はて、面接で自己PR出来てる時点である一定水準以上の能力があるような気がしますが、これだけで本当にお飯にありつけるのでしょうか。

実に謎です。無いよりはあった方が良いですが、別に胸張って威張るような技術ではないんでしょうね。となると、こちらも一旦保留としましょう。

 

本当に必要な素質って何?

なんだろうね。

ここからは私の解釈ですが、ITエンジニアに必要な素質は以下のようなものだと思っています。

  • 怠惰
  • 短気
  • 他人に教えを乞う能力
  • 変わり続ける能力

 

怠惰

「怠惰」は原動力です。ITエンジニアは怠惰であるべきです。

楽をする為に苦労を厭わない奇人であるべきです。

その苦労の末に楽を達成し怠惰を実現した時に快楽を覚える変態であると、尚良いです。

 

短気

「短気」は柔軟性です。ITエンジニアは一つの事だけに囚われず、ダメだと思ったら別のアプローチからも攻めるべきです。

鳴かぬ鳥を鳴くまで待つのはITエンジニアではありません。代わりに鳴くか別のモノに鳴かせるくらいの気変わりの早さがあるべきです。

 

他人に教えを乞う能力

出来ないのであれば、出来る人に頭を下げて教えを乞う。

コミュニケーション力とか言ってる人が真に求めているのはきっとこっち。

「出来ない自分」と向き合って、「教えて下さい」と言える人は、きっと強い。

その本質は「貪欲」。知る為なら、「出来ない自分」と向き合う「覚悟」がそこにはある。

 

変わり続ける能力

最初に挙げた5つの技術や能力たちは、一昔前にあちこちで見た条件でした。

でも、実際にはそれでは上手くいかないことが分かっている。

巷でよく見る、「将来なくなる職業ランキング」に名を連ねる「ITエンジニア」という仕事の在り方は、変わる事を拒否し続けた将来の姿であるともいえる。

実際、部分的にITエンジニアの仕事はなくなりつつある。

その一方で、新しい領域のITエンジニアの仕事が生まれつつある。

ITと言う領域は、あらゆる領域と共に歩み、変化し続けていく。

その変化を恐れず、常に変わり続ける事が出来れば、お飯にありつけ続ける事は出来ると思う。

 

また、これらの私が考える素質は、IT業界に限定された話ではないと思っている。

きっと、何処で働くにしても、これらは必要な事だと、私は考える。