SE業界の優秀なエンジニアがマネジメント側になった時(昇進など色々な要件はあると思います)、たまに訪れるのは「教えている時間がないから自分でやる」という問題です。
そういうエンジニア(マネージャー)は、なまじ自分で手を動かせてしまうため、納期に追われた際に『自分で手を動かして解決してきた』と言う過去の自負があるからか、自身が持っているToDoや課題、作ろうとしている資料の作成・共有が疎かになってしまうんですよね。「自分でやるしかない」…の結果、まぁトラブルわけです。
そう言うエンジニアもさすがにプロジェクトキックオフ直後からそう言う事はしないのですが、納期が遅延し始めたり発注した(信頼できる)エンジニアがパートナー都合で交代させらえたりすると、燻りだすわけです。
僕が「そんなの、xxさんにやってもらえば良いのに」と言っても「xxさんにやってもらった結果をチェックする時間がないんです!」と言う傾向になってしまいます。
たしかに、今は深刻なエンジニア不足なので、僕もバイネームで名前を出せる人員が減っているのも事実ですが…もはや、安心して仕事を任せられるほどのエンジニアが居なくなっている。これは、2022年現在、日本ではそれほどエンジニアが不足しているのが本音です。
ちなみに優秀なエンジニアであればあるほどその傾向にあります(優秀なマネージャとは言っていません)
大抵、そういう時に出てくる寓話(?)にあげられるのが「木こりのジレンマ」です。
木こりのジレンマは簡単に言うと、
木こりが目の前の木を切り続けている。もちろんその間に斧の切れ味はどんどんと悪くなる。周りは「斧を研いだ方が効率が良いよ!」とアドバイスをくれるのですが、木こりは「研いでいる時間がないんだよ」と聞く耳を持ってくれない。
そう言うお話です。
これは色々な場面で多用されるお話であり、大抵は「効率的に斧を研ぐ方法を考えるだけでは駄目。木を切るならチェンソーを使った方が効率的。目的をきちんと明確にしてそれに一番適切で効果的なソリューションを考えて提供しよう」と言うまでが1セットとなっておりますね。
まぁ、一旦(たとえ進捗が遅れようとも)手を止めて自分の作業を棚卸しして、明文化して自分が手を動かさなくても回るような仕掛けを作るのが大事だと思います。
でも「進捗が遅れたら困る!責任とるのは自分だし」とお思いの人も多いと思います。実際、すげー怒られる可能性ありますから。
…ここで昔話を。
あるプロジェクトに参加していた時の話です。某外資系コンサルファームのリーダーが開発をまとめるプロジェクトに(別の立場・作業内容で)入ることになりました。彼とはけっこうお話をしていたのですけれど、お客様からかなりきつい言葉を受けながらもいたって冷静に立ち振る舞っており「さすがだなぁ」と思っていたものです。
とは言え彼だけではプロジェクトが回るわけでもなく、結局、そのファームの品質問題でかなりの遅延を余儀なくされました。
そんななか、彼が急にお休みをとりました。「体調壊したのかな?」と他のベンダーながらに心配しておりました。彼は実に一週間まるまる休んだんですけれど、翌週の月曜日に元気な顔で復活しました。
「何をしていたんですか?心配しましたよ」と言うと「家族旅行で温泉に行っていた」と、のほほんと言いました。
「この一週間、開発が止まったのでプロジェクト全体の進捗がありませんでしたよ」と皮肉を混ぜて言うと、彼は「当たり前だろ?俺が一週間休んでいたんだから、進む訳がない」と言って普通に業務に戻っていきました。
そしてプロジェクトルームには彼のお土産として「温泉まんじゅう」が置いてあったのです。
:
以上なのですが、社会インフラに直結して重大な影響を与えるとかじゃない限り案外システム開発の進捗は遅れてもなんとかなります。(そのメンタルがあれば…と言うのも大きいと思いますが)
さて、次に「チェンソー使えばいいじゃん」問題について。
本当、これにつきるんですよ。でも、これが難しいんです。
例えば、僕たちSEの仕事が”木を切る”仕事だとしたら、別に斧を使わなくてもチェンソー使えば効率的に仕事が出来たりします。
でも、僕たちの”木を切る”仕事はお客様から”木を切ってください”と言う依頼があって初めて成立するんですよ。そのときに、「やり方は自由。お任せ」というケースはほとんどありません。
それが『斧を使え=開発言語・開発環境・コミュニケーションツールの指定』だったりする訳です。
インシデント管理にRedmineを使いたくても、コミュニケーションツールにSlack使いたくても、お客が「使っちゃ駄目!」と言ってきたら(VBAの達人が作ったであろう)Excelマクロでインシデント管理ツールを使い、Teamsでコミュニッケーションをとり「くそ、また日本語変換のついでにEnter押して途中で送信しちまったよ」と言う結果になるのです(まぁ、この改行問題はどのツールも一長一短あるので例としてですが…)。開発言語は言わずもがな…です。
もちろん、提案時から「チェンソーを使うことによって、圧倒的に効率的だし安いです!」って言って提案してお客様にOKを貰えればそれがベストです。
でも、得てしてそう言う人たちはその後(受注がとれた後)からアサインされたりするんですよね…。これはあるあるかも知れません。
うちの本部も今まさにこの状態に陥ってます。でも別に僕は職制上偉くないので「こうすべきだ!」とは言えないです。しかし責任もそこまでは無い。なので、僕は今日も調べ、そして資料を残すのです。
今は耐える時なのだな、なんて思って書いてみました。