I’ve read a lot of advice in the manosphere recently telling young guys that they should go into a career in software development. As someone who now has 10 years of software development experience under his belt, I’m going to tell you why this could be a bad idea.
First I’ll clarify what exactly it is I mean by software development. I mean anything that involves programming some form of computer, including but not limited to:
- Desktop application development
- Mobile application development
- Web development
I myself a a web developer, but the following applies to all forms of programming career.
Lets look at why people are recommending this as a career to young manosphere guys:
- No degree needed
- Demand for developers exceeds supply
- Can earn large amounts of money
- It’s the next big thing
These are all true, to some extent. Lets look at each of them in turn:
No degree needed
This is true. If you teach yourself development and put a portfolio together, you can probably get a job as a junior developer in most major cities without a degree. This is an advantage over other careers such as law or medicine where a degree is essential. This makes software development a very easy career to break into in a world where multiple degrees are increasingly required for many professional jobs.
Demand for developers exceeds supply
True to some extent. The business world is often whining about not being able to find developers. The truth is that this is fairly easy to do if your business:
- Isn’t located in an area of excessively high developer demand, like Silicon Valley.
- Offers a truly competitive salary. Many do not then wonder why they struggle to hire. I’m not even talking about offering an excessive salary, just on the good side of market rates.
- Offers a reasonable working environment for developers (proper tools, quiet working conditions, good management)
- Isn’t excessively picky in what technologies you require new hires to have. Tech changes fast. There’s hot new stuff to learn on an almost monthly basis, and there are many competing technologies out there. This means if you look for a very specific set of technologies, as opposed to looking for a good grasp of the fundamentals, you massively limit your search.
Although there is certainly a lot of work out there, the main reason for business whining about a lack of developers is in order to put pressure on the government to relax work visa laws. This will enable UK / US businesses to ship in foreign workers in order to keep the supply high, and stop salaries rising. If you think this is me being all conspiracy theory please bare in mind this is what the company I work for is currently doing. Our CEO whined to the press that it was hard to find developers and the government should do something about it. The company is now part of a government scheme that fast tracks work visas for tech workers. About 1/3rd of our developers are now on visas, and all of the new ones we are currently interviewing would be.
Can earn large amounts of money
Again, somewhat true. The accounts of guys earning $150,000 straight out of university are by no means representative. If you graduated top 10 in your class in a top 5 tech college in the US you may well make this much working for one of the big tech firms in Silicon Valley (Facebook, Google). You have to remember Silicon Valley has costs of living such that $150k isn’t much money there. Most developers in the US will earn around $80k, with a career peak of maybe $100k.
It’s the next big thing
So far the points I have presented seem to disprove the title of the blog post. You can earn more than the average salary. There’s a lot of work going. There are low barriers to entry. One of my colleagues is a great example of this. He taught himself web development in his teens. Never went to university. Left school early to become a Junior Developer at 17. Now, at the ripe old age of 22 he makes £50k a year working in London as a web developer. So at a young age and no degree he makes a salary that is almost twice the UK average, and around 40% higher than the average London salary. This is very good considering many UK graduates that studied non science subjects can’t even get a job.
There we have it then. Software development is a great career. In your twenties. This is the rub about this career: you peak fast and it’s down hill from there. I’m now 32 and I’m one job hop away from reaching peak career salary. This is despite me being quite slow at moving my career forward. It’s quite possible to peak before you’ve even hit 30. If I want to progress I need to move into a purely management role. This is unlike law or medicine where you can increase your authority whilst still mainly doing your core job, rather than management, with a steady rise in salary throughout your career. So just bite the bullet and go down the management route? Not that simple. Many tech teams are managed by people from a non tech background (account managers, marketing managers etc), and as such there often isn’t much of a management track available.
Then we hit the age factor. As a 32 year old developer I’m considered old. Many would consider me too old (no, I’m not joking). The industry likes to thing of itself as young and fast moving. Unlike if I was a doctor where my greying hair would be seen as a reassuring sign of experience, in software development it’s a sign that I’m probably out of touch with technology, and not willing to work for a tiny salary and the promise of ‘stock’.
Then there’s the pace of change. Baring core software development skills, all of a developers skill set will go out of date every 5 years. Even if you hold back on learning new skills for a single year you will be behind to the extent that it could negatively impact your employability. It’s a bit like running on a treadmill at a brutal pace. You have to keep going just to keep your job, and to run even faster if you want to learn the skills to progress to higher levels. It is probably this that is the biggest cause of hitting a ceiling within 6 or 7 years of coming into the industry. Anything much beyond about 6 years of experience adds little to no extra value to an employer. Think of it this way. I started in the industry in 2005 using technology set A. By 2010 I have 5 years experience in this, enough to pretty much master it. Then in that year technology B becomes the new standard. So I start learning that. By 2015 I am now an expert in technology B, but have no more experience in it than people who entered the workforce in 2010. This leads to me being paid the same despite having an extra 5 years of experience.
If any young person reading this still wants to enter the software development industry, I suggest you take the following path. It’s the one I’m trying to move onto now, 5 years late:
- Get a development job
- Work hard outside of work keeping up with the latest technologies and refining your skills so you stay ahead of the curve.
- Aggressively job hop to get new skills and a higher salary.
- After 5 years form a company and work as a contractor rather and a salaried employer.
- You should be able to work 9 months of the year and still make good enough money to save tens of thousands over the next few years. Cut down your learning of tech skills to the bare minimum and spend your free time creating side businesses. Money saved can be used as capital.
- After the 3 years are up you should be able to transition to having your own business full time, just as you would start to hit a ceiling in the software development industry.