Why You Don’t Have to Major in CS to Be a Software Engineer 

5 minutes

You don’t have to major in computer science to be a developer. Plenty of people teach themselves technical skills and bring their unique life experiences into their tech roles. 

In fact, many engineers on our team at Codecademy studied other disciplines in school — from theater to biology and everything in between. “We have senior engineers and engineering managers who started as apprentices and are doing a great without CS degrees,” says Ana Harris, Senior Software Engineer at Codecademy.  

Curious how people got their start in tech after choosing completely different majors? Ahead, Ana and other Codecademy engineers share their different educational backgrounds and explain how they helped prepare them for their current roles.  And if you’re a college student and want to learn coding, check out our Student Center where you can get access to Codecademy Pro features for a discount.

Learn something new for free


Codecademy Senior Software Engineer Cass Spain was an avid book reader in college, so they majored in English with plans to work in the publishing industry. But their affinity for coding and problem-solving led them in another direction. 

Cass picked up programming at a young age. “I started with HTML and CSS on Neopets and MySpace,” they say. “Then in college, I worked as an intern for a book company and did a lot of the HTML and JavaScript coding for the ebooks.”

After the book company, Cass found a job helping improve systems and processes as an operations manager for a catering company. “I’m a very lazy person, so I automatically look for ways to make the fewest mistakes possible — and if you give that to other people, all of a sudden you have these standard operating procedures,” they say. 

These experiences helped hone Cass’ ability to think like a programmer, and after a brief stint in art handling, they enrolled in a bootcamp. Later, they came to Codecademy, where the communication skills gained from their English degree allows them to collaborate effectively with other engineers and write clear code documentation

“How do you explain what a design system is to people? How do you explain how our system is different from others’?” they say. “That’s one of the biggest things I took from my English major — how do I communicate what this does in three words that are two syllables long?” 


Neil Daftary has spent the past eight years in the tech industry — and the last three as an Engineering Manager for Codecademy. But in college, he wasn’t too into programming. Instead, he followed in his father’s footsteps and majored in economics with plans to work in finance. After graduating, he landed a job as a copywriter for a mobile app startup, which inspired Neil to make his own app. 

Still uncertain about committing to software engineering full-time, Neil started small. “I decided to go for a night class on HTML, CSS, and Ruby on Rails,” he said. “After completing the course and two short unpaid internships, I landed a paid internship and have been in the industry since!” 

Neil came into the industry with some data analysis skills after using R and running ETL (extract, transform, load) workflows during an economic research internship. “I’d say the main transferrable skills were from the math and microeconomic courses where I learned and practiced breaking complex problems down into smaller pieces,” he said.  

Even if you don’t want to be a developer, programming and analytics skills can prove useful for economics and finance professionals who work with large volumes of data. Check out our courses like BI Dashboards with Tableau and How to Analyze Business Metrics with SQL to learn more. 

Political science & foreign languages 

Before becoming a Senior Software Engineer at Codecademy, Ana Harris studied Russian language and literature in Serbia and traveled to Scotland for a master’s in political science and East European studies. She’d intended to pursue academia and never really considered alternatives; working outside of your field of study is less common in European countries, she says. “It’s still kind of crazy for me, coming from a very different work culture, that you can just do a course and get a job,” she says. 

When her husband, a software engineer with a liberal arts degree, suggested coding, she found herself drawn to the flexibility, work culture, and opportunities for continued learning in the field. “Even now, four years into software engineering, it can still be frustrating when you’re learning new things — but you gain the confidence to do it,” Ana says. “And when you start having those ‘aha!’ moments, and you make something or connect the dots on certain things, it feels really good.” 

Ana’s academic background laid a great foundation for her work at Codecademy. As part of her degree, she worked with different age groups and learned different teaching methodologies that directly translate to her current role. “A lot of it is really just: How do you transfer your skill to someone else?” she says. 

Plus, Ana’s language skills help distill complex subjects and information, which comes in handy when writing technical documentation. “I’m not a native English speaker, which can be an advantage, because you tend not to use extremely complicated words and sentence structures,” she says. 

Discover your next passion 

There’s no one path to a fulfilling career in tech, and your “non-technical” educational background could be an asset. The more skills and perspectives there are represented in the tech industry, the more innovative and inclusive we can be. 

If you want to see how your specific skills and interests can help prepare you for a tech career, check out our free course Choosing a Career in Tech. You might be surprised to discover how blending your passions with tech can lead you to different ways of thinking or even a fulfilling new career. 

If you’re not sure what you want to learn, just try one of our free programming courses.  

“Learn to code for free and see if you genuinely like it,” Neil says. “Try to build something that solves one of your own problems. There are so many free resources like Codecademy where you can try out coding at your own pace.” The free courses Learn to Code with Blockly and Choosing a Programming Language are great places to start. There’s also our Computer Science career path that covers the essentials of what you’d learn in a college CS course.

And no matter what your goals are, remember to be patient. Lots of self-taught developers have switched careers and landed jobs in just a few months, but it can take time to get your foot in the door. “Don’t get discouraged, because getting your first job is the hardest thing,” Cass says. “It’s all gravy after that.”

Related courses

5 courses

Related articles

4 articles