Skip to main content

Command Palette

Search for a command to run...

How to Speak Up Without Making People Lose Their Sh*t

Four techniques to help you express your concerns clearly and without burning the room down.

Updated
11 min read
How to Speak Up Without Making People Lose Their Sh*t
F
Hi, I’m Fedor, an Engineering Manager at an ordinary tech company. Like many companies, we face the daily grind of tight budgets, lean teams, and putting long-term goals on hold because of urgent issues. But here’s the thing: working with constraints doesn’t mean we can’t build great things. Ordinary companies are filled with extraordinary people who know WHAT to do. The key is figuring out HOW to navigate the limitations and deliver meaningful results we’re proud of. This blog is about sharing those strategies. I’ll write from an engineering manager’s perspective, but you’ll also find technical insights and practical code along the way. Do you have thoughts or feedback, or do you want to connect? Hit me up on LinkedIn — I’d love to hear from you.

I don’t know where you work or how long you’ve been working, but I’m fairly sure you’ve experienced at least one of these situations:

  • Your manager proposed a new process completely disconnected from reality.

  • A product manager brought a long list of questionable features while the project was collapsing under technical debt.

  • A teammate opened a pull request with a quality bar far below what you consider acceptable.

Have you ever stayed silent because you didn’t know how to disagree without starting a conflict? Or maybe you tried to speak up, but the conversation somehow turned into a disaster?

Most of us have such experience.

We often avoid conflict because silence feels safer. But it’s hard to love your work when you’re surrounded by decisions you don’t respect. Great products rarely emerge when nobody challenges the status quo. Teams stop growing when nobody raises the bar.

Even more, unspoken issues rarely disappear. They repeat. Initially small pinch eventually becomes a painful crunch.

Conflict is always an opportunity for improvement. The ability to raise concerns without fear, disagree constructively, and prevent poor decisions is an essential ingredient of a healthy, growing environment.

But if conflict can be a good thing, why do we avoid it?

Because conflict is only productive until it becomes personal, and that happens surprisingly often.

Why Do Work Discussions Become Personal Conflicts?

Have you ever noticed how quickly discussions about seemingly ordinary work topics can become emotional? Why does this happen?

Human psychology is complicated and full of nuance, but one explanation appears surprisingly often: many of us associate our work with our identity.

Most engineers don’t just work for eight hours and leave the problem behind when they close their laptop. We think about problems while walking. We solve bugs in the shower. We wake up with solutions at 3 a.m.

That happens because we care. The feeling of “I am a good engineer, I am a professional” becomes part of our identity. Being someone who can solve complex problems with practical, elegant solutions matters to us. And we often treat the outcomes of our work as evidence of our competence, something that reinforces that identity.

And you know what? This is not unique to engineers. Designers, product managers, founders - many people feel the same connection to their work. When we care deeply about what we do, that becomes a part of our definition of who we are.

Now imagine someone criticizing other's work. To the person receiving the criticism, it often doesn't feel like criticism of the work. Sometimes it feels like attack to their identity.

This happens especially often under stress. The amygdala, the part of the brain responsible for threat detection, becomes more active under stress, while the prefrontal cortex, which supports reasoning and self-control, has less influence. The amygdala is fast, but not very accurate: it is designed to notice possible threats quickly, even at the cost of false alarms. Evolutionarily, this is a successful survival strategy: it was safer to react to a threat that was not there than to miss one that was.

Because of that, people under stress may perceive attacks even when none were intended. They stop listening and start defending, counterattacking, or withdrawing - anything except having a useful conversation. This is simply how our brain is wired.

There are two important conclusions from this:

  1. If you criticize someone’s work, they may become defensive instead of hearing you, and you'll not succeed.

  2. Even if you do not intend criticism, people may still hear it that way.

So, let’s look at a few techniques that can help you express disagreement clearly, but without threatening people’s identity.

Four Techniques for Productive Disagreement

A Dream Behind the Complaint

This is the simplest technique, and surprisingly often, it’s enough to change the direction of a conversation.

Whenever you notice that something is bad, you usually also have an idea of what “good” would look like. So instead of describing how bad things are, describe the better version you want to see.

Instead of:

This process makes no sense.

Try:

I’d love a process where engineers can deploy routine changes the same day, unless there’s a clear reason for extra approval by 3 persons.

Instead of:

This pull request is impossible to review.

Try:

I’d find this much easier to review if we split it into a few smaller changes.

This works because you’re no longer judging the person’s work. You’re describing a desired outcome. The conversation becomes less about blame and more about improvement. It also becomes much easier to act on because they're more specific.

Anticipate the Fundamental Attribution Error

Fundamental Attribution Error is a cognitive bias that became widely known thanks to Daniel Kahneman's book "Thinking, fast and slow".

It is a mental shortcut where we overemphasize a person’s character traits when explaining others behavior. At the same time, when we make mistakes ourselves, we usually blame the situation instead of our own personality.

When my colleague is late, it’s because they're disorganized and don’t respect our time. When I’m late, it’s because traffic was bad.

We often do this unconsciously. And we naturally assume that other people judge our personal qualities. We may overestimate how likely that is, but it still creates stress. This is simply how our brain works.

One of the easiest ways to reduce defensiveness is to explicitly acknowledge the circumstances around the situation.

I know you’re working on this PR under a tight deadline.

I see you created this PR late in the evening.

The requirements for this task seem unusually ambiguous.

I know we don’t have many good examples of tests in our codebase at the moment.

By acknowledging situational factors you remove an unspoken fear: the fear that you’re secretly judging. It turns the conversation into a partnership.

Express Your Need. Clearly

A surprisingly large number of disagreements come from unmet needs. The problem is that we often hide those needs behind criticism. Instead of explaining what is difficult for us, we explain what is wrong with someone else.

For example, there are many reasons why you might be unhappy with a pull request. Is it too large to review? Did someone send it late in the evening and ask for urgent feedback? Are you concerned about code quality? Do you disagree with the task requirements themselves?

These are very different problems, and they require different actions. And it is worth explaining why you struggle clearly.

When we express our need, people are willing to help, much more often than we can expect. So, try shifting the sentiment from "You’re doing it wrong" to "I’m struggling because..."

Instead of

Why are you sending a PR at 10 p.m. and expecting everyone else to drop what they’re doing for your poor planning?

try

This is critical functionality, and I’m too tired to review it well tonight. I could do it tomorrow with a fresh mind.

Instead of

It is poorly designed

try:

I’m worried this hidden behavior will increase support load for us

If the situation is tense and you’re struggling, let others see that. There’s nothing wrong with it.

This way, you’re not attacking their identity, you’re asking for help which creates a very different kind of conversation. The focus moves away from judging another person and toward solving a specific problem you experience.

It also creates empathy. People generally enjoy helping each other, but they can only help when you express what you need. So, do it clearly.

Be Part of the Solution, Not a Passive Observer

Nothing kills a discussion faster than criticism without action.

When expressing disagreement, propose specific actions, even small ones, instead of passively judging or arguing for a perfect but unreachable state.

Please make this a separate PR so it’s easier to review.

or

I’m okay with this workaround, but let’s identify the long-term solution before merging.

Even if you don't know the exact solution, you can still offer partnership:

Let’s spend 30 minutes together to untangle that. I'm available at 4 p.m.

I often think about disagreements as a ball of thread. As long as the thread keeps unrolling, the conversation can continue. Statements like these cut the thread:

I don't like it.

I disagree.

This is wrong.

They end the conversation instead of advancing it. A better alternative is:

I disagree with X, but I see Y and Z as possible alternatives. What do you think?

The thread continues, and that's where progress happens.

It works because you offer a concrete next step, which can move the conversation out of endless debate or analysis paralysis.

It also creates a partnership dynamic. You become collaborators solving a problem together, instead of one person evaluating the other.

When You Feel Emotionally Involved

Everything above helps reduce the chance that the other person becomes emotional. But what to do when someone involved emotionally is you?

The short answer: pause.

First, take a breake and remind yourself of positive intentions: you are on the same side, and the person in front of you is not your enemy.

That may sound obvious, but in the heat of an argument, we often start treating colleagues as if they are actively sabotaging us. In reality, they are usually trying to solve the same problem, but from a different perspective. The article I linked above was a game changer for me when I first read it 10 years ago, and I still reread it regularly.

Second, make sure you have enough emotional capacity to carry the conversation through to the end. If you haven’t slept properly for the last few days, your chances of having a constructive conversation are close to zero.

Wait at least until morning.

This advice works surprisingly well outside work too: don’t discuss difficult topics in the evening. In the evening our self-control is depleted, and it becomes harder to regulate ourselves. Casinos open in the evening not by accident. Children’s parties happen in the morning for a reason too.

Third trick that helps enormously is writing before speaking. Draft the message, prepare the opening. Writing forces your brain to slow down and apply a more thoughtful filter. And a good opening often sets the tone for the entire conversation.

Is It Possible to Never Have Personal Conflict?

No.

These techniques cover 90% of situations, but there is still the remaining 10%. Personal conflict will still happen from time to time.

That’s why one of the most important skills is learning how to repair relationships after conflict.

Don’t pretend the conflict never happened. Talk about the moment where communication broke down and take responsibility for your behavior - acknowledge the impact it had on the other person, even if that was not intentional. Then explain what you will do differently next time.

The best way I know to repair a relationship at work is to solve the original problem together. For example, instead of continuing to exchange pull request comments until everyone is exhausted, finish the pull request in a pair-coding session.

It is impossible to get rid of conflicts completely, but it is possible to recover from them. Often that makes the relationship even stronger.

Summary

Conflict itself is useful. The problem starts when conflict becomes personal.

And that can happen surprisingly easily. Many of us connect our work with our identity. So when someone criticizes our work, we may hear it as criticism of who we are, especially when we’re under pressure.

The goal is not to avoid disagreement. The goal is to express it clearly, but without damaging others:

  • describe the better outcome you want, not just what is wrong

  • acknowledge the context before criticizing

  • express your actual need clearly

  • propose a concrete next step instead of passively judging

When you feel emotionally involved, pause. Remind yourself that others have positive intentions. Have some rest before starting a difficult conversation. Write your thoughts down before speaking.

You won’t avoid personal conflict completely. Nobody can. But you can reduce how often it happens, and learn to repair the relationship when it does. That could turn difficult conversations into moments of trust, clarity, and better work.

Useful resources