ITの実態

ITコンサルタントはなぜプログラミングができないのか?

ITコンサルタントってすごいよね…?

先生、俺強いよね…
でも、俺だけ強くてもダメらしいよ

とは呪術廻戦の懐玉・玉折編での五条悟のセリフですが、おそらくITコンサルタントの方もこう思っているのはないでしょうか?

ITコンサルの人はすごいです(小並感)
しがないシステムエンジニアの私から見てても、頭の回転が速かったり、新しい角度からの提案をしたり、効率的に作業を進める方針を出してくれたりなどなど…🙌

でも、世間一般(というかIT業界内)では、ITコンサルタントへの評価は良いものばかりではありませんし、むしろ否定的な声も多いです…😓

この記事では、そんなITコンサルタントについて、私たちエンジニア側が抱いている思いを紹介していきたいと思います!

なぜITコンサルは嫌われるか


嫌われる理由の多くが、ITコンサルタントはプログラミングができないことに起因すると考えています。

あいつら無茶ばっか言いやがって!

私たち、SEからするとこの言葉なんです。
もちろん、ITコンサルタントの中には、プログラミングの実務経験があり、その上でエンジニア側と寄り添って提案や調整を行ってくれる人もいると思います。

ですが、多くのITコンサルタントは、プログラミングのことなんて知ったこっちゃありません🤦‍♂️
その結果、「工数」と「納期」を中心とした提案が多くなってしまい、エンジニアから嫌われてしまうのです。

例えば、システムの要件で「A」となる処理を「AとB」の2つに分けて欲しいと言われたとします。
もちろん、それが本当に最後の最後だけ変更すれば終わるような簡単な処理の場合もあります。
ですが、システムの1つの分岐処理を増やすだけの対応だとしても、その分岐処理に至るまでの呼び出しの変更はないか、分岐処理使う処理に影響はないか、なども確認していかなければいけないわけです。

コンサル
コンサル
たった1つだけなのに…

そのシステムの設計書の変更と、コーディング+単体テストの作業だけでいえば、工数は大したことないのはわかりますよね。
だからと言って結合テストや接続テストまで簡単に済むとは言えないんです…
その処理が多くの部品から呼び出されていれば、当然結合テストは大変になります。
外部のWebなどと連携していれば、接続テストの仕様確認で大きな時間が取られます。

もちろん、これらを考慮しないわけではないのですが、考慮が浅いコンサルタントが多いのも事実です。

コンサル
コンサル
早く終わらせてくれよ😠

その結果、「なんかコンサルってうるさいことばっか言ってるよね」みたいにエンジニア側からはどんどん嫌われていってしまうんですね…

・ITコンサルタントは工数ばっかり気にする🤦‍♂️
→SEとの軋轢が生まれる💥💥

・簡単そうな仕様変更もやってみると超大変
→見かけとの差で想定規模以上になってしまう😔
→エンジニアからは「コンサルは言うならやってみてよ!」って思われてる

ITコンサルタントも学ぼう!

では、本題ですが、なぜITコンサルタントはプログラミングができない、学ばないのでしょうか?
私自身はITコンサルタントではないですが、プログラミングも学ぶことに、以下の2つが大きなメリットがあると思います。

・顧客への提案の幅が広がる
・プログラミングの知識からシステムへの理解が広がる

顧客よりは玄人になれる

プログラミングを学ぶことで最も大きい利点は顧客への対応力が上がることでしょう。
ITコンサルタントの友人に聞いた時もこんなことを言ってました。

ユーザーさんが望んでることはわかるんだけど、それが実現可能かどうか、どんくらい大変なのかパッとわかんないんだよね〜
質問された時もよくわかんなくて「持ち帰ります」って何度もやり取りしなきゃいけないのも大変だわ

じゃあ尚更プログラミングやれや!!
って思っちゃいますよね笑
プログラミングを学ぶだけで、ここの悩みのほとんどは解決できますよね。
もちろん、全てを勝手にITコンサルタントに判断されるのも我々エンジニア側からすると困ってしまいます。
それでも、無駄なやり取りを減らせるのは関係者みんなにとってありがたいですよね。

例えば、顧客から「AからBに変えて欲しい」って言われたとしましょう。
プログラミングがわかるだけで「ああ、あのif文の処理を変えるか」とかの結果がわかってきます。
それを、いちいちエンジニア側に「すいません、こういう要求があるんですが…」みたいなことを聞くと、
「は?こんなんもわかんないの?」みたいな感情をエンジニア側に抱かせてしまいます🤦‍♂️

こういう疑念や失望が軋轢を生む原因になるのは、社会人の方なら経験あるのではないでしょうか?

無理やり学べ!とは言わないですが、学ぶことの利点は大きいです。
ITコンサルタントの友人曰く、学ぶことは基本・応用情報や、プロマネのような管理側の勉強ばかりだとのことです。
その勉強が役に立たないとは言いませんが、円滑なコミュニケーションに役立てるのは間違いなくプログラミングの知識です!

まとめ


ITコンサルタントはなぜプログラミングを学ばないのか?
に対して、色々と紹介してきました!
プログラミングを学びたいって少しでも思っていただけたITコンサルタントの方にはぜひこちらの記事にある「写経」から始めて欲しいなって思います。

これから先、上手くITコンサルタントとして顧客やエンジニアとスムーズにコミュニケーションを取るために、ずっと活躍するために、ぜひ挑戦してください!

最後まで読んでいただき、ありがとうございます!