こんな言葉を聞いたことあるだろうか。
「あの人は技術力が低い」
「あの人は技術力が高い優秀なエンジニアだ」
「あの人は偉いポジションにいるが技術力は低い」
「あの有名な人は、きっと技術力が高いから働いたら色々と学べそうだ」
ある人が言った。
「この会社の従業員は自分より技術力が低い。技術力が高い俺の言うことが正しい」
どうやらその人にとっては設計力含め幅広い技術的な知見を持っていることが技術力らしい。
だが、その人の技術力をプロダクトに適用している姿を見たことがない。その上での主張だった。
主張と行動が相反しているようだが、と尋ねると
「この会社のコードがクソだからだ。」
そして「一から作ればできる」「(業務での)決裁権を与えてくれればできる」
などという反応もあった。
普通に考えれば、ネゴシエーションを取りながらリーダーシップを発揮して進めるべきなのではないか。別にそこに決裁権も何も関係ない。
一から作ることによるベネフィットを示し、上長に決裁を取ればいいだけだからだ。
決裁が取れないなら、それは会社として今やるべきではないという判断であるだけだ。
そういう判断が不服ならば、他の業務と比較して今やるべき理由を明らかにすればいい。ただそれだけである。
もちろん、一から作ることができれば、それは既存のアプリケーションに影響を与えないのだから、既にあるアプリケーションを改修するよりも遥かに容易であるのは自明だ。
そんな容易な環境下でなにかを作るということが、果たして技術力が高いと言えるのだろうか。
その人が主張する技術力の高さの定義を是としたとき、その技術力の高さが必ずしも、事業貢献に繋がったり、コミュニケーションの高さに繋がるものではない。ましてや必ず評価されるかというとそうではないということがわかる。
そもそも「技術力の高低」の物差しは人によって違うはずだ。既存のコードのリファクタリングや設計、既存のコードベース上に新規機能開発を行えない人間は、本当に技術力が高いのか疑問である。
これも物差しが異なる事例の一つである。私は少なくても第三者が書くようなコードも難なく読めて、変更を加えられて、顧客に価値提供が迅速にできるのは、IT エンジニアとしてあるべき姿だし技術力の高い行いだと感じる。
業務経験や今までのプログラマーや IT エンジニアとしてのバックグラウンドは異なるはずであり、技術力でラベリングすること自体が本質的ではない。さらに言えばリスペクトを欠いているとさえも思う。IT エンジニア間に軋轢を生むクソみたいなワードである。
「技術力が高い」という幻覚にとらわれず、お互いがリスペクトしあい、お互いの技術力を高めていく。その技術力で困っている誰かを救えるように。
そんな世界になればいいなと考える。