You cannot be perfect all the time.
I'll give you an example from my own experience.
At my company, we had a very good coder. Everybody recognized his competence, and thus he was tasked to write an email tracking system.
2 or 3 years later, he quit the company since he found a better job elsewhere, so we inherited his code.
Sure, it was written clearly, but his system was heavy on resources.
At a given moment, the system stopped working, and I had to check what happened.
As I said, it's not that the code was not clean, but the database design was quite poor, and it was unable to keep the load.
Since the company doesn't want to pay for rewriting the system, the system has now a lot of external procedures to remove the old entries.
This is to show you that however perfect your code is today, it'll be probably ugly in a near future, even if you believe you are a good coder.
Also, about "career enhancement", I believe you have a lot of illusions.
20 years ago, I experienced a massive burn-out (I was programming games at that time), which removed all my illusions about work (I did some psychoanalysis to understand what was happening).
What is important is not your "career", or even "usable code", but what motivates you, and how much fun you have from your work.
You can put the "I am a winner" attitude in front of me, but I really don't care, since I know that you are just faking who you are.
In all my jobs, all the people around me were faking what they were. They want to appear competent, skilled and good at listening to others (this is what their company expects), but they are never themselves, and this requires much less effort than faking it.