1. Constant Self-Proof and Overcompensating
Junior developers often burn themselves out trying to prove their technical skills because they doubt themselves, whereas senior developers know they do not need to know everything.
Hear it at 0:11 →Engineering video
9:11 · 10 June 2025
Junior developers often burn themselves out trying to prove their technical skills because they doubt themselves, whereas senior developers know they do not need to know everything.
Hear it at 0:11 →Junior developers frequently overcommit by saying yes to things they do not know how to deliver, whereas senior developers say no more often and carefully manage what they commit to.
Hear it at 0:55 →Comparing oneself to others leads to imposter syndrome and burnout, which can be cured by shifting focus toward mastering your craft rather than worrying about what peers are doing.
Hear it at 2:05 →Relying entirely on ChatGPT to solve problems instead of enabling thinking can cause developers to go blank during live coding; senior devs rely on their judgment first and use AI selectively.
Hear it at 2:47 →Junior devs tend to blurt out the first answer that comes to mind, while senior devs take time, ask clarifying questions, and consider second-order consequences like added complexity.
Hear it at 4:04 →Junior devs often lack a strong self-image and overreact to bad interview feedback or code reviews, whereas senior devs have a thick skin and define their own criteria for success.
Hear it at 5:30 →Chasing trends and shiny objects from social media feeds results in knowing many things superficially and mastering nothing; mastery requires ignoring noise and focusing.
Hear it at 6:46 →Stuck developers often lack commitment and chase tricks, but the only true shortcut to becoming senior is a relentless focus on mastering the boring work like documentation and tests.
Hear it at 7:51 →If you feel stuck at junior or mid-level and you want to level up to senior, here are seven bad habits that are probably holding you back and you want to get rid of as soon as possible. The number one trait that yells junior from a mile away, it's constantly trying to prove yourself and your technical skills to others. When they start a new job, junior developers burn themselves out, you know, coding non-stop, even on the weekends.
They want to prove everybody that they are not a fraud. That's over compensating behavior. And it actually communicates the opposite. Every time you try to prove yourself and your technical skills, you are telling people that you are actually doubting yourself. Senior devs know they are not being paid to know everything. We have Wikipedia for that. They know that they don't have to prove themselves to anyone, only to themselves.
They solve problems, then they close their laptops and go home. Which brings me to the junior habit number two, not managing expectations. Whenever you see a junior developer who's falling behind, you know, like they missed a deadline or they need some extra hours to get some work done and you ask them, hey, what's wrong? Well, they'll probably tell you that they got stuck because they don't know this and that.
Maybe they never built an API before, or they never did any testing or SQL. And that's partly true, junior developers lack tons of knowledge, but usually that's not the issue. No developer, no matter how senior they are, knows everything. The core issue is that they probably overcommitted. They said yes to something that they don't really know how to deliver. They failed to manage expectations, and now they are paying the price.
That's because it's very easy to be a yes man or woman to just say yes, yes, yes. The hard part, it's to deliver on what you agreed on. Which is why senior developers are a lot more careful about what they commit to. They say more noes than yeses. what they don't know before jumping in. The second part of managing expectations. It's managing your own expectations over yourself. And you think that you have to know everything and that every other developer around you is just smarter and more senior than you are, then you will fall deep into imposter syndrome and probably burn out.
What I found out in over 11 years of writing code myself and coaching other developers, is that the best way to cure imposter syndrome forever is by shifting your focus. You go from focusing on what other developers around you are doing and how you compare to them, to focusing on actually mastering your craft and pushing the boundaries on what's possible. Senior devs forget comparison and instead, they get lost into mastering they craft.
The next junior habit you want to get rid of, if you want to become a senior dev, is getting addicted to chat GPT and using AI to solve all your problems. I see software engineers, junior and senior, using AI tools to basically skip the thinking instead of enabling it. One developer in our mentorship, and this was a 10 years experienced developer, whenever he had a question or an issue, he would just ask you to the AI.
Even the most basic thing like writing a four. When we ask him to disable chat GPT in a live coding interview practice, you know, just for fun, then the guy literally went blank. He couldn't write a line of code, let alone think about how to solve how to actually solve the problem. He was completely dependent on AI. Senior developers rely on their judgment first. And then they use AI tools whenever they see fit.
To write repetitive code, to brainstorm, technical discussions, to write the docs. But they don't outsource their whole thinking process to chat GPT. it, that clearly separates senior devs from junior devs. Is that whenever they are being asked something, be it in an interview or a tankal discussion, junior devs just jump in and answer, usually with the first thing that comes to their mind. Meanwhile, senior devs are actually taking some time and thinking about the answer.
For example, when the product manager asks for solutions, senior devs don't just rush in and give whatever answer comes to their mind. They ask clarifying questions. They ask why, and only when they have the full context, they pronounce themselves about the solution. And you know, this gives them a vibe of confidence. Because they take their time. They think first, and then talk second. If you want to become a senior developer, spend more time asking the right questions, rather than giving an incomplete answer.
And here's a tip: the best way to develop the skill of thinking like a senior dev, it's by considering what we call second-order consequences. Simply, ask yourself, what if? What if we add a caching service to our API? Of course, performance might improve, but also complexity. Then you'll have to deal with things like caching validation, etc. By going through this thinking process, you will avoid just jumping in with an empty answer that basically signals I'm a junior dev.
Onto the next junior habit taking everything personally. And the thing here is that junior and mid-level devs don't usually have a strong opinion on themselves, which is why any piece of bad feedback, be it in a ten-kel interview or a code review, can totally destroy their confidence. For example, they fail a live coding interview and they decide to stop everything and go and do lead code for six months.
into a cloud certification, which they probably don't need. That's because they overreact, and when they overreact, they overinvest. Senior devs know themselves beyond a single experience. So they don't take everything to heart. They have this kind of been there before attitude. When things go wrong, you know, they try to understand the situation, write down their learnings and move on, put it to sleep.
They have what we call a thick skin. And most importantly, they kind of develop their own criteria for success and failure. So, if people, for example, try to use the result of a technical interview or negative feedback to deny them a salary raise or a promotion, they don't give in. Because they know their own value and they don't take things personally. The next junior level habit is planning your career based on hype, shiny objects and FOMO.
The thing with junior developers is they very easily fall victims to trends, shiny objects and decide what to invest their precious time into, based on what's popping up in their YouTube feed. That's how you end up knowing 100 different things and mastering none. Which in the current job market, which is insanely competitive, is the equivalent to a career suicide. Mastery requires focus. And focus requires saying no, senior engineers learn how to differentiate between signal and noise.
And one of the key to this is to get rid of the chaos in your email inbox, in your YouTube feed, and your social media. Simply limit your exposure to shiny objects. Which I just trying to take advantage of your, you know, FOMO, fear of missing out. Remember, the grass is not greener on the other side, it's greener when you water it. And finally, the last habit you want to get rid of, if you want to get to senior dev, hunting for shortcuts.
A lot of developers get stuck at mid level and never get to senior. lack the commitment needed to level up. The only shortcut I found to becoming a senior software engineer, it's relentless, consistent focus on mastering your craft and saying no to everything else. That's what it takes. And when you accept that, when you stop looking for shortcuts and tricks, and when you commit to putting in the work, no matter what, that's when your software engineering career will start taking off.
The main reason why it took me seven years to get to senior instead of three, it's because part of myself was always busy chasing the best way to cheat instead of committing fully and doing the work. And by committing fully, I mean doing the boring work. That's the kind of stuff most of your developer colleagues don't like doing, like maintaining documentation, writing tests, handling crazy stakeholders, cleaning the mess after other developers, practicing boring stuff, like JavaScript fundamentals, instead of shiny objects, like AI agents or whatever comes next.
Now, question for you folks, what's one habit you want to drop or had to drop for you to level up to senior? Let me know in the comments, and I'll see you in the next one.