Supply and demand are economic forces mostly studied by professional economists and financial experts. But it’s also important for developers to understand. With a better conceptual understanding of how supply and demand influence your job, you’ll be in a much better position to build relevant skills, negotiate for more money, and ultimately see greater success.
Supply and Demand: The Basics
We’ll start with the basics of supply and demand. Two of the first things you learn in Economics are the Laws of Supply and Demand. The Law of Supply indicates that when prices are higher, sellers are incentivized to sell more of a product or service. The Law of Demand indicates that when prices are higher, consumers tend to demand less of a product or service.
This should make intuitive sense to you. Imagine you’re at a coffee shop that sells coffee for $0.50 a cup; you’d probably want to go there every day. What if they increase prices to $10 a cup? Suddenly, the place doesn’t look as attractive.
Now consider being on the supply end of the spectrum. Imagine you’re selling beans to this coffee shop, which, for some reason, is successful at selling coffee for $10 a cup. Wouldn’t you be incentivized to raise your prices, knowing how much demand and revenue there is?
These laws play out in almost every industry. In the video game console world, when there’s a limited supply of consoles and excessive levels of demand, scalpers increase prices to take advantage of this supply and demand mismatch. When lab created diamond engagement rings first came on the market, demand for traditional diamond engagement rings fell, reducing prices.
Influence on Developers
How is this relevant to you as a developer?
As an employable software developer, you can think of each of your skills and areas of competency as being a separate product or service. Each of these products/services has a measurable level of supply and a measurable level of demand.
Right now, the most in-demand skill for software engineers is Python, with SQL, Java, and JavaScript closely behind. There are currently 84,000 outstanding job postings for Python developers – so there’s no question that it’s one of the most demanded skills. If you can use Python, you’ll be in a much better position to get a job.
We also have to consider supply. Some of the top-paid developers in the industry are ones who work with Scala and Go; despite the fact that both Scala and Go aren’t near the top of the “in demand” list, the fact that these developers are scarce pushes prices higher.
If you have a skill that most businesses want, and you won’t be competing with many other developers, you’ll be in a perfect position to demand a higher salary and get almost any job you want.
How to Take Advantage of Supply and Demand
How do you take advantage of supply and demand as a software developer?
These are some of your top strategies:
- Graph each skill on two axes. When you’re considering picking up a new scale or learning a new programming language, take a deep dive to understand the supply and demand curves for that skill. How many new job postings are there that demand this skill? How many people like you are currently developing this skill? How are these curves likely to change in the future?
- Learn skills with high demand and low supply. Once you’ve done this analysis, prioritize learning skills that have high demand and low supply; hypothetically, these are the skills that are most likely to get you hired and the ones capable of earning you the most money. Because demand is high, companies will be eager to get you in. Because supply is low, you won’t face much competition, and you’ll have more leverage when negotiating salary.
- Anticipate changes to the economic curves. Be ready to make some adjustments to your initial analysis, as supply and demand curves rarely remain the same, especially in the world of software development. Skills that are in demand and low in supply tend to attract many new programmers, so it’s unlikely that they’ll remain hot forever.
- Know your worth. Assess your own value, and build confidence in it. If you know that your skill is rare, and that it’s heavily demanded, be ready to come to the negotiating table with demands of your own. Be prepared to present data points to justify whatever you’re requesting.
If you want to improve your career as a software developer, it’s important to study these economic fundamentals. A better understanding of supply and demand can help you cultivate more appropriate, more useful skills, and ultimately make more money.