Back to blog
From Code to Circuits

March 23, 2026 (1mo ago)

How I transitioned from a frontend developer to a Firmware Engineer

I started coding in my first year, in 2021, unaware of the world of software, I dove in and decided to explroe it on my own pace - for the longest time I could not decide on what to go deeper into - web or app dev or just keep doing DSA.

College didn't help much - folks were doing things all over the place - I stuck to learning Javascript and slowly got into learning React - I started to get a hang of things - except how to center a div - but I was finally able to make sense of code and tweak it according to my own will - it was great - at the end of 2nd year I finally got into making projects, exploring another language - python - it was going well. In the middle of 3rd year, I got my first internship - as a frontend engineer, remote role at a startup, pretty cool at that point, I was finally able to get a hang of how things works at production level.

I started making web based dashboard - frontend only at first but soon I got to explore full stack work, owning things end to end - APIs were on my plate too - TypeScript came into picture, it was cool, learning how to control both the ends. Worked as a Full Stack Web developer for almost 1.5 years.

Then I switched - got in as a full stack web dev in another startup - In the first couple of months got to tackle some very interesting problems like setting up TCP servers - yes, got to explore what actually happened at the fundamental level - got a problem statement to communicate with multiple devices working on TCP, storing their info in database, presenting them in a pretty manner - old frontend skills came in clutch!

The TCP project was the first time it clicked to explore about what happened at lower levels - I got a chance to contribute to an IoT project - without any prior knowledge of C - an uncharted territory - but interesting and it was something the org expected so why not - slowly started to learn C and started to connect the dots of how a Real time operating system (RTOS) works - how software actually communicates with hardware - the constraints of having only 4mb of RAM on a system, 4MB of storage.

The learning curve was steep overall but with the onset of AI tools, it was manageable. It wasn't the most ideal setup since AI was doing a lot of heavy lifting. To any new dev reading this - AI has made it much easier to explore so don't be scared just dive in and try to navigate your way through the challenged, at the end you'll become a much better engineer. Don't limit yourself to a particular stack. In my opinion, covering breadth in terms of your skillset is a great idea in this current situation.

If you liked the blog, do consider:

Buy Me A Coffee