There’s a saying that perfect beauty is only found in statues.
Statues never change or grow. They remain frozen in time, exactly as they were on the day they were sculpted. Life, work, and the people around us bring in constant change – which means true perfection is never attainable.
However, as engineering managers (EMs), we’re often drawn to the idea of perfection. It seems to be the only way to meet all the expectations of our role. But perfection is not just an illusion – it’s also a hindrance. It’s not something you can measure, and you’ll always be chasing it, which ultimately slows you down.
For many years, I was a perfectionist. And, yes, sometimes, I still slip into that mindset. But, after over a decade as a manager, I can tell you that perfection is your biggest enemy to getting things done. The more I chased it, the more I burned out and the less I actually achieved.
If your goal is perfection, you’ll end up stuck – just like a statue.
So, I want to share with you what’s worked for me in dropping the pursuit of perfection and instead focusing on setting realistic goals that get results – without pushing yourself over the limit.
The perfection trap
You might imagine that once you step into the role, things will look like this:
- Everyone on your team is happy
- There are no complaints about the projects your team delivers
- Conflict is nowhere to be found
- And you’ll finish work by 6 PM and sleep peacefully
But here’s the truth: it’s completely different! Instead, like every other manager before you, you’ll face:
- Conflicts
- Pressure from stakeholders
- Bugs and mistakes
- Stressful deadlines
- And unmet expectations
The reality is that if you’re chasing perfection, you’ll solve none of these.
It’s impossible to avoid mistakes and roadblocks. In fact, the only way to avoid them is by doing nothing at all. And in the long run, doing nothing doesn’t get you anywhere.
The gravity of inner forces
More often than not, the pressure to be perfect isn’t coming from anyone else – it comes from within. Sure, there are external pressures, but it’s the inner drive to get everything just right that can be more overwhelming because it’s always with you.
Take something as simple as checking your email or Slack. You open it and see there are at least a hundred emails and messages, each demanding attention. At least, that’s what I see every time I log in!
As an EM, it feels like everyone needs something from you all the time. So, it’s easy to fall into the trap of thinking you have to reply to every message, no matter how minor some of them might seem.
But you don't have to. An email asking you about a new place for lunch isn’t nearly as important as tackling an urgent bug (even if that new place for lunch might be a really great suggestion!).
What to do: resist the pull
If you want to respond to every communication you get, you’ll spend hours each day doing just that.
Sure, you’ll feel the fleeting relief of no red notifications staring at you, meanwhile, your team is struggling because no one is helping them deliver the new software update.
Again, you don’t have to:
- Answer every single message
- Read every email
- Or respond to everything immediately
You’re not a machine.
When I catch myself in this trap, I try to remember my old classmates. The ones who barely showed up, turned in work late, would come to classes late, or miss them altogether – yet somehow, they graduated and got the same diploma I did. You probably had a few classmates like that at your school or university, too.
Now, I’m not saying you should slack off work, but it helps to adopt just a little bit of this mindset. While you can’t ignore your responsibilities, finding a balance is key.
So, focus on what’s important and not get sidetracked by the unimportant. Maybe even try skipping over the less important messages instead of responding to them all. You’ll feel a lot better for it (and still get things done).
The micromanaging vortex
One of the most common side effects of perfection is micromanaging. Perfectionism is all about control and perfectionist managers struggle to delegate.
Imagine a new EM who was promoted after being the top developer. She was amazing at coding but when she stepped into the role, she became obsessed with reviewing every line of code herself, rewriting her team's work just to match her "perfect" vision. By trying to impose her own standard of perfection, she micromanaged every aspect of her team’s work. Over time, they began to feel like nothing they ever did was good enough.
Eventually, her team started complaining, comparing her to a coach who couldn’t resist jumping on the pitch and playing each position. But that’s not how a balanced, effective team works.
In my experience, if you’re doing your job as a manager, you shouldn’t have free time to micromanage your team. You should be supporting your team, setting goals and tasks, and not getting caught in the weeds.
What to do: delegate
The next step is learning to delegate. But there’s a caveat because there are two types of people you work with as a manager:
- People who do exactly what you tell them to do
- And people who have their own processes and vision
The first group is easy.
It’s convenient, you tell them what to do and they do it. But that can also be a problem. When you hire someone who always needs direction, you’ll worry they can’t handle things on their own. If there’s unfamiliar territory or a decision to make, you’re still stuck leading the way.
The second type can be tricky for perfectionists, not because they don’t deliver, but because they do things their own way.
This can be a nightmare for perfectionists, but you have to learn to let go. It’s tough, but you have to accept that people do things differently. And maybe you’ll disagree sometimes, but learning to trust that they can get the job done – even if it’s not your way – is key.
Many managers think that if they just find the right people, everything will align with their vision and work flawlessly. It’s just like with relationships. You meet someone new, you think it’s going to be perfect, and there won’t be the same problems as before. But, unfortunately, that’s not how it works in the real world.
It’s about making things work.
So, take the time to find the people who are worth that kind of effort.
Perfection paralysis
You’ve probably heard the sayings “Better done than perfect” or “If it’s perfect, it’s too late.” There is a lot of merit in them.
A perfectionist might think: “How can I let my team launch the new software update now if I know that eventually there’ll be something that needs fixing?” So, they review the code, run as many tests as possible, and tweak things endlessly but still it never feels like it's perfect enough to go live.
It’s like buying a pair of new shoes and waiting for the perfect occasion to wear them, only to realize years later they don't fit you anymore.
When you’re so fixated on perfection, you’re never happy with what you have. This makes it hard to accept other people’s contributions or move forward with tasks.
What to do: shift from perfectionism to realism
Your main job as an EM is to get things done – not to be perfect. While your goals change depending on the company, projects, and clients, one thing you can do to make them more realistic is to set SMART goals:
- Specific
- Measurable
- Achievable
- Relevant
- And time-bound
For example, a perfectionist goal might be: “We need to build software for a client that has no bugs.”
A more realistic SMART goal would be:
- We'll deliver an MVP with core features X, Y, and Z by the end of Q2
- Each feature will undergo automated testing with 80% code coverage and user acceptance testing
- We'll have biweekly releases for client feedback, maintaining a maximum of three critical bugs in production
- After the MVP launch, we'll implement additional features based on user feedback in 2-week sprint cycles
Making the shift to realistic expectations makes it easier to be satisfied with the results. To achieve that, you need to work with your team, not against them.
Control malfunction
The first line of defense against the perfection trap is to recognize your own patterns.
Usually, perfectionism is most paralyzing when you feel like you’re losing control. Let’s say you hire a new senior engineer, and they take on a large chunk of tasks you used to oversee. You worry that they won’t be able to manage everything that you used to. You question your own judgment and ask yourself:
- Do they have the right skills and experience?
- Are they doing their job right?
- Will they be able to handle their tasks?
- And are there any mistakes or disruptions needing me to intervene?
It’s tempting to step in and try to correct things that aren’t done your way. But, shifting your focus to concrete facts rather than your inner fears, you’ll find reassurance. You’ll realize that by letting go a little, you’re actually giving yourself the time and space to focus on what really matters.
What to do: keep yourself in the loop
It’ll be tough at first to delegate and let go. You might feel disconnected and out of control.
So, schedule regular meetings with your team to see how they’re doing. Use the meetings as opportunities for your team to share their:
- Progress
- Roadblocks
- Questions
- And ideas
You don’t need to give up control completely, but you don’t want to be an obstacle to their progress either. Having regular feedback sessions keeps you informed and puts your mind at ease as you’ll know how your team is doing.
The short version: escape the event horizon
I’d argue that perfectionism is innate in most humans, and us EMs are no different. As a manager, learning to let go of perfection and the need to control everything frees you up to focus on what really matters.
Here’s how to start:
- Resist the inner pressure to be perfect
- Recognize your patterns
- Learn to delegate
- Set measurable and realistic goals for yourself and your team
- And communicate frequently with your team to stay in the loop
By doing so, you’ll also create more opportunities for your engineers to develop new skills and take on new responsibilities, all while:
- Prioritizing progress over perfection
- Fostering a better environment in your team
- Focusing on steady, predictable delivery rather than heroic sprints
- And avoiding burnout
Perfectionism is a hard habit to overcome – I know this firsthand. But as you start to address it, you’ll feel a huge weight lift as the pressure of impossible expectations eases.
Want more tips on leading effective software engineering teams?
Join my newsletter if you’ve found this content useful
Originally published on Medium.com
Content in this blog post by Alex Ponomarev is licensed under CC BY 4.0.