2015年12月9日水曜日

システムを速度改善して1時間の処理を10分に短縮したら怒られた話

「なんで速くしたの?」と言われてレビュー惨敗

一応効果と言えるものが出たので、マネージャーレビューに持って行った。マネージャーレビューを通らないとリリースさせてもらえないのだ。改善効果の説明を一通り終えた後、ボスから受けた最初の質問を僕は忘れることができない。
「なんで速くしたの?」
一気に場の雰囲気が最悪になった。僕はもう目が点。ザ・ワールド状態。「いやいや、だって速度改善って案件だったやんけ!?」とも当然思ったが、「言われたからやった。今は反省している」なんて言えるはずもない。納得できずごにょごにょ言ってみたわけわけだが、当然レビューは落ちた。それはもう壮絶な惨敗であった。



「誰も開発して解決しろとは言ってないよ?」という言葉

僕がレビューでごにょごにょ悪あがきしている時、ボスにこの言葉を言われた。レビューの時は「そりゃねえよw」と思ったが、後で落ち着いてよーく考えてみた。
言われてみれば、たしかに「お客さんが困ってるからいい感じにしといて」とは言われたが、「速くして」とは一言も言われていなかった。なのになぜ自分は、速度を改善しようとしたのか?



先入観だらけのクソエンジニアだった僕

お客さんはシステムの速度が遅いことに困っていたわけではない。
システムが遅いことで業務のスケジュールが逼迫してしまうことが問題だったのだと気づいた。
本質的には、お客さんはシステムの速度なんて興味はない。もっと言うと、興味をもっちゃいけない。エンジニアは「そもそもなんで速くしたいとか言いたくなっちゃったの?」という問いから考えなければならないのである。

「誰も『開発して解決しろ』とは言ってないよ?」というのは、「開発で解決するのが一番メリット出るの?」ということだ。1時間の処理を改善して10分にすれば確かにお客さんは喜ぶだろう。しかし50分しか変わらない。もしかしたら、それより前の処理に2日かかっているところを1日でこなせるように助言すれば、開発しなくても24時間の削減効果があったかもしれない。問題解決のアプローチは色々あったにも関わらず、上司に、コンサルに、お客様に言われたままに最初からシステムの改善に注力しまくっていた僕。つまり、僕は先入観にとらわれまくっていたクソエンジニアだったわけだ。レビューで怒られて当然と言える。


あぁ他を見ずに視野狭窄で突っ走ったのか
読んでていらっときてたが納得
てか、エンジニアなんだから開発でいいんじゃないの?って思うが