A mistake less experienced software engineers make when it comes to estimations:

They break out maintainability/quality. Eg “building the feature is 2 weeks, adding automated tests another 3 days”.

What follows by less technical stakeholders is a push to remove the latter.

Non-functional requirements like correctness, quality, maintainability, performance etc should be baked into estimates, and not made part of bargaining. That bargaining is how sw can become less maintainable over time.

@gergelyorosz @TTimo
s/less experienced software engineer/less experienced manager/
@Doomed_Daniel @gergelyorosz I mean .. Software estimation is a bit of a black art. It's hard enough and inaccurate when you are the one writing the software .. I don't think PMs should do it .. Other than gathering and adding up what their guys are telling them maybe.
@TTimo @gergelyorosz
I mean that manager should explicitly plan time for writing tests (and demand them) instead of seeing them as a waste of time.
It shouldn't be up to developers to "secretly" write tests because they officially don't get time for them
@TTimo @gergelyorosz
(Of course I agree that the time estimates themselves should come from the developers, but secretly extending the scope of the task because the managers make poor decisions doesn't sound very healthy)