The past several decades have seen an overhaul of the world economy and a shift into a more connected and globalized workforce. We have seen entire industries disappear in a matter of years only to be replaced by offshore companies reliant on large, cheap labor pools and costs of living. As with any change, these shifts have forced millions of people out of industries on which they and their families relied.
Many were left out of the benefits that came from market globalization, but many with backgrounds in science, technology, engineering, and math (STEM) survived and even prospered. It’s no wonder that so many people are actively seeking to learn new job skills, get involved in technology, and are clamoring to self-teach their way into software development jobs.
But you don’t have to be a displaced worker to switch careers. You could be semi-happily employed while also be looking for a job with more security, challenge, money, flexibility, better benefits, or just wanting to work a desk job. Whether the reasons for wanting to switch careers to software engineer is in your control or caused by external factors, we’ve got you covered in this article with plenty of details to further convince you into moving.
This guide will focus only on the reasons why you should switch careers today. If you’re looking for detailed advice to answer “how”, check out our other related guides that go into much more detail about how to execute on your passion for becoming a software developer or software engineer. We’ve written guides about how to become a software developer, what to do if you have an information technology degree, how to succeed even if you have no college degree, and how to get start the career hunt as soon as possible as a student.
There’s no doubt about it. The world is full of technology. Entire industries are built around the assumption that the Internet and millions of connected devices are online. In some cases, people have become entirely dependent on the conveniences and connectivity afforded by technology. Mobile phones, dishwashers, tablets, movie streaming, and navigational GPS maps are just a few examples.
How do you think all of that technology functions? Here’s a hint: not by magic.
Hordes of talented people spanning decades have collectively and progressively constructed entire infrastructures that support the modern economy. Not only are these technologies constantly being maintained, but customers demand new features all the time. Competition across software industries is fierce, customer expectations are sky-high, and the ease at which a customer can simply drop a product and pick up another one reinforces the importance of maintaining customers at all costs.
Someone has to meet these fierce demands, and that someone is usually armies of product owners, project managers, and software developers employed by big players like Apple, Amazon, Google, and Microsoft, but also small local industries that you can find easily on sites like Glassdoor and StackExchange Jobs.
We’ve got some more good news. Software developers are constantly ranked in some of the highest paid and most flexible positions. They’re able to work remotely from anywhere on the planet, relocate their lives with minimal disruption, collaborate with communities across the globe, and get started in the profession with relatively tiny barriers to entry.
According to the Bureau of Labor Statistics, software developers and related fields are ranked with a “much faster than average” job growth prediction between 2018 and 2028. This means that on top of the already millions of jobs available in these industries, there will be upwards of 20% more by 2028 in some categories.
Have you ever heard that cliché phrase, “Choose a job you love, and you will never have to work a day in your life.”? It appears in various infographics and images plastered across every major social media network at least one hundred times per week. While it is certainly overused like many social media memes, it does have a bit of truth to it.
A simple fact of life is that in order to have the means to live, we have to work for what we have. It doesn’t matter if that work is self-sustaining hunting and gathering in the middle of the wilderness or clocking 40 hours per week at a nine to five job in the city. You’re still required to work.
You don’t have to be doomed to a life of mundane, endless, and boring tasks. If you’re the type of person that enjoys feeling satisfied after the completion of interesting, creative work, then software development is probably for you. Don’t get discouraged by the myths you’ve heard about software development.
Here are just a few of the challenging benefits to software development:
Requires deep thought. With all the distractions pulling for our attention these days, it’s a miracle if we ever have time to just sit and think to ourselves. Solving the potentially complex problems of the world definitely requires avoiding these distractions. That’s especially true when developing software to solve said problems. Getting in to a deep thought routine at least a few times a day can be relaxing and rewarding when you see how productive they can be.
Building things you see in science fiction. Have you ever watched an older show and noticed that some gadgets are now widely available? Star Trek is the obvious example in that the crew of the Enterprise often used mobile phone devices, tablets, location positioning devices, and teleportation. Yes, we know that not all of the things seen on TV have become reality, but it’s amazing to see that even a smaller portion of what we only thought was possible is now being used in our daily lives because of dedicated engineers.
Improvements in healthcare. One of the greatest things about modern civilization is the constant improvements being made to healthcare and general personal health. The average lifespan of humans has been increasing for centuries due to the scientific method enabling massive advances to our understanding of germs, viruses, bacteria, and our bodies. Advanced hardware and software has the ability to collect massive amounts of data, analyze it, and visualize it in a way that helps us make predictions for even better future health initiatives.
Remember, at the end of the day, software development is still a job. As such, there will be ups and downs that will have a variety of impacts on you, your family, and your life. It’s not a magic, cure-all to life’s afflictions, but it can be rewarding to know that you helped create something that provided, at the very least, a small amount of value to a corner of society.
This is most likely why you’re here. We know that a huge motivational factor of going into any given career is the amount of money that can be made from it. After all, most people work so that they can afford to support and live a certain lifestyle.
A recent analysis by CareerBuilder indicates that software developers are among groups that command the highest salaries and are experiencing the fastest growth in every U.S. state.
Here’s a break down some compensation numbers according to the BLS:
- Median salary of $105,590 (varies wildly between cities and states)
- Median hourly rate of $50.77 (varies wildly between cities and states)
- Higher than average growth outlook (up 24% from 2016 to 2026)
Take a look at this list of STEM jobs that are similar to software developers according to the BLS. Notice that they’re all highly compensated positions? Drilling deeper into Computer and Information Systems Managers reveals that the future prospects of these positions is up and up for the foreseeable future. Potential job counts are above average, job growth is above average, and job security is a sure lock.
Now is the best time to take advantage of these opportunities.
Note that salaries and hourly rates can fluctuate wildly between locations, industries, and individual businesses. Your experience and performance will ultimately determine how much you end up making. For new hires that have little to no experience, businesses sometimes associate the applicant’s college degree with the eventual pay rate.
Use Glassdoor and Salary.com regularly to research your worth to make sure you are fairly compensated based on your education, experience, and skills. Build up your portfolio using GitHub for that extra edge in the interview.
Software development isn’t just good for your pocket book, though. When hired by big firms, there’s often a bundle of benefits to entice.
Good insurance benefits. This isn’t unique to software companies, but sometimes the big industry players will offer 100% covered insurance. This will probably change to be less generous over time as insurance rates continue to climb, but it’s at least something to look for in your job hunt.
Flexible hours. Because software development can be done remotely and in any time zone, it’s possible to negotiate a non-standard set of hours with your managers. For example, if your time zone is shifted by enough hours to make it inconvenient for you to attend meetings or discussions at a certain time, you could request to have specific times where you overlap for meetings. One of our authors worked at a business that was split between the United States and Germany. Critical meetings between the two were always scheduled in the German afternoon so that it overlapped with the US morning.
Paid time off. Be careful with this one. Some companies will offer what they call “unlimited vacation.” It’s obviously not literally unlimited. If it was, no one would be at work. Instead, it’s a use but don’t abuse type of policy. Basically, “don’t be that person.” In most cases, businesses will offer generous amounts between three and five weeks of paid time off for new hires with increasing weeks as you rise in seniority.
Humans are social creatures. We evolved in tribes and still exhibit tribal tendencies to this very day. Universities and businesses thrive on the backs of people joining together to achieve a common cause. It’s no wonder then that even software developers, sometimes stereotyped as recluses, are interested in communicating and contributing to collaborative projects.
It makes sense too. We want to feel important. We want to feel like we belong to a community dedicated to solving problems and providing value. Something inside us finds immense satisfaction by tapping in to that primal cooperative urge.
What better career to scratch that itch than software development? It’s an industry supported entirely by people who can now accomplish great things from the comforts of their own homes without any loss in productivity. In decades past, people were required to ship themselves great distances on a daily basis to toil away in factories and fields. Yes, that is certainly still the case in many areas of the world, but people are lifted every year out of these circumstances and into more connected and simultaneously disconnected careers.
We are connected by wires spanning our neighborhoods, cities, states, countries, oceans, and continents. Each of us is slightly tethered by Wi-Fi signals buzzing between our mobile devices. In a way, we are all participating together in the game a life. We are disconnected because the very connectivity that keeps us together is made possible by people who are stretched across the globe in various places of work.
With the rise of sites like GitHub, Bitbucket, and StackOverflow, people are able to express their software creatively and ask others to collaborate for greater success. It’s easier now than ever to start building cool software and compiling it into a great public portfolio to show off your skills.
Some of the largest applications and services used today are globe spanning and inherently social in nature. If you’re interested in being part of a mega corporation with a bottomless bank account, there’s the obvious choices of companies like Facebook, Twitter, Uber, and Microsoft.
By working for these types of companies, you’d have opportunities to develop software that allows users to connect together for casual communication, cloud services infrastructure, transportation, and a lot more.
But those aren’t the only companies open to you. Talented software developers that keep their skills up to date and document it in their portfolio have endless opportunities with small and local business looking to connect people in ways similar to large businesses only on a smaller scale. Local governments often maintain their own departments dedicated to supporting their citizens by improving digital connections. Sometimes local private contractors are also involved in these processes.
Whether you’re ultimately interested in small-cap or large-cap businesses, you’ll have the opportunity to provide value to our increasingly connected world.
Think about the logistics of most jobs in the world. Here are some to get your thinking flowing: construction workers, physicians, athletes, landscaping, truck drivers, delivery. What do all of these have in common? You have to be physically present when performing your duties. Obviously it wouldn’t work if all construction workers just stayed at home. They have to be on the site with their hands on their tools.
The increasingly portable nature of your workplace and tools is what makes software development so special. Where others need to travel potentially long distances each day, you’ll be in the comfort of your home or proxy office with the ability to instantly connect to your coworkers and audience. You’ll be able to command a salary that is local to the business headquarters while living an area with a low cost of living. Think: working in Kansas for a company in Washington. High salary + low cost of living = happy.
Let’s talk details of the biggest flexibility perks.
Remote work. This is the one that grabs people the most. Having the ability to move where you want at any given moment is a huge benefit. You’re not tied to any specific place because you don’t have to physically commute anywhere other than your place of residence. Depending on your time zone, you’ll have to adjust to the business hours, but you likely won’t be alone so there should be a company policy dictating how to do it successfully.
Work from home. This is a more specific form of remote work. Imagine if you or your family is sick with a job that doesn’t allow work from home because you have to be physically present. Using up sick days or vacation time is definitely a pain. And not every job offers those benefits, so you might be unlucky enough to still have to go to your place of work. As a software developer, your job is perfectly doable from home due to the nature of the work and the tools that we have built to make remote work easier.
Travel. Like to move around a bit? Look into becoming an evangelist for your company or its tooling. Your job usually consists of traveling around to various businesses that use your products to get them hooked on even more products. You’ll be responsible for giving speeches and seminars to tout the greatness of your company and its values. It’s possible to be a software developer and an evangelist simultaneously, so don’t think you’d need to make multiple career changes.