This has generally been my experience in writing software.
But recently I started working for a small mechanical engineering company on some exciting new development I can't say much about.
They asked an agency for the most senior person they could find, that being me, and then basically let me do as I please, which in this case has consisted of churning out a lot of extremely solid tools and systems as a steady and sometimes even rapid pace.
We've mostly hit our deadlines, and the one big miss was from a known risk point we had discussed - I had to deal with a clever database/ORM system brand new to me, and it turned out to finally be great, but have some pain points in the middle.
But it wasn't an issue. I didn't force myself to slog when I wasn't productive. I steadily worked through the problems with a series of tests and now it's bulletproof, and only a few weeks late and there was never any stress.
I feel a lot of it is the whole mechanical engineering attitude which has always paralleled my thought that it's better to take somewhat longer and have something that's really productionized and usable.