It used to be a common assumption that working in tech requires a lot of formal schooling. However, the demand for technical roles is only growing.
With it, so does the number of tech workers with a non-traditional background. This is great news for those wondering how to become a software engineer without a degree.
Many would argue that coding bootcamps and online certifications give you an advantage. This is because they prepare you with more on-the-job skills than a university degree. While a college education certainly has its place, it’s not the best path for everyone. The return on investment is often higher for those going the informal route.
In this article we’ll take a look at over how important is it to have a degree in software engineering. We’ll consider what kind of learning path is best for you, and what steps you should take to make the transition.
If you don’t have a degree but would like to break into tech, this is the article for you!
Feel free to click the heading below to jump right to that section.
- Do you need a degree to be a software engineer?
- Can you become a software engineer on your own?
- How to become a software engineer without a degree: A 6-step guide
1. Do you need a degree to be a software engineer?
In short, no—you do not need a degree to become a software engineer or web developer. Although obtaining a Computer Science degree or similar remains a common way to break into the field, self-taught engineers and bootcamp grads are increasingly common pathways as well.
According to the 2022 Stack Overflow developer survey, out of 53,507 responses from self-identified professional developers, 47.9% had a Bachelor’s degree, and 23.9% had a Master’s degree. 87% reported they had some type of post-secondary education (though not specifically in Computer Science).
When it comes to learning to code, the same survey reports 70.91% used some type of online learning resource, like videos, blogs or forums. Another 46.3% said they did some type of online courses or certification, and 10.8% did a coding bootcamp.
Getting a degree remains a clear way to signal that you have the background and theory for the job. As long as you can prove your skills during the interview process, it’s not necessary.
2. Can you become a software engineer on your own?
This depends on you, your time-management and dedication. It’s absolutely possible to learn on your own and get a job in the field. There are plenty of online courses, videos, books, and communities to help you along your way.
When learning on your own it’s important to set aside regular time, and have somewhere to go when you get stuck. This is a key tool to have if you’re wondering how to become a software engineer without a degree.
If you’re not very self-motivated, a more structured coding certification might be a good option. Studying in a coding bootcamp or other program, you’ll have deadlines and people to go to when you have questions.
3. How to become a software engineer without a degree: A 6-step guide
So you’ve decided software engineering is something you’re interested in pursuing. Now, where to start? Let’s break it down step-by-step.
Step One: Check out which skills you’ll need
You don’t need any prior background to become a software engineer or web developer, but there are certain core skills you will need to learn and develop. Here’s an overview of what skills are important for web developers:
- Frontend frameworks (React, Vue, Angular, etc.)
- Backend technologies (Node, Python, Ruby, etc.)
- Databases and web storage (SQL, MongoDB, GraphQL, etc.)
- HTTP and REST
In terms of soft skills, it’s important to have a growth mindset to take on challenges, organization, and communication. You’ll likely be working together with other developers, designers, your product manager, and others.
To dive a bit more in-depth and learn more about some of these, have a look at the top 10 skills every full-stack developer needs.
Step Two: Get learning
Whether you plan to go self-taught or do a program, it’s good to get a head start. You can familiarize yourself with basic concepts online before you throw yourself in.
If you’re trying to get a better idea of what coding is like, working through some classes online will help you. Even if you do a program like a software engineering course or bootcamp, many of them will have online prep work anyway.
Try out different frameworks and languages online to determine where your interests lie. This will help you feel more prepared and confident with the syntax of your chosen language(s).
Not sure where to start? Check out this HTML/CSS tutorial from our own in-house engineer, Abhishek:
If that’s whetted your appetite, we’ve also made a list of some of the best online web development tutorials for beginners.
Step Three: Start building projects
Once you have some theory under your belt, it’s time to work on the practice. You’ll want some projects on your software engineering portfolio, and something to show on your Github profile.
Two ways to do this are to complete online courses that include projects like CareerFoundry’s free coding short course, or to contribute to existing open-source projects.
GitHub is an important tool during any web development job search. Each user on GitHub has their own profile that shows the projects to which they contribute and how often. If the projects are public, the code they contributed is also visible.
This is why you want to complete some projects. Looking at your GitHub profile, potential employers get an idea of you as a developer and see a sample of your code.
Check out our full beginner’s guide to GitHub to learn more about how to do this.
Step Four: Find a mentor and grow your network
Depending on how you started your coding journey, there are different ways to go about this. If you do a formal program with other students, make sure to follow them on LinkedIn. Reach out to alumni of your program, and ask about their experience.
If you are going the self-taught route, one idea is to join some online groups for developers. Contribute to the conversations there and get to know people. Lookup and join a local hackathon.
Check for local meetup groups in the field and attend those. Here you can meet people in your same position, and learn from each other as you go about the job search process.
These will give you the support system necessary to thrive when learning how to become a software engineer or web developer without a degree.
Step Five: Prepare for the job search process
Make sure your GitHub displays your projects and get your online presence ready. Update LinkedIn with your new skills. Add your projects there, and remove experience that’s not relevant.
Research common interview questions. Write down your answers and practice algorithms to help you feel prepared.
Think about what is important to you in a job. Want to be sure work/life balance will be good? Come up with some questions for potential employers that reflect this. Key Values’s culture queries is a great resources for this. You select your values, and they suggest questions to ask in your interviews.
Step Six: Start applying
Once your LinkedIn profile is ready, make sure to turn yourself on to recruiters there. In tech, a lot of the job-search process goes through recruiters, and they often come to you. This is why having your profile filled out with the right keywords for your field is so important. Make sure the languages and frameworks you know are listed in your skills.
Put yourself up on the local inbound job sites near you. In Europe these are talent.io and honeypot. These are job sites where you make a profile and employers reach out to you.
Keep track in a spreadsheet where you’ve applied. Mark which stages of the process you make it to for each application. This will help you determine where you might need to put in some extra work.
For example, if you don’t get to the initial 20-minute recruiter call, this could mean you need to work on your resume.
If you get plenty of recruiters reaching out, but don’t make it to the technical interview, don’t panic. Have a quick assessment of all your application materials—it may be, for example, that you may need to work on your personal branding and narrative.
Transitioning to a new field is always overwhelming. Tech specifically can seem unapproachable when you’re not familiar with the field. Working as a software engineer is an interesting job. It generally has a high salary and great benefits.
It’s not necessary to get a degree at university to break into the field, as long as you have demonstrable skills. There are many routes in successfully mastering how to become a software engineer. These range from entirely self-taught, to online certification, to an in-person coding bootcamp or career-change program like CareerFoundry’s Full-Stack Development Program. Many people make the switch. With some time and dedication, you certainly can too! If you’d like to dip
If you’d like to learn more about the world of software engineering and web development, check out these articles: