Concordo contigo, mas vou um pouco mais além...
Algum tempo atrás eu li o livro "Inspirado: Como criar produtos de tecnologia que os clientes amam", e nele tem um conceito que eu considero ser a pura realidade do mercado de TI. Basicamente, o autor diz que existem dois tipos de devs/engenheiros:
1. Mercenário: É aquele que faz o que deve ser feito, seguindo a receitinha de bolo, sem questionar, sem inovar, faz apenas o necessário para receber o pagamento pelo serviço no final;
2. Missionário: É aquele que não apenas faz o que deve ser feito, mas também questiona, procura entender o porquê das coisas, tenta inovar e genuinamente resolver o problema do cliente, pra ele, o pagamento é uma consequência do trabalho bem feito.
E eu acho que é basicamente isso, de uma forma geral, as empresas querem e precisam do dev missionário, pois é ele que será capaz de realmente resolver um problema, alavancar o negócio e gerar lucro para a empresa, e esse cara não vai ficar sem emprego. Já o mercenário, ele é necessário apenas quando precisa de mão de obra em grande quantidade mesmo, que é justamente esse cenário do pedreiro que você comentou, porque esse cara precisa de tudo mastigado.
E aí quando o mercenário fica sem a fonte de renda dele, ele vai reclamar dizendo que isso tudo é uma grande "bosta", porque ele não tem o apreço e nem o propósito de vida que o missionário tem.
Inclusive, acho que talvez essa seja a grande diferença de um para o outro, o missionário tem o propósito de vida de criar soluções que resolvam um problema real, o mercenário só quer ganhar dinheiro...