It depends. Sometimes they joy is in discovering what problem you are solving, by exploring the space of possibilities on features and workflows on a domain.
For that, having elegant and simple software is not needed; getting features fast to try out how they work is the basis of the pleasure, so having to write every detail by hand reduces the fun.
There is immense pleasure in a nice piece of code - something that is elegant, clever and simple at the same time.
Grinding out code to get something finished - less fun…