How to become a software developer without a degree in computer science

03/05/19

You don’t need a degree in computer science to become a software developer. You just need a plan, some effort and an aptitude for solving problems. The demand for software developers is as high as ever and good developers are in short supply - that means great salaries and plenty of vacancies. You can make the move if you really want to.

software development

How do you do it? I had three types of novice software developer in mind when I was writing this -

  1. 19 years old, doesn’t want to go to university.

  2. 24 years old, got a degree (or maybe not) but not related to software development.

  3. 35+ years old, wants to change careers.

Here are some ideas. Pick what suits you best.

  1. Focus on web development at the start - interactive web sites that link to a back-end database. Web applications still make up the majority of business applications.

  2. Pick a programming language/technology stack. I’m going to say PHP because it’s easy to learn. It’s been around a while, but it is still popular. You could choose JavaScript & Node.js - that’s probably where the momentum is now. Or go down the Microsoft path and do ASP.NET & C#. This about finding a job so do have an eye on the job market when you make your choice.

    There are sites on the web that tell you about the demand for different technology skill sets and salary levels.

  3. Set out to teach yourself - 6 months is doable. Less than six months is definitely possible, but you need to commit some time. There are loads of free resources on the web. Teaching yourself to the point where you feel reasonably confident in an interview is a good test of commitment. Yes you’re still going to be a beginner when you start that first job, but you will be pleasantly surprised when you realise how much you already know.

  4. Work on a project - I think you need to do this. It’s the best way to learn - build something that is real/useful. And it gives you something to talk about in an interview. Interested in fishing like me? Build an online portal where anglers can record their catches. Definitely doable by a novice from scratch in 3 - 6 months.

  5. Write to local software development companies - actually write, don’t just send emails. Or maybe do both. Which companies build software near you? Do the research and begin to network.

  6. Consider some additional training. You could do one of do these things:

    1. Get a software development apprenticeship - you can do that at 19. More software developer apprenticeships are beginning to appear. You get a proper job and 20% of your time at work is set aside for study.

    2. Do a structured online course. Part of me thinks that this isn’t as good as building your project, but maybe for some people it is a good choice and you could run it in parallel with your home project. There are lots of free online courses.

    3. Do a software development ‘bootcamp’ - a short intensive course. These can be face-to-face or they can be online (but with interaction with other students). You often have to pay and they can be expensive, but you get a crash course. I know people who’ve done this and then found jobs almost immediately.

    4. Find some other kind of local course - does your local college run a course?

  7. Develop some awareness of the different kinds of software developer roles. I think this is important because it’s a way to link in your own experience, particularly if you’re older and changing careers.

    For example, ‘analyst developers’ get involved with talking to clients, understanding business requirements and then designing a solution . Talking to clients about their requirements and then creating a good solution is harder than writing code - you have real advantage if you can bring domain experience from a previous career.

That’s my advice. I hope it’s useful. I admire older people who change careers - they bring something extra to the new job, some wider experience. Software companies really value that wider experience and you should play that card when you can. Good luck.