But the thing is, in software engineering - if you ever need to do again, something you have done before, it should be just a copy away.
So you'll never spend time on something you've done before. And if you do, that time is essentially wasted - something that shouldn't be billable.
Now that's the ideal, obviously - reality is a bit more nuanced.