How I doubled my salary in 4 years as a software developer

Jan 6, 2022
header image

Nowadays, the subject of salary is taboo in the corporate world; some companies even go the extra mile and include a clause in their employee contracts prohibiting them from discussing their salaries with their peers. Unfortunately, this is only beneficial to these companies because they often use it to pay some employees less than their colleagues who occupy similar positions. I have experienced this first-hand in my career. When I finished university a few years ago, I joined the workforce right away. My starting salary was in the mid-50k range, slightly below new hires at the time, simply because I didn’t negotiate as well as they did. This year — only four years later — I declined a job offer of 110k. Are my skills worth twice as much as they were four years ago? Certainly not!

In this post, I will share the process that got me to where I am today. Hopefully, my experience will help someone get the salary adjustment they deserve. Before proceeding, I want to highlight that, although the steps apply mostly to people in the IT industry, there are some lessons that apply to white collar work in general.

I put myself out there

In order to increase the number of opportunities coming my way, I put myself out there. The best thing that worked for me was LinkedIn, but I also made profiles on other platforms such as Indeed, Guru, and Upwork. I made sure all my profiles were complete with all my education and experience details. LinkedIn has a rating system that helps; I made sure my profile was rated “all-star.” A detailed account increases visibility on these platforms and thus improves my chances of getting noticed.

I worked with recruiters

For some reason, recruiters seem to have a bad reputation in the IT industry from what I have noticed. In contrast, my experience with them has been enjoyable and effective. I did start to receive a lot of messages on the platforms I was using, but I made sure my replies were clear and respectful. These recruiter interactions then became connections that allowed me to grow my network and improve my visibility. Furthermore, having a large network of recruiters made it much easier to call on them whenever I needed new opportunities.


I did a ton of interviews

The easiest way to get better at interviews is to do as many as possible. For me, this started at university, where I had to do about 10 to 15 interviews every time I needed to do an internship. Even now, I make sure to do interviews whenever I can fit them into my day with minimal impact on my schedule. Interviews are a great opportunity to learn; you learn by preparing for them and during the interview. The most memorable interviews I’ve done are the ones where I failed miserably. The embarrassment of failing to answer questions in front of others made it so that once I learned the answer afterwards, it stuck with me. To this day, I can recite the difference between a stored procedure and a database trigger, yet I haven’t worked with an SQL database in over five years. Furthermore, the interviews I failed allowed me to hone in on the topics I was weak at and work to improve them if I wanted to.

I learned more things

I focused on two areas to improve: the first being technical skills related to my work and the second being communication. For the technical aspect, I focused on learning from seniors in the field. I studied their processes and their code first-hand when I had the chance, and I asked them for reading recommendations. This wasn’t just limited to my senior colleagues, but also included people on YouTube or LinkedIn. Additionally, I practiced everything I learned by doing personal projects. This may sound intense, but it really wasn’t. From 30 minutes to one hour per day, I was working on some random idea that popped into my head to apply new concepts that I was excited about. As for the communication aspect, doing a ton of interviews helped with this because I was constantly communicating with recruiters, getting prepped for interviews, doing them and sharing what happened back with the recruiter. Also, I didn’t shy away from asking the recruiters to share any feedback they received from the interviewer about me.

I received and declined some job offers

As a result of doing what I mentioned previously, I was receiving a few job offers per year. It was a rewarding experience because it proved that my process was working and that I was worth more than just the job I was occupying at the time. In the modern job industry, job security doesn’t hold the same value it did in past generations. Talent is scarce, and those who have advanced technical and interview skills are in high demand. Once I realized this, I wasn’t afraid to negotiate the job offers I was receiving and decline the ones I wasn’t interested in.


I asked for a raise

This step was also a result of the one before. As I got used to receiving offers and releasing my worth outside of my job at the time, I wasn’t shy about negotiating a salary adjustment whenever the chance presented itself. If a yearly review was coming up, I would bring it up then, and if it was the middle of the year, I would just schedule a meeting with my immediate supervisor and ask. When negotiating, a few things that I think I did right and thus recommend are:

  • I didn’t ask for a raise, but an adjustment. A raise implies 2%-6%, and an adjustment means more than 10%.

  • I didn’t give ultimatums and I didn’t give a price target; I asked for a percentage instead.

  • I did mention that I looked elsewhere and that I know how much I’m worth on the market, but I never specified the amount.

Every time I negotiated this way, I got what I asked for. What made the negotiation easy was that I was negotiating from a position of power. I knew I had the upper hand because what I was asking for was already within my reach. I just had to not rub it in the face of the person across from me.

I left when I had to

Timing is important. Sometimes a company is facing budget cuts or other financial struggles that make them unable to give raises at the time. When I was faced with these situations, I had to make the hard decision to leave. It’s not always easy for everyone to just pack up and jump ship, but sometimes I had to in order to advance my career. Before switching jobs for the first time back in 2018, I asked a friend for advice on what I should do and he said, “just grow.” I took these seemingly simple words to heart as a way to live.Every big decision is an opportunity for growth, and only after can we reflect on whether it was the right decision to make and learn from the consequences.

To quote someone much better than me and with whom I resonate, Gary Vaynerchuk describes his decision-making process as follows: “I make decisions because I want to know what’s going to happen, and then I use that information to help advise what I do next.” In my career, I have changed companies four times in four years, and I don’t regret any of these decisions because I learned a great deal from each and every one of them.


Looking back at my career today, I don’t regret any of the decisions I have made; none of the job offers I accepted nor the ones I declined. I put myself out there on LinkedIn. I went on many interviews. I continuously worked to improve my skillset. I received multiple offers, some of which gave me the confidence to adjust my salary at the time; others I respectfully declined; and a few were worth switching companies for. I managed to increase my salary by 15% every year, and I met a lot of colleagues throughout, some of whom are still my good friends today.

Nevertheless, there is more to career advancement than just money. Some people are comfortable gaining seniority within the same company and climbing the corporate ladder. I just personally decided to follow a different approach. I opted to grow my value independently from the companies I was working for, because ultimately, my goal was to reach the point where I could switch to contractual work. So when are you going to ask for a salary bump?