Early in my career, I always found performance reviews and their attendant constructive feedback incredibly, existentially stressful. Constructive feedback feels a lot like criticism, and criticism feels a lot like rejection. When you’re new and are insecure about your place in and value to an organization, even a whiff of rejection can be overwhelming.

The only cure I know about for that sort of general insecurity is time and experience (stick with it, buddy!), but I did eventually arrive at a better perspective on constructive criticism, that I wish I’d found sooner:

Every career is like a mountain. At the summit stands the canonical ideal software engineer1. No one is here, because no one is perfect. Everybody starts their career somewhere around the base of this mountain and needs to go in some direction to get higher, but the direction you need to go depends on where you start. On a real mountain, if you start on the east side, you have to go west to get to the top, but if you start on the west side, you have to go east. Likewise, at work, if you’re too passive you may need to ask questions and share concerns more freely, but if you’re opinionated and loquacious, you may need to filter yourself. Some people talk the right amount but need to edit and test their code more thoroughly, others need to get more comfortable accepting some risk, merging their code and moving on. Where you start, in turn, depends on your personality and your whole life experience up to this point.

To move up, you can try to figure out the direction in which improvement lies and practice behaving that way. Or you can switch to another job, which will have a different summit in a different direction that might be closer to where you currently are.

This mindset implies a few things, which are what, I think, would’ve helped me. Most importantly, everyone in the organization—including the most senior engineers and executives—should be getting constructive feedback. If they’re not, it just means that those people don’t know what they’re bad at, not that they’re perfect (nobody is). Second, because distance grants perspective, a good manager is a coach who can grow your skills and subsequently your career more quickly and to a greater extent than you could on your own. Therefore, you should be comfortable discussing your work-related weaknesses with your manager (in my opinion, managers shouldn’t be in charge of their reports’ promotions because that disincentivizes their reports from doing this).

As I described in my essay on decisions decisions, I really struggled at work when I started my career. That I didn’t really trust my manager in my early days made my early problems intractable. I was more focused on pleasing than growing, so I’m sharing this, in part, for anyone else in my old position. Welcome constructive feedback and open up to your manager (or start job-shopping). Real career advancement only comes from actually getting good at this, and if you want that, you need constructive feedback.

Finally, Julia Evans has a great, relevant Zine that I recommend.

  1. Or at least your company’s version of it. ↩︎