The technology boom of the last five to ten years has made software engineering a very attractive profession. While it had always been engaging and incredibly interesting, it’s become especially lucrative, even early in one’s career. Today’s software engineers enjoy great quality of life and a seller’s market where employers must compete for talent.
The appeal of the field has lead to many in non-technical careers hoping to get in on the action. I am frequently asked, “How do I become a programmer?” or “How do I become a developer?”
Well, it’s not that easy. But, it can be done.
Study the art of programming — formally or informally. As a hiring manager, my feelings on what it takes to become a developer have become well refined and strong. Without exception, the strongest candidates I’ve interviewed have all had computer science degrees. This is also true of almost every good software engineer I’ve worked with. The few exceptions certainly studied the practice on their own time for years before working in the field. The applicants I’ve talked to who lacked CS degrees simply have been unable to show in interviews that they knew enough about programming to qualify.
Explore a programmer’s curriculum. Fortunately, the internet offers some relief for those who don’t want to take out another loan to pay for a second undergrad degree. Many well-respected universities like MIT, Stanford and Harvard among others offer many of their courses online for free. Helpful pages like this one have aggregated those classes, facilitating the ability to pursue the knowledge-equivalent of a computer science degree. Google also published a very nice guide to augment undergraduate studies, and I recommend following along as well.
Dip your toe in the water before you dive in. Exploring these curricula should give prospective developers a good idea if the field is right for them. If each class taken triggers the desire to take the next one or two, it sounds like you’re on the right path.
Is a programmer’s life for me?
Considering the return on the investment is one way potential programmers weigh investment in a computer science degree or the cost and time a career change requires. Software engineering can be very rewarding, and at its best it barely seems like work. It’s intensive, immersive and for the inquisitive mind each challenge feels more like a puzzle — mind a highly rewarding one.
Many would-be programmers are also attracted to the less formal more functional atmosphere software engineer careers provide. Think ping pong tournaments, flexible work hours and beer in the fridge.
Image Source: Unsplash, Émile Perron