「終わりよければすべてよし」みたいな姿勢はやめよう

研修で SWOT 分析するようなグループワークがあると、自社の「強み」として「技術力が高い」というキーワードが挙がることがあります。

で、この「技術力が高い」ということは何を根拠に言えるのか、そのあたりをディスカッションすると次のような意見が出てきます。

  • 有名なプロダクトを扱っている
  • 大手のお客様を相手にしている
  • なんかのアワードを受賞している

もちろん、これらは間違っていないし、実際にその通りです。個人的にすごいと思うエンジニアは周りにたくさんいます。しかし、蓋を開けてみると現実は厳しいものがあります。

例えば、ドキュメントやソースコードは可読性や保守性に欠けるものであったり、そもそも設計書と言えるものが「画面仕様書」程度のものしか存在しないこともよくありました。また、モグラ叩きのようにバグを出しては修正するみたいなことを繰り返すこともありました。

サービスインに漕ぎつけても、それのメンテナンスを継続することはなかなか厳しいものがあります。

もちろん、すべての現場がそうではないですが、数字としての「成果」はよくても、このような開発プロセスで「技術力が高い」と言えるのだろうかと思います。

保守性の高いドキュメントやソースコードを残し、バグの芽は早い段階に摘めるように開発プロセス全般に亘って組織的にコントロールできることは、「技術力が高い」と言えると思います。

組織の技術力を「成果」だけで判断せず、途中の「プロセス」も重要視する必要があり、いい成果を狙うだけでなく、プロセスを改善することも大事であると考えています。

とにかく「終わりよければすべてよし」みたいな姿勢はやめよう、という愚痴でした。