How to Become a Software Engineer Without a Degree

So you want to become a software engineer but you don’t have a degree in computer science. Is it possible to get a job without formal training? Yes, I’m living proof it can happen! This post contains the details of my journey into the world of technology. You can become a software engineer without a degree in engineering. Here’s how I did it.

How to Become a Software Engineer Without a Degree

I’m what you might call an accidental software engineer. Despite a complete lack of coding experience I became a highly-paid software engineer without a CS degree. I stayed away from science classes in high school. I studied literature in college and graduated with a bachelor’s degree in English. After graduation I planned to get a job in marketing, but my career path took an unexpected turn towards technology.

Can you become a software engineer without a degree? Without a doubt. I’m living proof you don’t need to complete a computer science program to make gobs of money slinging code.

My story is unique but the steps I took are straightforward and easy to follow. I’m living proof that you can become a software engineer without a technical degree. I achieved financial success as a software engineer without any coding experience.

If you are considering switching careers, just graduated and want to make the leap or simply want to know how to become a software engineer without a college degree in computer science check out the details below. I hope they provide inspiration and advice to help you start your own journey.

Start with an Introductory Computer Science Class

Writing code without a degree.

In college I signed up for the most basic computer science class I thought I could handle. In that class I learned how to design my very first website using HTML and Javascript. I created a series of linkable pages and loved every second of it.

Most universities, community colleges and online programs offer some type of introductory computer science course. Unlike higher-level courses you don’t need advanced math skills or a background in computer science to try it out.

Sign up for an easy course to learn the basics of computers, website design and coding. If it’s enjoyable continue on to step 2.

Train Yourself

Online Options

Remember you don’t need a CS degree to become a computer programmer or software engineer. These days it’s easy to learn how to program right from your home computer.

Coding newbies should check out Lifehacker’s unbiased list of learn to code resources specifically for beginners. Coursera and Codecademy are two of my favorites.

Leetcode is another amazing website for those just starting out. You can find hundreds of problems as well as detailed solutions that include real Java and Python code.

Many sites offer a short, free trial. Just make sure you don’t sign up until you are absolutely ready to try out their programs. That way you can test out each platform before paying for it.

Also search for free computer programming courses on the web. They might not be the best option, but they will give you a taste of coding without paying upfront fees.

Coding Bootcamp

Coding bootcamps provide a hard-core coding curriculum within a short period of time. If you have the energy bootcamps can train you quite quickly. Just beware of their hefty price tags, which can range from $6,000 to more than $20,000.

There are plenty of self-study options available to avoid these programs, but a bootcamp can offer one major advantage. Bootcamp graduates often receive job assistance to help you land your first real world gig.

Course Report provides extensive ratings of fifty-five different boot camp options. Check out their detailed reviews before making your decision.

Keep in mind, understanding different programming languages isn’t required to land your first job. Writing code takes time and patience and sometimes it’s easier to focus on one speciality than to become well versed in multiple technology stacks. When searching for bootcamps look closely through the curriculums to find coursework that matches your needs.

Ask for Employer Assisted Training

If you already have a job find out what types of training resources are available at work. Explain your goals to your manager and ask for his or her advice on learning new skills. Some larger companies offer in-house training or provide employee reimbursement if you have to train elsewhere.

Keep in mind that different companies utilize different languages and computer skills. Ask about the technologies your company uses. Then focus on learning those specific skills.

Make Connections with Software Engineers

Software engineer writing code.

During my senior year of college I interned for a very small technology company. As an English major I worked on marketing materials. I also spent a lot of time learning about software. It wasn’t part of my job, but I didn’t let that stop me.

In fact, I inundated the engineers with questions about the products they built. It turns out most of them were more than happy to talk with me.

Just before graduation the president of the company offered me a full-time job. He commended my interest in the technical aspects of the business and offered to train me to learn more.

I turned down that job offer, but I learned a valuable lesson. Don’t be afraid to show an interest in technology just because you lack experience with it.

Most companies have an IT or technical department. My best advice is to forge relationships with other employees who are working where you want to work.

Network, network, network! Start conversations now that can lead to future opportunities. You never know how those connections might pay out.

Search for Related IT Careers

As an English major I didn’t have the background to become a software engineer, but I did have the chops to become a technical writer. Interning taught me how to explain technology in ways that non-technical folks can understand.

So I set off to find a technical writing job. Along the way I stumbled across a company willing to train technical writers to write code. It was a once-in-a-lifetime stroke of luck. Or was it?

It turns out there are tons of IT careers that can get you closer to the world of software engineers. Technical writers are one option, but so are testers, project managers, UX designers and even those who perform technical support.

Working alongside software engineers can help you become one. Trust me, this is one of the easiest ways to get your foot in the door.

I’ve known testers, analysts and call center operators who became software engineers simply by hanging out with the technical folks. Again the trick is to gain proximity to the job you want. The tech industry is full of positions. Start in one of those and it’s easier to transition to an engineering job.

Create relationships with IT managers who may be willing to help you learn on the job.

Believe in Yourself

My company provided four months of broad-based technical training. That was it. We spent a few weeks learning about software development. Specifically, C, Objective C and the general constructs for creating databases and understanding operating systems. Then they sent us off to write and test code.

After training I began working as a QA Analyst. Testing was okay but I really wanted to code. I forged a great relationship with my manager and explained my goals early on.

Within a few months I volunteered for a programming task even though it wasn’t related to my assigned position. My manager liked my eagerness and initiative and gave me the chance.

This may be the most valuable lesson of all. Don’t be afraid to talk your manager about writing code or dabbling in engineering tasks. 

Be honest about your lack of experience and formal training. Then express your desire to contribute to the project anyway. If you don’t speak up you’ll never get the chance to try.

My new task involved writing Java code, which was a language I’d never used before. I bought a couple of books, read them cover to cover and began experimenting. Beyond that initial training I learned everything I needed to know on the job or by studying after work.

Coding skills are transferrable. Once you learn one programming language you can easily learn another.

Most of my counterparts graduated with computer science degrees, but a couple of the older employees were self-taught. I asked them for advice on advancing as a software engineer without a CS degree. One smiled and said, “Steve Jobs didn’t graduate with a college degree either.”

They were right. My missing comp-sci degree never held me back. 

Create a Website That Highlights Your Knowledge

Create a website.

Many of the details above work well if you already have a job, but what if you don’t? How can you demonstrate your proficiency without a diploma?

Create a blog or website to highlight your skills as you learn them. Take screen shots displaying your code and the finished project. Web development is a highly coveted skill, so providing examples of your skills will help with future interviews.

This is a great way to prove your knowledge to potential employers. It’s also a great way to form connections with other software engineers who are trying to do the same thing.

Include these details on your cover letter and talk about what you’ve created at job interviews. Make sure to discuss your website with hiring managers during your technical interview.

Prepare for Your Interview

This may sound strange, but my liberal arts degree helped me immensely as a software engineer. Thanks to my background in English literature I was able to articulate designs and technical details better than any of my comp-sci counterparts. 

Many software engineers can write code, but they lack the communication skills necessary to share their ideas with non-technical team members and business partners.

Make sure to point out your non-technical qualifications and soft skills to potential employers. Emphasize your problem solving abilities, your willingness to learn new things and your overall grit and determination.

As a software engineer you will spend plenty of time writing documentation, explaining your ideas and talking in meetings. Don’t forget to highlight those qualifications and business skills during interviews.

Of course, it goes without saying that you should prepare for the computer science portion of your interview too. Coding challenge websites provide problems similar to those you might find in an on-site interview. If you feel proficient solving those you’ll have nothing to fear in your interview.

Be Willing to Take a Pay Cut

Don’t let the low starting salary of an entry level software job prevent you from applying.

Remember that over the long haul software engineers and computer programmers can earn a lot of money. Sometimes it’s worth taking a pay cut now to earn more later.

It may take a few years to increase your pay, but it will happen as you gain skills and experience.

The Future of Computing Jobs

Industry experts believe there will be a shortage of 1.4 million software developers in 2022. Computing jobs will be abundant for those with programming skills. 

The average salary for a software engineer in 2022 is $98,949! On the east coast, where I live, a software engineer typically earns six figures.

If you are searching for a career change you can’t go wrong by pivoting towards information technology.

You don’t need an expensive degree program or a highly touted engineer resume. You need a fair amount of technical skills, which you can learn in your spare time. Remember, you will continue to learn more on your first job and every job thereafter.

Good Luck

I wrote this post for a reader who was seeking career advice. She read a post titled Quitting My High-Paying Job and wanted to know more about my degree in computer science.

When I told her I didn’t have a technical degree she responded almost immediately with just one question: “How did you become a software engineer without a CS degree?” As I stared at the words in my inbox I decided to write this post.

If you’ve read this far I wish you the best of luck! If you have any questions feel free to leave them below or email me.

I love to talk about this stuff. Embarking on an engineering career is exciting and I love the ride my career took. I also love to find fellow techies who took non-traditional paths into software engineering. If you have any interesting stories to share please fill out the comment box below.

You too can become an engineer without a degree. Good luck!

5 thoughts on “How to Become a Software Engineer Without a Degree”

  1. Fellow English major here! While I can’t share what I do now, my job is pretty far from the predicted career paths when I first started working on that BA. I’m glad, I would have been a miserable and terrible professor. I am very not meant for teaching, and I suspect I’m not meant to be a writer by trade either. But the skills associated with reading, writing, and language have been really useful through my whole career.

    • I actually would love to teach. Although the version of teaching in my mind is probably nothing like real life 😉 I personally love your writing, so I would say your education definitely paid off!

    • As a fellow English major, I appreciate your comments on the value of an English degree. Too many people dismiss them (and other liberal arts degrees) as useless, but it couldn’t be further from the truth. I’m a nurse, but my English degree has served every facet of my life, including the various jobs I’ve worked.

      Anyway, thank you for explaining how to pursue this career option! I’d been curious about this path, so now I know. 🙂

      • I actually loved being an English major. I love how flexible the degree can be and how much I learned to analyze facts and details as a result of reading hundreds of books and writing tons of essays. It’s such a flexible degree and English majors seem to show up everywhere unlike other math and science degrees that often lead to a small subset of careers.


Leave a Comment