Sorry! Your browser is not supported on this site and it might be acting a bit wonky. Please use Firefox, Chrome or Edge instead

How long does it take to become a software engineer?

Niklas Halonen

Written by:
Niklas Halonen

This is Niklas’ story and how he became a software developer in two short years, landing work when he was 18. This involved pursuing his passion in high school, finding the right opportunities here in Scandinavia and getting real-world experience before starting his software engineering degree.

I’m 18 years old and because of the journey I have been on in my teens, I am already a software engineer. Here I’ve explained how I’ve landed paid work at the age of 18 as a software engineer. I’d say it took me 2 years to start working in software development and I haven’t started my Bachelors degree yet.

Early interest in computer programming and how I got started

In middle school I got excited about programming when my dad gave me my first Linux laptop with Xubuntu installed. That’s when I got into game development with Pygame and writing Bash scripts to automate things on my computer, thereby increasing my work efficiency.

In middle school, I got to go to Aalto University to work at the Department of Computer Science through a work experience program that my school was running. That’s where I learnt how to use Git and Django to develop websites and how to use command lines.

Secondary school, Koodi101, learning to code and teaching

When I started at Olari upper secondary school at the age of 16, I already knew C++ and Python quite well, and that’s when I made a new friend who was also a programmer.

In spring before the end of my first year I attended a course taught by Eficode called Koodi101. This was meant for highschoolers like me. In Koodi101 we learned how HTTP works, React, Node and Docker and I got very excited about these new technologies and programming languages.

The course was very useful because in summer I went to work at Aalto to study these technologies more thoroughly. The Koodi101 stuff I’d learnt helped me work as a summer trainee at Aalto and develop proof-of-concept projects for them.

Teaching others how to code at the age of 17

In my second year at high school, I had multiple full stack projects under development and I was studying Javascript along with MongoDB to use in those projects. One of these projects was a 3D printer camera’s streaming service which had a chat room. The second was a bike lending system for the Pohjois-Tapiola upper secondary school.

In spring before a new Koodi101, Marko Klemetti the CTO at Eficode and Pohjois-Tapiola upper secondary school's teacher Matti Heikkinen and I talked about how to organize the Koodi101 course for that year. I got a very unique chance to be in the teacher's role because Eficode's Koodi101 crew wanted to involve high school students like me to teach other high school students.

Teaching felt natural and the climate felt relaxing because I knew the subjects so well that I had an answer to every question I got from the students.

Naturally, I applied to work for the following summer in Eficode and was accepted.

I applied through Eficode's open application where I submitted my CV and a short cover letter. A week later in a job interview I told what skills I had and what I wanted to do. Then I was accepted to work as a summer trainee. In practice the people at Eficode knew me quite well by then.

Working as a summer trainee at Eficode

I’m currently working full time at the Eficode head office in Helsinki and I’m going to be here for two months in total. The bulk of my job involves making a Slack bot for internal use at Eficode. I’m working on a survey bot that can save answers to a Google sheets document and it’s helping to give me real world experience.

Many people have helped me with various problems along the way. I’d say Eficode CTO is in touch with me multiple times an hour, providing feedback on my project decisions.

I have also learned a lot about DevOps and project management. The Eficode ROOT Platform Director Kalle Sirkesalo gave me DevOps teaching material and helped me to get started with Jenkins. I now know how to set up a Jenkins pipeline. Hamzah Mohamed from the ROOT team has taught me about Nexus IQ and Artifactory and a lot of things about the ROOT platform which has been interesting.

I’ve also learned about project management as I can set up an efficient Docker-based codebase.

I have really enjoyed my time! The most enjoyable part about working at Eficode is the friendly climate and seeing the amazing work morale my colleagues have.

Next steps on becoming a software engineer: software engineering degrees!

After graduating from Otaniemi upper secondary school in 2020, I want to study at Aalto University in Espoo. In terms of the degree programs I’m considering, I want to study electrical engineering or computer science there.

In my opinion, becoming a programmer in my case has been thanks to meeting the right people and getting the right opportunities. It has been relatively simple to reach my goals. I am grateful for the opportunities I’ve been given and look forward to a long career in software engineering and maybe working part-time when I study.

Everyone has a story to tell  Meet the Humans of Eficode