Falsehoods Junior Developers believe about becoming Senior

20 February 2024 · 81,771 views · Updated 18 March 2024

These are mostly my thoughts about what I was expecting as a junior and how I perceived senior developers. To be honest, I was romanticizing them quite a bit — senior developers were the people who could solve all the problems, constantly told me what to do, and knew all the answers. It's easy to fall prey to the fantasy that climbing the ranks will somehow bestow upon us a magical cloak of knowledge, authority, and ease.

I remember this one time before I was proficient in using the terminal. I had some issues with my Linux distribution. Something was not mounted properly or some file permissions errors, and I couldn’t figure it out on my own, so I asked one of the senior devs for help. The grace and elegance of how they navigated Vim and jumped around with shortcuts was inspiring — it stayed in my memory forever. I also aspired to be like them — fast, efficient, know-it-all coding gurus. The reality is much more grounded and, in its way, more rewarding.

Sometimes the senior devs are also just winging it.

The truth is that advancing your career is less about learning the terminal and more about embracing a new set of complex, nuanced responsibilities. Yes, you will get proficient in using the terminal. But you will also, in general, get better at solving simple problems, but those are not the problems you will be dealing with. To put it simply — The complexity of the issues will grow with your skill.

Before we start, this essay is not meant to discourage you but to prepare you for the reality ahead — Senior developers are not all-knowing 10x coders who can make unicorns out of thin air. So, let’s go through some of the Falsehoods that Juniors believe about Senior Developers.

Having all the answers

❌ Expectation: I will be able to solve all the bugs and know what's wrong in a matter of minutes.
✅ Reality: The more I learn, the more I realize how little I know. Let's figure this out together.

The belief that reaching a senior level means having all the answers is not just a misconception; it's a misrepresentation of what it truly means to grow and succeed in the tech industry. So many new algorithms, new technologies, and new frameworks are being released daily — saying that you, as a senior, have all the answers is destructive to your growth.

Your expertise isn't measured by the knowledge you possess but by your ability to:

  1. work with uncertainty
  2. ask the right questions to get to where you need to be in terms of understanding
  3. knowing how to find a solution once you have the understanding

It’s fine to say, “I don’t know,” or “I did not understand that completely; let’s discuss this in more depth.” Technology is a vast, ever-expanding universe. Your job is to solve problems, not to be a know-it-all. As a senior, you're more of an amateur guide who knows how to get from point A to point B rather than an all-knowing guru who has memorized all the world’s capitals.

Working with latest tech

❌ Expectation: As a senior, I'll get to play with the latest tech and build amazing projects!
✅ Reality: This legacy code isn't going anywhere, and neither am I. Let's fix some bug that happens once every full moon.

Many junior developers dream of working exclusively with the latest frameworks and tools. However, a senior developer's role often involves maintaining and improving legacy systems. These systems carry the weight of years of business logic, customer data, and operational insights. As a senior developer, you'll find that a significant part of your role involves understanding these systems, figuring out why they’re breaking, and optimizing them to meet current and future demands. While also making sure not to break anything yourself.

Yes, it’s not as fun as it sounds, but that’s the reality — most of the software nowadays are legacy applications that require refactoring (which won’t be approved any time soon) so you'll have to patch it up and work with what you have.

No more boring tasks

❌ Expectation: Being senior means I can avoid all the boring tasks.
✅ Reality: Endless meetings, documentation, and code reviews… Oh, and did I mention debugging legacy systems on Friday at 6 PM?

If only! If you’re expecting that once you’ve risen the ladder, you’ll be solving exciting problems left and right and not dealing with bureaucracy, I will have to disappoint you. The senior role comes with its share of seemingly mundane yet essential tasks: endless meetings, meticulous documentation, thorough code reviews, and, yes, debugging legacy systems at the most inconvenient times.

You might think ewww, meetings, documentation, code reviews. But once you reach the senior level, you will have a love-hate relationship with them. On the one hand, you will be annoyed that there’s little documentation; on the other hand, you will be sure the project is maintainable even after five years. Meetings will annoy you because they take so much time, but they make you happy because everyone is aligned and doing what’s needed. Code Reviews will annoy you because people will try to merge weird things that you need to improve, but you will be happy that your team is getting better based on your feedback.

Enjoyed the read? Join a growing community of more than 2,500 (🤯) future CTOs.

In embracing the full spectrum of your role — including the boring parts — you'll find that this can become the most fulfilling part of your work, filled with opportunities for impact and growth.

Making big changes

❌ Expectation: Has a million ideas on how to change this company 180 degrees! Let’s improve everything!
✅ Reality: Knows that nothing will change without management approval and the necessary budget.

It's a common sentiment among junior developers to look at the systems, processes, and technologies around them and see endless opportunities for improvement. I was like that as well. I remember joining a company, taking a look at how they do things, thinking I knew better, and starting shooting suggestions left and right. When you’re young, you’re a hammer, and everything looks like a nail. This zeal is not only admirable but necessary for the evolution and growth of our industry. This way, you get to make tons of mistakes that will make you understand that not everything is a nail, and a hammer is not the only tool you should have.

Learn to communicate the value of your ideas in terms that resonate with relevant stakeholders, figure out how the budget is allocated, and take part in resource planning. The bigger the project, the harder it will be to jump through all the hoops, but well worth it.

As you grow in your expertise, you see that bringing change requires time — building a case for your idea that resonates not just on a technical level but also aligns with organizational goals, budgetary limitations, and risk management considerations.

Building things is just fun; building things that bring benefit to the company is fun and rewarding.

Time to relax

❌ Expectation: Once I become a senior, I will have more time to relax.
✅ Reality:  It’s fine, I’ll finish the work on Saturday.

Or

❌ Expectation:  I'll make sure to have a perfect work-life balance once I'm senior.
✅ Reality: Balancing deadlines, mentoring, and personal life is like juggling knives. Occasionally, one does get dropped.

The workload doesn't necessarily decrease; it evolves. You might find yourself dedicating weekends to wrapping up projects or tackling unexpected issues. Your responsibilities extend beyond coding and technical tasks to include mentoring, strategic planning, and, often, greater involvement in the operational aspects of projects. You become more accountable and receive a higher salary for your commitment — junior developers don’t really care if their task is blocking ten other people and project delivery — but you do. These responsibilities mean that your work can extend into the evenings or weekends, especially when deadlines loom or unforeseen issues arise.

The expectation of having more time to relax as a senior is, in many ways, a misunderstanding of the nature of senior roles. While you do gain more autonomy over your schedule and the types of projects you work on, this autonomy comes with the responsibility to manage and deliver on multiple fronts, often requiring a juggling act between professional obligations and personal life.

I encourage you to develop strategies that support a sustainable balance between work and life. This might involve honing your time management skills or learning to delegate more effectively. It also means making a conscious effort to prioritize your health and personal relationships rather than a higher salary.

Deciding what to do

❌ Expectation: Once I become a senior, I will lead big projects, have a big impact, and tell others what to do!
✅ Reality: I miss the times when people told me what to do.

There's a particular expectation I'd like to address today: the notion that rising to a senior position means you'll no longer be involved in hands-on work, focusing instead solely on giving out tasks to other people, mentoring juniors, or focusing purely on architecting. While it's true that senior roles involve a significant amount of meta-work — planning, thinking, making decisions — there’s still a lot of hands-on stuff that needs to be done — fixing legacy code base that only you know how to fix, performing code reviews for the new project, creating diagrams for the management to understand the security of the platform etc.

The more senior you become, the less people will tell you what to do, and the more they expect you to know what needs to be done. You go from dealing with tasks like “Implement quicksort instead of mergesort in function xyz” to “The management has decided to integrate AI in the HR department. How can we make it happen?” Both of those require hands-on work but on a different level.

With great power comes great responsibility — and anxiety. Leading big projects means facing the pressure of making the right decisions and the fear of failure. It's a rewarding challenge, but it can also be a daunting one. Eventually, you might miss the days of focusing solely on coding tasks without the added responsibilities of figuring out the big-picture transitions.

Becoming irreplaceable

❌ Expectation: Once I become senior, they won’t be able to lay me off.
✅ Reality: I hope I won’t be laid off.

It's a comforting thought to believe that seniority equates to job security. However, the reality of our industry, known for its rapid evolution and fluctuating market demands, tells a different story. You might be thinking, “I’m the only one who knows how to fix this legacy system; they wouldn’t dare to let me go,” and then they close down the whole project entirely, making your role redundant.

While senior roles do come with a degree of stability thanks to the experience and expertise required to attain them, the notion that one cannot be laid off is a myth. Companies face various pressures—economic downturns, shifts in strategy, mergers, and acquisitions—all of which can lead to restructuring and, unfortunately, layoffs that affect employees at all levels. Drastic times call for drastic measures, a.k.a “investors are expecting higher margins”.

I think the tech industry is one of the few industries where keeping up with the latest developments is a must. I don’t mean learning every new framework, but at least keeping up with what’s on the market. Embracing the mindset of a lifelong learner and staying adaptable safeguards your career from almost any unforeseen circumstances.

Being the only one in the company who knows some obscure framework that was used ten years ago does not give you a competitive edge during hiring.

UPDATE 18th March 2024: If you prefer watching videos rather than reading, or if you just want to see my face — I recorded a video version of this article. In the podcast-style video I talk more in-depth about the stuff that I wrote here. Here's the link.

That's it, let me know in the comments if you have any more falsehoods you think deserve a mention.

Other Newsletter Issues:

  • Moamar

    Do you think that Seniors always have an opportunity to find work because if the market is not good they can lower their salary and offer more knowledge and that will bring the opportunity to them, is that right ?

  • Anonymous

    Cool article

  • Ben Finney

    > Companies face various pressures […]. Drastic times call for drastic measures, a.k.a “investors are expecting higher margins”.

    That is itself an external pressure. And it’s one that we cannot sustain, it’s a problem that needs to be solved.

    We need business that can simply provide good service to customers, without investors unreasonable expectation of “higher returns”. A system that rewards business which stays in business, instead of the chaos of huge unreasonable expectation followed by mass layoffs.

  • Gautam

    Honestly, climbing from junior to senior was less about coding and more about mastering soft skills. I found that being able to communicate effectively, manage my time, and work well in a team made the biggest difference. Dealing with bigger problems and more responsibility was tough, but learning to lean on my team and ask the right questions helped a lot.

  • None of your business

    Dam! This is spot on!

  • Martin

    Agreed. As a senior consultant, I have mentored many junior developers of the companies that hired me and usually, within a year or so, they were sovereign enough to implement Jira stories on their own, respecting good coding practices, architectural patterns, tests, etc. Seeing such results make me happy, but the bad side of this is, that once the project was done, I wasn’t needed anymore. At least not as an engineer. I was simply too expensive. This doesn’t apply to every project of course ,especially if the project is continuously evolving. But many projects are not, they were ordered by a customer / market participant and once delivered, nothing will happen for quite a while

    1. Jag

      Could you mentor me please?

  • Jack

    Nowadays a junior developer struggling with a problem can ask AI to find a solution. So soon senior developers will become obsolete 🙂

    1. Zozo

      Then easily become senior oh wait…

  • Martin

    Agree with most. Great writing.
    I don’t necessarily agree with the “I’ll finish this on Saturday” approach. In Europe we’re pushing more and more towards a healthy workload regardless of your seniority. Yes there are exceptions but overall it sounds more like an Americanism.

    🙂

    1. Miguel Ángel

      Try to work in Spain, you sign 40 hour/week but have to work 60 hour/week free.

  • Luca

    Learning to say “I don’t know” and using it as a springboard to dive deeper into problems has been the most liberating aspect of my progression in tech. The real skill comes from figuring stuff out on the fly, not from knowing everything upfront.

  • Anonymous

    Good article! Accurate, relevant, and well-written, which is an anomaly in the world of software engineer. Kudos.

    1. Anonymous

      I agree. Not sure how I got here, was scrolling through my feed and this article popped up but am so grateful that I did. I do not work in this industry but in my line of work we are labeled as Junior and Senior. Funny I am also a “Junior” and will be training to be a “Senior” in about a week. Kind of nervous about it, though 😬. Anyways, your words meant a lot to me. Everything pin pointed to the type of changes that I will be expecting, which tbh was afraid of but after reading this what I feared came clear in reading this. Thank you for showing me a better understanding. Because of you I feel more confident in the transition of Junior to senior.

  • Slider

    This article is spot on!

  • Anonymous

    Did you climb into my brain to write this? 😀

  • Andy

    The table of contents is a bit broken. The last five links don’t work.

    1. Vadim Kravcenko

      Thanks, fixed that

  • Anonymous

    In my company, every single HR position is held by women.

    I think you may be getting offended based on a harmless meme.

    1. Anonymous

      I know right? In my company all the HR reps happen to be women too and… so is our CEO and many of our VPs and Execs. People are out here just looking to be offended smh.

  • Rodrigo

    On point, thanks!

  • Jeff

    Great article! So much of this resonated with me as a senior developer. I will be reading more of your content!

  • Jason

    Nice writeup! Managing legacy code is such a big thing and never really gets a proper treatment at universities or in general.

  • Anonymous

    Just a note on the Harry Potter meme – is there a reason the women in the image are “HR Head” and “Projector Lady” or am I to take it that it’s pure coincidence that none of them are in eng?

    1. Anonymous

      I too was bothered by the meme, so you weren’t the only one

    2. Vadim Kravcenko

      No worries, removed the meme. Hope you still had fun reading the article.

  • Anonymous

    Great writeup!

    1. Anonymous

      Wow, just wow.

      This really put things into perspective for me, even though I’m technically not a junior software developer anymore.

      I believed most of these myths until I read through this article, and I feel like I know have a better understanding of what actually goes on in reality.

      My only hope is that one day when I reach the senior position that I have a better control over my life and the confidence to know when it’s time to move on to a different role, and not get too attached to any piece of work.

      Thanks for the truly insightful article.