A guide to become a software developer without a cs-degree

How a self-taught programmer like myself got a job as a software developer.

photo by Jefferson Santos (https://unsplash.com/photos/9SoCnyQmkzI)

Getting Started — Learn basic programming

To get started with programming, you first need to learn the basics. It makes no difference the programming language you begin with. I have seen many beginners get stuck when deciding on a programming language to get started with (myself included). I have to point out that all programming languages follow the same concepts. They only differ in syntax and some caveats. The basics will teach you how to write code, to compile it and to debug when the program doesn’t work as you expected.

Pick your arena — Choose what you want to work with.

Software development is a broad field since everything is pretty much software ranging from making small electronics to developing a social media platform. Nobody can master all of them so you have to choose what you’re going to work with. Each path leads to a different domain. For example, if you want to develop a website, you have to learn how websites work, how a web is hosted and exposed to the internet. You may be interested in mobile applications, you have to study how to code an app on Android devices (and also iPhone).

Get your feet wet — Code your own small projects

It’s time to code a project to get you familiar with the real world. I recommend starting with something small and simple. It’s not a good idea to come up with a giant kick-ass project. It’s good that you have a groundbreaking idea, but it’d be too much in the early phase. You could start with coding a web scraper to scrape data from websites. Or maybe coding your own website which could later be used as a port folio. Making a simple game is also a good idea, because coding games is not as easy as it looks. To code a game, you have to understand basic physics and how the user interacts with the game.

  • Terminal — You have seen it on the movies. A black screen that the hackers type on. Terminal is an alternative way of using your computer apart from using GUI. And it can do more than the GUI can. You could send file, install program, compile code using only terminal.

Build your online port folio and start applying for a job

Now it’s time for the world to know who you are. The easiest way is to create an account on LinkedIn.

Always sharpen your skills

The life of a software developer is a learning life. Technology never stops, so you have to keep learning every day. Being a developer doesn’t mean that you only need to know how to code but also the art of engineering. Coding is easy, but engineering is hard. You need to practice problem solving, actively studying new frameworks, learning about algorithms and data structures and many many more. Be open to the world. Extend your knowledge as much as you can.

Bonus — My first “Hello world”

At grade 7, My first program was written in C programming language. After I pressed the “compile” button and the screen printed “Hello world”. The whole new world is opened for me. At the time, I didn’t have any idea what programming is. I didn’t even know what it can do rather than making computer games. Since the first hello world program, I’ve been interested in tech and software.

May the force be with you

A coffee to engineering machine