The source code for my site is available on GitHub.

How to 2x your Developer Salary this Year

Throw in better work-life balance, the ability to choose what projects you work on, and where you work from. Learn how I got started independent consulting.

Jacob Orshalick
Cover Image for How to 2x your Developer Salary this Year
Photo by Ryland Dean on Unsplash

As a full-time software developer you can make more by contracting. According to GlassDoor, the average software developer salary is $101,611. You may make more, maybe less. In a great year, you may get a raise of 10%, but a 2-3% cost of living increase is more typical.

I've been an independent consultant for 15 years. Once you become an independent, the sky is the limit for your salary, but I started off doubling my salary in a single year by becoming a contractor. As you grow your list of clients and your expertise, you can demand higher rates, take out the middle man (placement firms), and even start placing your own sub-contractors.

Before getting started, here's what you need to know about contracting:

  1. These roles pay better than full-time because the employer is shifting risk to the contractor
  2. The roles are limited to a specific length of time (e.g. 6 month term) but can be extended
  3. These are usually not learn on the job roles, you’re expected to hit the ground running
  4. You may have different tax considerations and have to cover your own health insurance (based on country)

Here are the list of steps I followed to get my career as an independent started along with some valuable lessons learned along the way.

1. Build an emergency fund

I recommend doing this before you start. It's also my number 1 recommendation in Weathering Uncertainty as a Software Pro. An emergency fund is recommended by most of the budget gurus out there so this should come as no surprise. That said, as a consultant, I try to extend this beyond the standard recommendation of 3 months of salary.

Being a bit more conservative than most, I feel that a full 9 months of salary prepares you for the worst. The last thing you want to do is be forced to take an opportunity you don't want because you weren't prepared.

2. Start your own company

It's easy and low cost to start a company. Having your own company makes you more reputable and gives you more flexibility when negotiating contract arrangements. If you start off sub-contracting through a placement firm, you can work in what's called a corp-to-corp arrangement to demand a higher rate.

This is going to vary by country, but in a corp-to-corp arrangement in the United States you must pay your share of self-employment tax. You will also need to cover your own health insurance. Standard financial disclaimer, I’m not a CPA and you should consult with a tax professional for true tax advice.

3. Choose a technology niche

Do your research! Target a technology that is in demand, pays high contract rates, and grabs your interest. To find in-demand, high-paying contract opportunities, look on sites like Indeed and LinkedIn for contract opportunities posted in your area or for remote work.

If you have on the job experience with the technology that's great, but it's not necessary. I've landed many opportunities where I had no real "on-the-job" experience with the technology the client was using. Start building something with the technology on your own. Follow tutorials, contribute to open source projects, answer questions on StackOverflow, write your own articles / blog posts... there are many ways to build experience outside of your job.

Contract roles are very specific. They are looking for someone with expertise in a particular area to fill an immediate need and they will pay top dollar for it. They may have something specific that needs to be built or they may be augmenting an existing team. They don't want someone who is learning on the job, they want someone who can jump in and make a difference day one.

4. Know your worth

Do your research! Are you experienced in a technology that is in high demand? What type of contract rates are being offered? Calculating how much a contract opportunity pays in terms of salary is often written as a simple equation:

50 (work weeks) x 40 (hours / wk) x rate = salary equivalent
2,000 (hours / yr) x rate = salary equivalent

Not exactly. 2,000 hours is based on a 40 hour week with 2 weeks of vacation in a year. If you plan to take 4 weeks of vacation, you will be working 48 weeks. In the United States, this formula also doesn't account for your share of self-employment taxes (for 1099 consulting) or potentially covering your own health insurance (unless you are covered under a spouse).

Don't consider opportunities below your worth. If you need more experience to demand those higher rates, go back to step 3.

5. Start talking to placement firms

Placement firms are a means to an end. They are the middle man that can help you find opportunities when you don't have a client list of your own. When you come across contract opportunities on LinkedIn or Indeed, they are usually who you will be dealing with. You will contact a recruiter and, if you pass their sniff test, they will put you in contact with the client for an initial interview.

When talking to placement firms make sure you are showcasing your technical chops. Recruiters and potential clients will be reviewing your LinkedIn profile and resume for experience in the areas they need. Make sure and highlight everything you can about the technology you will be working with.

6. Pay attention to the contract you sign

Here's what you need to know about placement firms. They are the man in the middle. They are being paid by the client you will be working for and you will get paid by them. This means they get a cut of your rate, often a very large cut! Your goal is to eventually cut out the middle man get the rate all to yourself. You need to work directly for the client, but there's a catch.

Pay close attention to the contact the placement firm wants you to sign. The non-compete agreement an area of the contract where the placement firm tries to guarantee that if you work for their client, you must work through them. Of course, they want to get paid for finding you!

The contract will state a period of time you have to work elsewhere before you can contract directly for the client. It's typical to see a 12 month period, but I've seen as high as 24 months. Try to negotiate this period down as low as possible. You want to be able to come back and work for the client without the middle man as soon as possible.

7. Build your reputation

As a contractor, do nothing but fantastic work. You need to strive to be at least twice as productive as the full-time employees on the team. Focus on building relationships with your team members and management. Make sure everyone sees you as an indispensable asset to the team.

In the future your reputation will proceed you. When you leave, the people you worked with will know that you are a resource who can be relied on. They will be happy to bring you back for future opportunities and you won't need the involvement of a placement firm.

Avoid leaving contracts before the end of the contract term. There may be extenuating circumstances, but this is almost always a bad idea. It simply leaves a bad taste in the clients mouth and makes you look like you're not dependable.

8. Use contract terms to your advantage

Contracts are set for a specific term (e.g. 6 months). When the term is up, if you've follow step 7, the client will often want to extend the contract. This is where you have leverage. Can you negotiate a higher rate? Do you want to move to a new client to gain additional experience or higher pay? Maybe a higher rate has been offered and you want to negotiate a longer term?

I see the limited timeframe of a contract as more of an advantage than a drawback. The term lets you make changes without burning any bridges. Just make sure you are aware of the timeframe. Even if the client loves the work you've done, budget constraints may mean that an extension is not possible. Don't worry, and go back to step 5.

9. Keep your radar up

Be on the lookout for opportunities, especially with clients where you’ve built a reputation and any non-compete agreement has expired. This is where you cut out the middle man. Keep in contact with management and decision makers.

Have lunch, get together for coffee, simply check in with a friendly "catching up" email. Almost all of my clients now come from past colleagues and referrals. Trust that's already been built is the easiest way to find new opportunities.

10. Become the expert in the room

Over time you will expand your expertise beyond the niche technology you focused on. You'll gain new, invaluable experience with each contract you take. The goal is to become the expert your clients want in the room. You can read more about how to do that here.

So remember...

Going independent means trusting in your abilities and betting on yourself. You can do it. Double your salary this year and remember, the sky is the limit!

Want to know more? Subscribe! Sign up for weekly, actionable tips to build better software.
Subscribe Now
Jacob Orshalick