A new software guy recently told me that he was planning to read a textbook over the weekend so that he could be prepared for a technical discussion meeting during the week. My thoughts were 1) you must be really bad at time management and 2) you must be really bad at setting work-life boundaries. If I were in that situation, I'd be asking for a charge code from management.
It's hard not to tie your own identity up in how 'good' of a developer you are, especially when you're green. It can be incredibly motivating, too. That said, over the years I have found it easier to let go of a bit of that stress/anxiety of being 'bad' since realising that so little of the quality of my output is actually in my control. Sure, I write the code, but do I get final say in the design? In the issues I encounter along the way and how I accommodate them? Can I say "our in-house framework is dogshit and it's time to bin it"? Nope, I'm a cog, and once one mediocre piece of code leaves my machine off to generate Business Value TM, I'm simply required to repeat the process. Even keen software craftsmen can't really arrive at consensus on what quality code is in all scenarios, so how will a business do so when all they want is to generate profit, and quality code is often not a requirement to achieve that in the short term? There's just no incentive. I do my best because I derive some satisfaction from it, but the moment I hit resistance, I remind myself that I'd do it differently if I was given the choice, and I proceed with whatever garbage I need to do to get paid.