Next Steps: Becoming a Backend Engineer

Table of contents


In the previous post about my history I talked about taking a sabbatical period to escape the routine and explore other hobbies. Today I want to share what my next steps are going to be.

Summary of my development career

First, let’s recap, I started in the world of professional software development when I was 17yo (2018). Since then, I have been working with different companies on numerous projects. Most of them consisted in developing clients for either web or mobile to interact with existing backends. Although I enjoyed the challenges that a frontend developer faced, I eventually grew tired of the frontend ecosystem.

Don’t get me wrong, frontend development is a very complex topic specially with the surge of new JS frameworks, libraries, web APIs, SSR, SSG, etc. Even though these cool technologies are great, I feel like we usually over-complicate things when most use cases could be solved with vanilla JS or micro-frameworks (see htmlx)

Where do I see myself in the future?

I want to try new things and backend development caught my attention because it’s related to the work that I’ve been doing all these years.

Despite being related the transition between one and the other is huge. A backend engineer should know about API design, protocols, OSI layers, load balancing, databases, security, authentication/authorization strategies, deployment, and the list goes on and on. Due to this vast amount of new knowledge I wasn’t feeling confident enough to apply for a full backend position.

Luckily, we live in the era of information and taking advantage of the sabbatical period I managed to create a plan to get where I wanted.

How do I plan to get there?

The first thing that I did was identify the technologies that a backend developer should know about. There are some good resources in the internet such as backend roadmaps but what I find the most useful is to look into the requirements of real job offers.

After collecting a huge list of technologies I assessed how confident I felt about each item of the list. That simple exercise helped me narrow the prior list and notice where my weak spots were.

This process has proven to be very efficient in the past as it takes into account what I already know and helps me focus on what I don’t. Furthermore, I find it easier (and quicker) to learn single topics instead of attacking the broad question of “how to become a backend engineer”.

The final result was a list with technologies I didn’t know much about and questions on tech that I knew. Lastly I prioritized it and voilá, I got myself a roadmap to become a backend developer.

Which resources did I use to study backend development?

The resources that I’m about to share are meant to fill the gaps in my own knowledge. I’m not trying to provide the final roadmap to backend development. My intention is to share resources that I found insightful so that other people can benefit from them.

Before clicking in any link, I encourage you to find your own “weak spots” rather than mindlessly consuming all the resources bellow.

Backend fundamentals

The single best resource that I can recommend is Hussein Nasser YT channel. He has lots of videos about backend development, personally I like his explanations and how the dives deep into topics. Apart from watching lots of videos from his channel I also took his course on backend fundamentals.

Databases

API design

Security

Closing

I’m aware that I still have a long way to become a real backend engineer but thanks to this period I now feel ready to take on backend positions.

In the next weeks I plan to get my hands dirty developing a “toy backend” in Go and put in practice all the things I’d learned.

I hope this would help some other frontend developers trying to get into the world of backend development.

Thanks for reading.


Contact me