> I would argue all the engineering teams I've been on do not spend enough time thinking about how much a piece of work will cost to execute, and whether it will generate a return.

These things are almost never the responsibility of engineering teams, nor should they be. Engineers read about these things and get it into their head that they should be worrying about them. In effective organisations, these decisions are made elsewhere, by people better qualified to make these determinations. It's an ineffective organisation that leaves these sorts of decisions to their engineering teams.