Developer salary growth is an inverted hockey stick

Developer salaries almost double with 5 years of experience and then begin to flatten out. The graph below shows how compensation changes per X years of experience. A graph of individual compensation over time won't look exactly like this because individuals typically only see large salary bumps when switching jobs. This graph shows what salaries at different experience levels look like at this instant [1, 2].

To try to make this graphic as useful as possible, here are a few baseline data points for two very different locations:
  • New York City: 0 years of experience has a salary range of $70k-80k, 5 years of experience has a salary range of $115k-$130k
  • Suburban Virginia: 0 years of experience has a salary range of $55k-65k, 5 years of experience has a salary range of $90k-105k
Why is this the case? Experienced engineers are not coming on to the market at the same rate companies are demanding their services. Sure, engineers graduate from college every year, but they're inexperienced and companies are willing to pay a premium for someone who can get up to speed more quickly.

How developers can take advantage of this trend
  • If you got a job straight out of college, have kept it for a few years, and haven't received major raises each year, you can probably command a higher salary than you think on your next job change. 
  • If you're a more experienced developer, think about joining a startup. You'll get paid toward the high end of the inexperienced range in terms of salary, but you can likely negotiate a much higher equity stake.
How companies can take advantage of this trend
  • Hire inexperienced or minimally experienced developers, train them, and retain them.
  • Continue to give raises to more experienced employees. These will easily out-pace the market.
    Notes

    [1] These figures assume no equity compensation. This can vary significantly if you join a startup.
    [2] These figures and the graph are based on self-reported figures from job seekers and companies (not formally collected data). It's not precise, but there is a clear trend.

    About Hirelite

    Hirelite is on a mission to put headhunters out of business. We host speed interviewing events using video chat where 20 job seekers talk to 20 companies for 5 minutes each. If you're looking to evaluate the software job market or looking to hire, check out Hirelite.com. We currently host web events focused on New York City, San Francisco/Silicon Valley, Boston, and Los Angeles.

    Dear Developers, a "Free" Headhunter Will Cost You >$10k

    Have you ever felt like a headhunter was stealing from you? Not literally taking money out of your wallet, but something just rubbed you the wrong way?

    Well, it could be that your headhunter is doing sleazy things or it could be that they actually are costing you money. Here's how.

    Headhunters who recruit software engineers get paid when they place a candidate that gets hired. Companies pay recruiters 20-30% of what the candidate will make in their first year at the company. For an experienced software engineer making $100k per year, a recruiter's fee would be $20k-$30k depending on their agreement with the hiring company.

    What does this mean for you, the software developer who just received an offer?

    As businesses grow, recruiting costs become a fact of life whether they come in the form of job posts, headhunters, or time spent networking. Over the past few months, I've talked to a lot of companies that are hiring developers (with and without headhunters). Of the companies that use headhunters that I've spoken to, about half of them are willing to pass along a portion of the anticipated recruiting budget to a new hire if that person comes to them without a recruiter. This willingness likely stems from the huge demand for software engineers right now, so your mileage may vary in different market conditions.

    Next time you're doing a job search, approach companies directly through your network, through a job post, or through a company's website. When you receive an offer, you'll be in a position to ask for a larger salary or sign-on bonus if you know the company has a habit of using headhunters.

    Example

    You receive an offer at a job where you will be specializing in Hadoop. (Almost every company I know of that uses Hadoop uses recruitment agencies). If you know that the company has a habit of using recruiters, try to determine who has the most visibility into the recruiting budget. This person will be your best bet for negotiating more money for approaching the company directly. At larger companies, this will be the HR representative who gave you the offer. At smaller companies, this is more likely a hiring manager or CTO.

    Go to this person and tell them you approached their company directly because of how much you like the culture, people, technical challenges, etc (this part has to come from you). Then tell them that you understand how much recruiting costs can be for developers, and that you're happy to be saving them money. Then ask, "Would you be willing to take recruiting costs into account with my offer?"

    Using this strategy, I've heard of one developer getting a $15k sign-on bonus, and another developer getting a 5% salary bump. With software engineers in such high demand, there's no reason why companies shouldn't pass along some of the money they save recruiting you if you go directly to them.

    About Hirelite

    Hirelite helps software engineers talk directly to companies by facilitating web-based "speed interviewing" events where developers video-chat with a series of companies for 5 minutes each. Our next event is this Monday, November 1st at 7pm EST. The companies attending are all NYC based, but we're accepting job seekers from around the US who would be willing to relocate.

    What developers think when you say "Rock Star"

    When you say "rock star" in your job post, you're discouraging the best software developers from contacting you.

    When you write, "We're looking for a rock star developer."
    A developer sees, "We want to treat a developer like the RIAA treats rock stars."

    Using "rock star" in your job post may have communicated a trendy vibe at one point, but those times have passed. Now it communicates a desperate attempt to seem cooler than you really are, a sign that you're too full of yourself, or that you're just naive. 

    Naivety worries developers the most. To developers, "rock star" communicates that you're not sure what you want. Or rather, you do know what you want, and what you want is a miracle worker. "Rock star" signals that you haven't thought enough about the role this developer will fill, leaving developers with a feeling that they'll be receiving ill-defined requirements, not enough time, or not enough resources to do their job (in addition to being overworked and underpaid).

    Speaking of overworked and underpaid... there's really only one time "rock star" is appropriate: "We want a rock star developer. We know you're rare, and we'll pay you like a rock star." Sadly, this isn't usually the case. Here's how software engineers are paid in relation to rock star software engineers [1, 2].

    Now here's how musicians are paid in relation to real rock stars [3, 4].

     

    So next time you're thinking about saying rock star, ninja, guru, etc in your job post, consider it a sign that you have more thinking to do about your hiring requirements. Here are a few questions and trade-offs you should consider answering with your job post:

    • Do you want a specialist or a generalist?
    • If you want extraordinary people, can you compensate them extraordinarily or provide an extraordinary environment? 
    • Do you want a technical person who cares more about the business/market challenges or do you want someone who cares more about the technical challenges? 
    • Do you want someone who prefers quick, practical, "good enough" solutions or do you want someone who prefers to take their time and do things more maintainably or scalably?
    • Do you want a feature developer or a maintainer? 
    • Do you want a risk taker?

    Let us know in the comments If you have any more high-level questions you like to have answered before you post a job description.

       

      About Hirelite

      Hirelite runs "speed interviewing" events over video chat to connect software engineers and companies hiring. If you're looking to evaluate the software job market or looking to hire, check out Hirelite.com.

       

      Notes

      [1] Simply Hired salary estimates for software engineer
      [2] Simply Hired salary estimates for rock star software engineer
      [3] Simply Hired salary estimates for musician
      [4] Average salary for the top 10 best paid music stars. But wait, those are only the top 10 musicians! Yes, exactly. Rockstars are stars because they're scarce, and because they're the best.

      Also, an associated queston on Hacker News a few months back was very helpful. Thanks for all the comments there today also.