| Oh, I'm well aware of the difficulty of negotiating with product managers over timelines. The difference is that they never should get the decision to cut safety checks. Cutting safety checks should be as ludicrous/impossible as writing half the code of each function to cut time. The conversation should go like this: PM: "Does 3 weeks sound about right for this?" Dev: "No, we'll need 6" PM: "Why?" Dev: "That's how long it takes to build those 6 features." PM: "Ok, we don't have 6 weeks. I can give you 4, but we're just gonna have to make do." Dev: "Okay, which features would you like to cut?" > Further, professional engineering in the US is a whole different game that involves licensing and regulations specifically to avoid that situation. I'm aware. While I don't think the majority of software developers should be certified, we should require licensing for working on safety-critical applications. |
I think you're missing the end to that conversation:
>PM: "Ok, we don't have 6 weeks. I can give you 4, but we're just gonna have to make do."
> Dev: "Okay, which features would you like to cut?"
PM: We can't cut any of them. We need features A,B,C in the product and we need it in 4 weeks.
Here we insert a rant from the PM about one of the following:
1) Leadership
2) Hard work
3) Threats about job security
4) Recalling that one time you delivered something ahead of schedule so why is this different
5) I see you getting up to get coffee at least twice a day so stop goofing off and get it done
I think you're vastly overestimating how much power/control said Dev has over the whole process at these sorts of companies.
Sure, they can quit, but if they felt empowered to quit they probably wouldn't be there in the first place: I don't think anyone's busting down the door to work at MedicalBusinessTM.
> we should require licensing for working on safety-critical applications.
Fully agreed, though with some misgivings.
Incorporating safety-critical software into the "professional engineering" spectrum would almost certainly require some things that are seen as near-heresy to the software community, like requiring a 4-year degree from an ABET-accredited program.
Still, I agree.