← Back to list

Social Anxiety in Meetings: Why Speaking Up Feels So Difficult

Sometimes the hardest part of a meeting is not knowing the answer. It is deciding whether the room is safe enough to hear it.

CodeByUmar in Skill Stuff · 2026-07-09 11:19 · 55 claps · 13.5 min read paywalled
#technology #programming #software-development #software-engineering #web-development
Open on Medium ↗
Wiki topics: 💻 · Programming 🌐 · Web Development 🔒 · Cybersecurity 🧠 · Mental Wellness

Social Anxiety in Meetings: Why Speaking Up Feels So Difficult

Sometimes the hardest part of a meeting is not knowing the answer. It is deciding whether the room is safe enough to hear it.

Social Anxiety in Meetings: Why Speaking Up Feels So Difficult

Social Anxiety in Meetings: Why Speaking Up Feels So Difficult

There is a strange kind of silence that happens in engineering meetings.

The question is asked. The room pauses. A few people look at the document. Someone scrolls through the ticket. Someone else waits for the most senior person to answer. You know what you want to say, or at least you know which assumption feels wrong, but your voice does not move as quickly as your thoughts.

So you wait.

Maybe someone else will say it.

Maybe the concern is not important enough.

Maybe you misunderstood the requirement.

This may not be the right time.

Maybe speaking up will make the meeting longer.

Maybe your point will sound obvious.

Maybe it will sound stupid.

Maybe the team has already considered it, and you missed the conversation.

Then the moment passes. The meeting moves on. The decision becomes a ticket, the ticket becomes code, and two weeks later, the same concern returns as a bug, a rework, a missed edge case, or a production surprise.

That is the uncomfortable part about social anxiety in meetings. It is not always about lacking knowledge. Often, the person staying quiet sees something real. They notice a weak requirement, a missing permission rule, an unrealistic timeline, a risky abstraction, a data contract that nobody has named, or a workflow that only works in the happy path.

They are not silent because they have nothing to contribute.

They are silent because contribution has a social cost.

Software teams like to describe meetings as decision-making spaces, but meetings are also social systems. Titles matter. Past reactions matter. Confidence matters. Trust matters. Timing matters. Who speaks first matters. Who disagrees safely matters. Who usually gets interrupted matters. Who has been wrong publicly before matters.

A meeting is not only a place where ideas are evaluated.

It is a place where people evaluate the risk of being seen.

That is why speaking up can feel so difficult, even when the technical point is valid.

The Fear Is Usually Not the Meeting. It Is the Reaction.

Most developers are not afraid of sound coming out of their mouths.

They are afraid of what happens after.

Will the room pause awkwardly? Will someone dismiss the concern too quickly? Will a senior engineer explain why it is already handled? Will the product manager think you are blocking progress? Will the team treat your question as a lack of preparation? Will your manager quietly decide you are not confident enough? Will someone say, “We do not need to overthink this,” and move on?

That fear is not imaginary for many people. It is learned.

If you have ever asked a question and been made to feel behind, you remember it. If you have ever raised a risk and been labeled negative, you remember it. If you have ever challenged a timeline and been treated like you were slowing everyone down, you remember it. If you have ever spoken in a room where people were already impatient, you remember how quickly your body learned to stay quiet.

Teams teach people how safe it is to speak, not by saying “we value open communication,” but by how they respond when someone actually communicates openly.

A developer who stays silent in meetings may not lack confidence. They may have learned the room.

Smart Silence Can Turn Into Expensive Silence

Not every thought needs to be spoken.

That is part of maturity. Meetings already have enough noise. Some concerns are small. Some decisions are reversible. Some questions can be asked later in the ticket. Some details are better discussed with one person instead of the whole group. Some uncertainty is not worth interrupting momentum.

Good engineers learn restraint.

But restraint becomes dangerous when important risks stay private.

A permission concern should not stay silent because the meeting is moving fast. A data integrity issue should not stay silent because nobody else mentioned it. An unclear requirement should not be left silent if the code will have to invent the missing decision. A production risk should not stay silent because the room is tired.

This is where social anxiety creates real engineering cost.

The team does not lose only a comment. It loses signal.

The missing signal may have changed the design. It may have clarified the requirement. It may have prevented a duplicated rule. It may have exposed that the frontend and backend understood the behavior differently. It may have saved a week of rework.

One silent moment can look harmless.

Repeated silence becomes architecture.

The system starts reflecting only the thoughts that were easy enough to say out loud.

Meetings Reward Confidence More Than Accuracy

One reason speaking up feels difficult is that meetings often reward the wrong thing.

The person who sounds certain can shape the plan before the careful thinker has finished evaluating the tradeoffs. The person who speaks quickly can make uncertainty look like hesitation. The person with a title can make an assumption sound like a decision. The person who says “this is simple” can make everyone else feel irresponsible for noticing complexity.

But in engineering, the careful voice is often the useful one.

The person saying, “I am not sure this export means the same thing as the table view,” may be preventing a future bug. The person saying, “This permission rule sounds role-based, but resource ownership matters too,” may be protecting the system. The person saying, “This abstraction feels early,” may be saving the team from a reusable component full of flags later.

Those comments do not always sound confident. They sound conditional because good engineering often is conditional.

It depends on the data volume.

It depends on whether the backend enforces it.

It depends on whether the action is idempotent.

It depends on whether old records have that field.

It depends on whether the export should match visible rows or all filtered rows.

That kind of thinking does not always fit neatly into fast meetings. It needs a room that values precision more than performance.

When a team rewards confident simplification more than careful risk analysis, socially anxious people are not the only ones who lose. The system loses too.

Speaking Up Feels Harder When You Are Still Forming the Thought

Many valuable comments are not fully formed when they first appear.

You do not always enter a meeting with a polished argument. Sometimes you only feel that something is off. The requirement sounds simple, but one word feels dangerous. The proposed API seems fine, but the failure path is unclear. The design looks clean, but the state ownership feels wrong. The estimate seems possible, but only if nobody touches the old migration path.

That half-formed thought is hard to say.

It feels safer to wait until you can explain it perfectly. But meetings move quickly. By the time the thought becomes clear, the decision may already be made.

This is why good teams need language for unfinished concerns.

Not every contribution has to arrive as a confident conclusion. Sometimes the useful sentence is, “I cannot fully explain it yet, but I think there is a risk around ownership here.” Or, “Can we pause for one minute? I think the export behavior may not match what users expect.” Or, “I may be missing context, but should this permission be enforced on the backend too?”

Those phrases matter because they create a bridge between silence and certainty.

They let people raise a signal before the signal becomes a fully documented argument.

Experienced engineers know that early warnings often start as discomfort. The goal is not to accept every concern as true. The goal is to make it safe enough to inspect the concern before the team accidentally builds around a bad assumption.

Titles Make Speaking Up Feel Uneven

In theory, the best technical argument should win.

In practice, meetings are shaped by hierarchy.

A junior developer may notice a real issue but stay quiet because a senior engineer proposed the approach. A mid-level engineer may hesitate to challenge a staff engineer’s design. A frontend developer may avoid questioning a backend API because it feels outside their lane. A QA engineer may notice a workflow gap but wait because the meeting has become implementation-focused. A contractor may see a fragile pattern but decide it is not worth challenging the team’s habits.

The room may not intend to silence anyone.

It still can.

Titles create gravity. Some voices naturally pull more attention. Some comments are treated as direction, while others are treated as input. Some people can say “this worries me” and the room pauses. Others say the same thing, and the room asks for proof.

That difference teaches people when to speak.

Healthy senior engineers understand this. They do not use their title to close the discussion too early. They leave room for disagreement. They ask quieter people what they are seeing. They say when a decision is still open. They make it clear that challenging the design is not challenging the person.

A senior engineer who says, “This is my current thinking, but I want holes poked in it,” creates a very different room from one who says, “This is the approach.”

The technical quality of the meeting depends on that difference.

Remote Meetings Add Another Layer

Remote meetings make speaking up easier in some ways and harder in others.

You can think before unmuting. You can write in chat. You can avoid the intensity of a physical room. But remote meetings also create new friction. You do not always know when to speak. You worry about interrupting. The audio delay makes timing awkward. Cameras are off, so you cannot read whether people are confused, impatient, or open. Someone starts talking at the same time, and you retreat.

After that happens once or twice, silence becomes easier.

Remote meetings also make it easier for a few voices to dominate. If there is no clear facilitation, the meeting becomes a stream controlled by whoever is most comfortable jumping in. The quieter people may still be thinking, but the room interprets silence as agreement.

That assumption is dangerous.

Silence in remote meetings often means many things. It can mean agreement. It can mean confusion. It can mean hesitation. It can mean disagreement without a clean entry point. It can mean someone is still processing. It can mean someone typed a comment, deleted it, and decided the moment had passed.

Good remote teams create multiple ways to contribute. They make room for chat comments. They pause before decisions. They summarize the current direction and ask for objections. They do not treat speed as proof of alignment.

A decision is not stronger because nobody unmuted fast enough to challenge it.

Social Anxiety Gets Worse When Meetings Have No Clear Shape

A meeting without structure makes speaking up harder.

If nobody knows whether the meeting is for brainstorming, decision-making, status sharing, design review, or approval, every comment becomes harder to judge. Are we still exploring, or are we committing? Is disagreement welcome, or are we only confirming? Are questions useful, or will they derail the agenda?

Ambiguous meetings create social risk because people do not know which kind of participation is appropriate.

A clear meeting shape reduces that anxiety.

If the goal is exploration, say that. If the goal is a decision, say what decision is needed. If feedback is welcome, name the kind of feedback. If the decision owner has already chosen a direction and only needs implementation input, be honest about that too.

Engineers are good at working within constraints when the constraints are visible.

The same is true in meetings.

When the room knows the purpose, people can contribute with less fear. A concern in a design review feels normal. The same concern in a rushed status meeting may feel like a disruption. A question in a planning session feels useful. The same question after the decision has silently been made may feel awkward.

Clarity changes the emotional cost of speaking.

The Best Leaders Reduce the Cost of First Words

For socially anxious people, the hardest part is often not the full explanation.

It is the first sentence.

Once the thought is in the room, the conversation may become easier. But breaking the silence requires energy, especially if the meeting is fast or dominated by confident voices.

Good leaders reduce the cost of first words.

They do this by creating openings. They pause before decisions. They ask, “What are we missing?” They ask, “Does anyone see a risk with this approach?” They say, “I want to hear from people who have not spoken yet.” They give people a moment to think instead of treating instant silence as agreement.

But the best leaders do something even more important: they respond well when someone does speak.

They do not punish the first rough version of a concern. They do not require perfect wording before taking the signal seriously. They do not turn every question into a test of competence. They help shape the thought.

A response like, “That is a good concern. Are you worried about the backend enforcement or the UI visibility?” can turn anxiety into collaboration.

A response like “We already covered that” can shut down the next three meetings.

The cost of speaking is created by the room.

So is the safety.

The Developer Also Has a Responsibility

It would be easy to place all responsibility on the meeting culture, but that would be incomplete.

Developers also need to build the skill of speaking with clarity and judgment.

Social anxiety is real, but silence is not always harmless. If you see a risk that affects users, data, security, delivery, or long-term maintainability, the team needs that signal. It may not need a speech. It may not need drama. It may only need one clear sentence.

“I think there is a permission risk here.”

“I think export and table filters may diverge if we build them separately.”

“I am concerned this abstraction is being created before the pattern is stable.”

“I think the backend needs to enforce this, not only the UI.”

“I am not sure old records have this field.”

These sentences are small, but they change the room. They make the invisible concern visible. They give the team a chance to inspect it.

The goal is not to become the loudest person in every meeting. The goal is to stop hiding important signals because the first sentence feels uncomfortable.

That takes practice.

It also takes self-trust.

You do not need to be perfectly certain to ask a useful question. You only need to be honest about what you are seeing.

After the Meeting Is Still Part of Speaking Up

Sometimes the meeting moves too fast.

Sometimes you do not find the words in time. Sometimes you realize the concern ten minutes later. Sometimes the room dynamic was not right. Sometimes the point would be better handled with the decision owner directly.

That does not mean the chance is gone.

Following up after the meeting is still speaking up.

A message like, “I thought more about the export decision. I think we should confirm whether export means visible rows or all filtered rows before implementation,” can save the team from a bug. A comment on the design document can reopen an unclear assumption. A note to the tech lead can surface a risk without turning it into a public debate.

This matters because social anxiety often frames speaking up as a single dramatic moment. Either you say it live, or you fail.

That is not true.

Engineering communication has many channels. Live meetings are only one of them. Documents, comments, follow-up messages, code review, pairing sessions, and async discussions can all carry the signal.

The important thing is not that you spoke perfectly in the moment.

The important thing is that the risk did not stay trapped in your head.

What I Learned From Staying Silent Too Often

I have stayed silent in meetings and regretted it later.

Not always, because my point was definitely right. Sometimes it was only worth discussing. But the cost of not saying it became clear when the same concern returned as rework.

A requirement stayed vague, and the code implemented the wrong interpretation.

A reusable component was created too early, and later, every new use case added another flag.

A permission decision was treated as UI behavior, and backend enforcement came later under pressure.

A deadline sounded fine in the meeting, but everyone privately knew the old migration path was risky.

None of those failures came from one person’s silence alone. Software is more complicated than that. But silence contributed. It removed a piece of information the team could have used.

That changed how I think about meetings.

I no longer ask, “Will this comment sound perfect?”

I ask, “Will staying silent make the decision worse?”

If the answer is yes, I try to say something, even if the first version is not polished.

That shift helped me more than any public speaking advice ever did.

Final Thought

Speaking up in meetings feels difficult because meetings are not only technical spaces.

They are social spaces where people measure risk, status, trust, timing, and belonging. You may know the answer and still feel your throat tighten. You may see the bug coming and still wonder whether the room wants to hear it. You may have the right question and still wait until the moment disappears.

That does not make you weak.

It makes you human.

But the best engineering teams cannot afford to depend only on the voices that feel comfortable speaking first. They need the quiet concerns too. They need the half-formed warnings. They need the person who notices that the requirement is vague, the permission rule is misplaced, the abstraction is early, the cache key is incomplete, or the failure path has not been designed.

Those comments are not interruptions.

They are system protection.

Good teams make it safer to say them. Good leaders create openings. Good senior engineers respond with curiosity instead of ego. And good developers learn to raise important signals even when their voice shakes a little.

The goal is not to speak more for the sake of speaking.

The goal is to make sure the system gets the information it needs before silence becomes rework.

So the next time you feel that hesitation in a meeting, ask yourself one quiet question:

Will staying silent make this decision worse?

If the answer is yes, your comment probably belongs in the room.

Call to Action

👏 If this captured how meetings feel when you know the answer but still hesitate, clap so more developers can find it.

💬 What helps you speak up when the room feels difficult?

🔁 Share this with someone who leads meetings, joins design discussions, or quietly notices risks before anyone else says them.

📩 Follow me for more practical lessons from real engineering teams.


메타데이터
post_id
2359dcdba0bc
slug
social-anxiety-in-meetings-why-speaking-up-feels-so-difficult-2359dcdba0bc
url
https://medium.com/skillstuff/social-anxiety-in-meetings-why-speaking-up-feels-so-difficult-2359dcdba0bc
canonical_url
https://medium.com/skillstuff/social-anxiety-in-meetings-why-speaking-up-feels-so-difficult-2359dcdba0bc
author_url
https://medium.com/@codebyumar
status
ok
fetched_at
2026-07-10 21:23:43