Text: Parmeshar with additional reporting by Atika Lim

Whether you’re stuck in a career you dislike or re-entering the workforce, transitioning into a career as a software engineer is possible. As long as you’re willing to put in the hard work. Here are some steps to help you get started:

The Most In Demand Tech Jobs In Singapore Right Now
Tech Education In Singapore Needs To Be Revamped, Here’s How
How To Get A Job In Data Science, According To These Industry Experts

Choose A Language And Start From The Basics


When getting started, many people get stuck deciding which language (and framework) they should learn. Python and Django? Ruby on Rails? MEAN stack? There are so many choices, but so little time.

Tip: Once you know a particular language/stack well, it is not difficult to pick up a new one. That means that when you’re becoming a software engineer, what you want to focus on is understanding programming fundamentals.

Once you have a solid foundation, you can easily transition to new languages, frameworks, and technologies. The most important aspect of it is that you’re learning how to think like a developer.

Related: How Learning To Code Could Change Your Life

Build Something


With a basic understanding of a programming language, it’s time to put that understanding to work and find out where your gaps are. The best way to do this is to try and build something.

Don’t get too ambitious at this point–but also don’t be too afraid. Pick an idea for an application that is simple enough that you can do it with some effort, but not something that will take months to complete. Don’t try to do something full stack (meaning, using all the technologies from user interfaces all the way to databases).

For your first real project you might want to consider copying something simple that already exists. Look for a simple application, like a To-Do list app that many tutorials out there start out with.

Read Other Developer’s Code


Another important step of becoming a software engineer is to learn how to read other developer’s code. You can do this by browsing through GitHub repositories, and looking through source codes and documentation.

Sometimes, documentation can be wrong, but the source code never lies. By learning to read that code, you’ll be able to grasp what is going on and how a program works. This skill is also important when it comes to debugging, because you’ll be able to identify which piece of the code is throwing errors.

This is often a skill people ignore, but it can really help you to see how experienced developers do things. Don’t just do a fast skim through of the code, either. Dive deep, learn the ins and outs, map out the functionality, and finally, re-code it if you can. This way, you’ll be able to reverse-engineer an existing program, helping you understand that much better how to create one of your own.

Build Up Your Portfolio


As you learn new languages, build projects, etc, you should also maintain an online portfolio to showcase your new skills to potential employers. Here are some ways you could do so:

  • Create a GitHub Profile
  • Maintain a blog

IOTalents logo  This article was republished with the permission of IoTalentsIoTalents is a contemporary HR Tech and IT Recruitment company. We build useful HR technologies to enhance the recruitment experience, while working to connect quality tech talents with great employers.