One trait I have started noticing in good engineers, regardless of seniority, is that they are opinionated.
Not argumentative for the sake of it. Not the person who turns every code review into a hostage situation because someone used a different library. I mean they have a point of view. They have thought about the tradeoffs, they can say what they think we should do, and they are willing to stand behind it.
That matters more than I used to think.
An opinion gives you somewhere to start
Engineering is full of choices where there is no universally correct answer. Which abstraction is worth adding? Should we optimize now or leave it alone? Is a new dependency worth the complexity? Should we build a more flexible system, or solve the actual problem in front of us with something boring?
You need to make a call eventually.
People with opinions have some set of principles, experiences, and assumptions that helps them make those calls. Maybe they strongly prefer simple systems. Maybe they are suspicious of clever abstractions. Maybe they have been burned by a particular failure mode before. Whatever it is, they have axioms that guide their actions instead of reacting to every new suggestion as if it arrived from nowhere.
That does not mean their instincts are always right. Nobody's are. But it is much easier to have a useful discussion with someone who says, “I think we should do this, and here is why,” than someone who never has a position at all.
Strong opinions should be loosely held
The important qualifier is that a good engineer can change their mind.
“Strong opinions, loosely held” is a cliché at this point, but I think it survives because it is useful. You should be able to advocate for a design and explain why you believe in it. Then, if someone finds a flaw, brings better data, or understands part of the system that you do not, you should be able to update your opinion without treating it like a personal defeat.
That is different from being wishy-washy. The goal is not to avoid taking a side until there is perfect information. The goal is to make the best call you can with what you know, and stay open to being wrong.
Some of the best technical discussions I have seen have been between people with real, competing opinions. They were useful because both people were willing to put their reasoning on the table. The disagreement was about the work, not about who needed to win.
It makes people trust you
I think people tend to trust a clear point of view, especially when it is backed by reasoning.
If you consistently explain what you think, why you think it, and what evidence would change your mind, people can understand how you make decisions. Even when they disagree with you, they know where you stand. That makes working together easier.
The opposite is harder. If someone refuses to take a position on anything, or changes direction depending on who spoke last, it is difficult to know whether they have actually evaluated the problem. It can feel like there is no one to rely on when a decision needs to be made.
Being opinionated does not mean being loud. Some of the most opinionated engineers I know are quiet. But when it is time to make a call, they can clearly say what they believe and defend it without getting defensive.
It helps when things go wrong
I also think having a point of view gives people a bit more mental fortitude when things get difficult.
When a project is failing, a production issue is happening, or someone strongly disagrees with your proposal, it is easy to get pulled around by the urgency of the moment. Engineers with clear principles seem less reactive. They can take in new information without losing the thread of what they are trying to accomplish.
Again, that is not stubbornness. Sometimes the new information means the plan needs to change. But it is easier to adapt deliberately when you have a reasoned starting point than when you are just responding to the loudest person in the room.
Trying to find that part of myself again
Over my career, I have been wrong plenty of times. Some of those times damaged my confidence more than they probably should have.
My reaction was to stop having opinions. I used to be very strongly opinionated, but after enough misses, I started treating every opinion as evidence that I was about to be exposed as stupid. So I started looking for consensus and peace instead. I would only give my opinion when someone pressed me for one, and even then it was usually weak and flimsy. The moment someone more experienced spoke up, I would let it blow over, even when I still did not agree.
That felt safer, but I do not think it made me a better engineer. It just meant I was less willing to put my reasoning on the table where it could be discussed, challenged, or improved.
I am trying to regain some of that confidence now. The stakes are usually not that high. Having an opinion is not the same as wearing a billboard that says I am stupid if I turn out to be wrong. It is making the best call I can with what I know, explaining why, and being willing to update it when someone shows me something I missed.
I do not need to have an opinion about every tiny thing, and I do not want to become difficult or attached to being right. But a good engineer has opinions. I am trying to find that part of myself again.
Top comments (0)