俺の認識ではプログラマーというのは専門職であって、与えられた仕様を正確に反映するコードを作る役割だ。
仕様書を考えるのは別の人間の役割であり、プログラマーは部分最適だけを考えて、機械的にコードを書くのが正しい。
全体最適は別の人間が考えることで、プログラマーには関係がないし、そもそも全体を知る必要すらない。
仕様が決まらないならば、決まるまで仕事をしてはいけない。

あくまでプログラマーはコードを書くのが本分なのだからね。