To be fair this same logic likely is the source of stress for a lot of software engineers. Loving to program and programming for other people for a living initially seems like a brilliant way to make a living. For plenty of people it is, but for some what programming for money looks like and programming for passion look like can be so different as to be depressing.
The hardest part of software engineers in this situation is the money is really good and, all things considers, the job is quite cushy. However having your passion drained by your profession still can be an awful feeling, and that can be magnified by the fact that there's no easy solution.
For me personally I resolved this by realizing and fully embracing that the programming projects I like to do need to be in a completely separate part of my mind that the ones I'm paid to do.
By day I sling mediocre code on arguably useless things because I need to pay the bills, by night I work on a separate set of interesting problems that are related to the day time ones only insofar as they technically involve writing code. If I get a cool insight at work, great, but I've learned to leave my passion at home when I check into work.