My Salary Increased 13 Times in 5 Years – Here Is How I Did It

My income has increased 13 times in the last five years of my career while being an ordinary Software Developer.

I joined SAP Labs India in 2014 as an Associate Software Developer after graduating from college. When I joined them, my salary was ~$500. I was happy with it. I thought that was the norm.

But I was startled to learn how underpaid I was in India when I started conversing with my friends who had immigrated to the US and held similar jobs. I started talking to my other friends in India. At the time, they received at least twice as much compensation as I did.

With eight years of experience overall, I currently make almost 13 times as much as I did in my first job.

Sounds unrealistic, right?

Here are the key factors that, over the past five years, have enabled me to achieve this.

  1. Prepare for interviews diligently
  2. Change jobs frequently
  3. Learn from rejections
  4. Take higher responsibilities
  5. Keep learning new technologies

1. Prepare For Interviews Diligently

In the software Industry, the skills that a developer is assessed on during interviews are different than what he/she works on in their day job.

We are typically evaluated on our aptitude for problem-solving, data structures, and algorithms throughout the interviews. In our day jobs, we don’t have to invert binary trees or calculate the shortest path between two nodes in a graph. Unfortunately, companies currently rely on this system to find and hire talented coders.

So It is necessary to brush up on these fundamental concepts before sending out job applications. The preparation phase is uncomfortable and is definitely hard to manage along with working at your current job.

I worked with a fantastic team at SAP. Worked with cool people. However, I wasn’t working with the newest technologies, and we weren’t frequently releasing new features.

I was in my comfort zone, making friends, and having fun. I never thought of upskilling myself and growing in my career.

After the realization that I was underpaid, I started preparing for interviews: started learning new programming languages, data structures, algorithms, and problem-solving skills in general.

Every day after my work and on weekends I spent a couple of hours preparing for interviews. It was hard. But there’s no other way. The market is competitive. You need to stand out to get jobs that offer competitive salaries.

After a few months of preparation, I started to feel confident enough to start applying for new jobs.

After a lot of rejections, finally, I was able to get into a decent company. I got more than a 100% hike during this switch. This showed how underpaid I was and what the market standards were at the time.

Know that it is absolutely necessary to prepare for interviews and more importantly you need to focus and keep yourself motivated during this hard phase.

2. Change Jobs Frequently

I advise you to switch jobs at least once every two to three years. Especially when you are first starting out in your job. This has several benefits, including:

  1. You get to work on a variety of domains, products, and technologies. The experience you gain from working with different people is invaluable.
  2. Market salaries increase when a nation’s economy expands. Staying at one company for too long will ultimately result in you being underpaid. Of course, this is not always the case. I have friends who have got promotions and made a lot of money staying at a single company. But in general, it’s a good idea to switch your employer once in a while to get a salary on par with market standards.

In my second company, I was mainly working on maintenance tasks and wasn’t really doing a lot of coding. The tech stack was old and no big projects were given to our team.

I hated the fact that I was not making much progress in terms of my learning. So after working there for about a year, I decided to change my job again.

After interviewing at multiple companies, I got job offers from Amazon and Plivo (a startup). It may seem like choosing Amazon would have been the obvious choice.

But when I thought about it and talked to a senior developer who had worked at Plivo a couple of years ago, it made more sense to join Plivo at the time. My main motivation at this point was to join a company for rapid growth in terms of learning. And Plivo had the potential to give me exactly that.

This proved to be one of the best choices I made in my career. I stayed at Plivo for 3 years where I was promoted twice in 2.5 years and I learned a lot:

  • GoLang
  • Python/Django
  • AWS
  • Terraform
  • Releasing everyday
  • Scaling backend services
  • Solving production issues, etc.

During this switch, I got about another 40% salary hike.

3. Learn From Rejections

When you interview for a job, one thing is certain. You will face a lot of rejections.

Even after months of preparations, it is not guaranteed that you will do well in interviews.

There are multiple factors involved in clearing a job interview. Even if you do well in all the interview rounds, you can still get rejected.

Sometimes your skills and experience may not be the right fit for the position they’re hiring for. Sometimes the expectations are too high for a role. Although most of the time it is us who screw up. So, it’s important to know that on the road to cracking interviews, there is a lot of rejection.

When I was job searching a couple of years ago, I attended interviews with nearly 30 companies. And finally, I was able to crack 3 companies. That’s a 90% rejection rate!

And interviewing along with a day job at a startup makes it even more difficult. I felt like giving up multiple times. But I had to keep myself motivated and remind myself again and again why I started looking out in the first place.

It was a tough phase. Looking back I’m glad I didn’t give up!

Now I have better pay, a better work-life balance, and a better boss.

All because I learned how to face rejection.

4. Take Higher Responsibilities

You are paid according to your abilities.

As time goes by, just gaining experience in your current role is not enough.

You need to constantly look for ways to grow in your career. Move into difficult roles and take on higher responsibilities.

It is common that we all face imposter syndrome every single day of our job. Struggling with the sense we haven’t earned what we’ve achieved and are a fraud. These feelings can contribute to increased anxiety and depression, less risk-taking in careers, and career burnout.

We consistently have lower expectations for our abilities and accomplishments. Know that this is a common feeling among people across industries.

Get over this feeling and be ready to take on higher roles and responsibilities in your career. It may seem difficult in the beginning, but you can always figure it out.

Taking on more challenging tasks is exactly how you grow in your career.

A higher role means a higher salary.

As mentioned earlier, I joined a startup (Plivo) for my third company.

I joined as an SDE 1. In a matter of 2.5 years, I got promoted twice and became SDE 3. It is primarily a lead developer role in the team. Apart from coding, the other responsibilities in this role were:

  • Mentoring junior developers
  • Quality of your team’s codebase
  • Getting involved in org-level discussions
  • Helping solve production issues on priority, etc

It was scary in the beginning. I was not sure whether I’ll be able to handle the responsibilities. Even though it was hard in the beginning, I was able to handle it and do well.

Always be ready to take up higher responsibilities. This is an obvious way to make more money in your career.

5. Keep Learning New Technologies

Software is an industry that keeps changing rapidly compared to others. In terms of technologies used in solving engineering problems.

So it becomes important to keep yourself updated to stay relevant in the long term.

One way is to join companies that use a good tech stack. When I joined Plivo, I learned a lot about cloud service providers like AWS, maintaining infra as code through tools like Terraform, solving production issues, mentoring junior developers, etc. This knowledge definitely helped me in getting subsequent offers in my career.

If you’re not getting this kind of learning at the workplace, here are certain things you can do:

  • Keep a side project to work on.
  • Use the latest technologies in your side projects
  • Take Udemy courses in your free time
  • Follow blogs in your area
  • Join communities on Twitter, Facebook, LinkedIn, etc.

Even though I was working on an in-house technology at SAP, my first company, I constantly worked on side projects and shared them on ProductHunt. This helped me learn new technologies like Node.js, MongoDB, PostgreSQL, JavaScript, etc.

Even to this day, I keep at least one side project to work on.

Throughout my career, adding new skills to my arsenal has really helped me crack tough interviews.

How often Should I Change My Job?

With the booming Software Industry, the market standard for salary is increasing every year. Companies are paying a lot of money even for recent graduates.

As mentioned earlier, I highly recommend changing jobs every 2 or 3 years at the beginning of your career. This will mainly help in two things:

  1. Gain experience in different areas and technologies
  2. To make sure you are paid based on the market standard

This doesn’t mean, you will definitely be underpaid if you stay in one company for a long time. Companies like Google, Facebook, and many other employee-centric companies make sure their employees are always paid well.

So whether you should change your job, really depends on multiple factors:

  • How important money is to you
  • Job satisfaction in your current role
  • Technologies you want to work on
  • Commute distance to and from work
  • Your current priorities in life apart from work, etc.

If you’re really happy with your work, your boss, your compensation, and your office location, then there’s really no reason for you to look out.

I changed my first company after almost 3 years. Second company after just a year. Third company after 3 more years. Fourth company after just a year. I was not happy with work at some places. I was not happy with the work pressure at some places.

So this decision is totally up to you. Whether you see yourself working in your current role for the next few years or not.

How Can I Negotiate More Salary During A Job Switch?

One of the biggest mistakes I made during my salary discussions is not pushing for higher numbers aggressively.

I got good salary hikes during some job switches. And not so good in others. The main reason was I didn’t push hard enough during those discussions. I was afraid that my offer would get revoked If I push too hard.

Filling up a position is hard for a company, and for an HR team. Especially when it’s for a more senior role.

So after taking interviews with multiple candidates and finally selecting one, a company would have spent a lot of time and resources from their end that they cannot afford to let go of the candidate for saving a little money.

In general, they will agree to pay you what you ask for considering it is a realistic number. But this again depends on multiple factors:

  1. Interview Performance: How you performed in your interviews is a big factor in salary negotiation. Once interviews are over and the company evaluates candidates, they generally put candidates into multiple buckets like Strong hire, Average hire, etc. If they liked you during interviews, they will try to go the extra mile to get you on board in any case. For such candidates, companies can break their rules and pay a little more cash than usual to get you on board.
  2. Your current salary: If your salary is already high and you’re asking for more than the industry standards, then it might be difficult to get that number.
  3. Company salary range: Every company has different salary ranges for different roles. The HR team cannot offer you outside of this range. So do your research by talking to existing employees to check whether the company can offer you the numbers that you are asking for.
  4. Competing offers: Having competing offers will definitely help you negotiate a better salary. Let’s say you have an offer from company X. Then when you clear the interviews with company Y, you can take X‘s offer and ask Y for more salary.

In my last 2 switches, I was able to negotiate a higher salary because I had competing offers from good companies. Do not stop when you get your first offer. Use this to get into better companies with better pay.

Resources For Interview Preparation

Here’s a list of free & paid courses that helped me during my job search over the last 5 years:


As we discussed throughout this article, a 9-5 job can be rewarding if you play it right.

You don’t need to start a business to build wealth in the long term.

If you’re okay with working for someone else and learning along the way, then 9-5 is a great way to spend your time to make money.

Make sure you are learning new skills, stick through rejections, and change jobs frequently to make sure you’re not underpaid in this highly competitive market.

Related Articles:

  1. How To Crack Your Next Software Developer Job Interview: An Actionable Guide
  2. 8 Steps Guide To Ace A System Design Interview

1 thought on “My Salary Increased 13 Times in 5 Years – Here Is How I Did It”

Leave a Comment