DEV Community

Feng Zhang
Feng Zhang

Posted on • Originally published at prachub.com

How to Answer "What is Your Greatest Weakness?" in a Tech Interview

Most candidates still treat "What is your greatest weakness?" like a trap. In tech interviews, it usually isn't. It's a check for self-awareness and humility. Interviewers want to see whether you can name a real weakness, explain how it affects your work, and show that you manage it with a repeatable process.

The original PracHub guide gets this right: a good answer has three parts, and the last one matters most.

If you answer with "I'm a perfectionist" or "I work too hard," you'll sound rehearsed. If you name a weakness that makes you unqualified for the role, you'll hurt yourself. The sweet spot is a genuine, non-critical weakness plus a concrete system that keeps it from hurting your team.

What interviewers are actually testing

At companies with structured interview loops, including FAANG-style processes, this question usually comes down to three things:

  • Self-awareness
  • Intellectual humility
  • Your ability to respond to feedback

Every engineer has blind spots. The interviewer knows that. What they want to learn is whether you can talk about yours without getting defensive or turning the answer into a humblebrag.

That means your answer should sound honest, specific, and current. You are not confessing failure for drama points. You are showing that you understand how you work.

A simple framework that works

A strong answer is usually 60 to 90 seconds. Longer than that, and you risk rambling.

Use this three-step structure.

1. State the weakness directly

Say what the weakness is in plain language.

A good opening is:

"In the past, I have struggled with [specific weakness]."

Keep it clean. Do not apologize. Do not instantly spin it into a strength.

2. Explain how it showed up in your work

Next, tie the weakness to real engineering work. This is the part many people skip, and that's what makes the answer sound fake.

Use a pattern like:

"When I'm working on [type of task], I tend to [negative action], which causes [negative impact]."

This shows that you understand the cost of the weakness, not just the label.

3. Spend most of the answer on your mitigation system

This is the part interviewers care about most.

Do not say, "I'm working on it." Say what you actually do.

A useful pattern is:

"To mitigate this, I now [specific system or action]. Since I started doing that, [positive result]."

The key word here is system. A calendar rule. A design-doc habit. A review process. A communication trigger. A debugging cutoff. Something concrete.

Three examples for software engineers

These examples work because they are believable and process-driven.

Junior engineer: getting stuck too long before asking for help

If you are early in your career, a common weakness is trying to solve every bug alone.

A solid answer sounds like this:

"My biggest weakness has been staying stuck on a bug for too long before asking for help. Early in my current role, I would spend two or even three days debugging a pipeline issue because I did not want to interrupt senior engineers. I realized that was slowing down the sprint and making the problem more expensive than it needed to be. To fix that, I use a 'One Hour Rule.' If I am blocked for more than an hour, I write down what I tried and post it in Slack with context. That way I am not asking vague questions, but I am also not failing silently. It has improved how quickly I close tickets."

Why it works: it is honest, not fatal, and the mitigation is specific.

Mid-level engineer: over-engineering simple solutions

This one is common for engineers who care a lot about design.

Example:

"In the past, I have had a tendency to over-engineer. On some projects, I would build a more abstract or scalable solution than the requirements justified. That added complexity and slowed delivery on a project where a simpler CRUD implementation would have been enough. To manage that, I now use YAGNI as a hard check before I start coding. I write a short design doc that limits the scope to current business needs, and I ask a peer reviewer to call out any unnecessary abstraction. That has kept my designs more practical without lowering quality."

Why it works: the weakness is real, but it does not suggest incompetence.

Senior or Staff engineer: weak delegation on architecture work

At higher levels, your weaknesses are often about team growth and how work gets distributed.

Example:

"As I moved into a Staff-level role, one weakness I noticed was that I held onto critical architecture work instead of delegating it. I could move fast on those tasks myself, but it created a bottleneck and reduced growth opportunities for mid-level engineers on the team. I changed my process so that I no longer write the first draft of major design docs by default. I assign that draft to another engineer and review it instead. It can take a little longer upfront, but it spreads architectural ownership and removes me as the bottleneck."

Why it works: it shows maturity, not ego.

Four answers that usually fail

Some weaknesses are bad because they sound fake. Others are bad because they raise direct concerns about your ability to do the job.

Avoid these.

1. The humblebrag

Examples:

  • "I work too hard"
  • "I'm a perfectionist"

These are transparent. They signal dishonesty or weak self-awareness.

2. The fatal flaw

Examples:

  • "I hate writing tests"
  • "I struggle with basic algorithms"

If the weakness cuts into core job skills, it can sink your interview.

3. The blame answer

Example:

  • "I get frustrated when teammates write bad code"

This tells the interviewer you may be hard to work with. It suggests low empathy and weak collaboration.

4. The fixed-trait answer

Example:

  • "I'm just naturally disorganized"

This fails because it sounds permanent. The interviewer wants to hear a manageable work habit, not a personality verdict with no plan attached.

How to find a real weakness to use

If you are not sure what to say, look at past feedback.

Your performance reviews, 1:1 notes, or manager feedback are usually the best source. Focus on constructive feedback you have actually received, then convert it into the three-part framework.

For example:

  • "You need to communicate more during incidents"
  • "You should spend more time on documentation"
  • "You sometimes go too deep before aligning on scope"

Those are useful because they are real and specific. Once you add context and a mitigation system, they become strong interview material.

That is also why generic interview prep often falls flat. You do not need a clever answer. You need an honest one with some process behind it. If you want more prompts to practice this kind of response, PracHub has a useful list of tech interview questions here.

Does STAR work here?

You can force this answer into STAR, but it is usually awkward.

STAR is good for behavioral stories with a clear scenario and outcome. "Greatest weakness" is different. It is about an ongoing pattern in how you work. That is why the simpler structure, confession, context, mitigation, works better.

It keeps you focused on the present-day system, which is what the interviewer actually wants to hear.

A good answer has one job

Your answer does not need to impress anyone with drama or polish. It needs to show that you know your weak spots and that you do not leave them unmanaged.

That is what makes an answer credible:

  • The weakness is real
  • It is not disqualifying
  • You can explain its effect on your work
  • You have a concrete process that keeps it under control

If you want the original version with the sample answers and breakdown, read the full PracHub post here.

Top comments (0)