You want to become an embedded software engineer?
No matter where you are right now, you are probably surround by embedded systems without even realizing it:
An embedded system is a comupter systen that has a dedicated function within a larger mechanical or electronic system.
This could be for example, the microcontroller in your coffee machine or the microcontroller embedded in your RGB Bulbs. But embedded systems are also used in Cars, Planes, Spaceships, and so on.
5 Steps to become an Embedded Software Engineer
So if your goal is to work on one of those systems and become an embedded software engineer than watch my YouTube Video on “How to become an embedded software engineer”.
Learn to programm in C
C is still the programming language that is dominating the embedded space, even though there are alternatives around, to get a good understanding of the basics. You can and should start by learning C on your desktop computer before you are using it on an embedded device. The reason for this is, that you want to learn one thing at a time.
A good introduction to the C programming language is the C in 4 hours course.
Learn the basics of electronics
Working with embedded systems you are very close to the electronics side of things, so you need to understand the basics here, what is a resistor, how does an analog to digital converter work etc.
An introduction to electronics basics can be found here.
Get started with Arduino
While most of the commercial system will not use Arduino, it is great for self-taught embedded software engineers for two reasons:
- It provides a nice abstraction layer to some of the more advanced embedded system topics and therefore is easier to learn as a barebone microcontroller system.
- It has a very large community, so it is easy to find project ideas, blog posts and solutions to your problems because chances are you are not the first person that has this problem.
To get started with Arduino, I recommend to get an Arduino starter kit and this course here.
Take the next step and use a more barebone microcontroller.
Once you feel comfortable with the Arduino environment you can start exploring other system, like for instance the STM32 Nucleo boards, that give you even more direct access to the hardware.
To get started with other microcontroller you can check out either this or this course.
Never stop learning
Now you should be able to develop your first projects, from this point on just keep learning, increase the complexity and difficulty of your project, and have fun!
Thanks for your help.
sir, I am an electronics and communication engineer. I have already done c programming, analog and digital electronic courses at university. Also, an Iot home automation project using nodeMCU in my 3rd year. so should I start by watching tutorials on c programming, electronics and arudino or do some other projects?
Thanks you sir, this video was helpful, I’m currently a uav pilot /engineer trying to develop my own systems.
perfect thanks
Good day Professor,
I’ve been watching your videos and started following your tips while taking the course next year.
Please provide an advice which course should I take? Should I go for Engineering tech degrees or diploma in robotics and automation? I am really unsure which is the best path to go. Is there a course specifically for embedded software engineer?
Thank you sir.
Pingback: Study To Code From Zero – How To Train Your self Programming From Scratch
I like your video, but I prefer to use the resources that I can read (books for example) rather then the videos, so if you could add some readable material as alternative to the video resources, I’d appreciate it.
Actually you good instructor for this course, how can I read with your class to learn more from you Prof. JOIN ME If you don’t mind my contacts
+255 755 449 767 or daja00002@gmail.com
Hi Florian,
Thank you for your very inspiring, informative and helpful content. My name is Daniel, born and raised in New Zealand, and doing Embedded Software Engineering has always been a dream of mine. You have inspired me to work hard on my current profession in Health to make my way to German in the next 5 years!
Once again, thank you for your input.
I very much appreciate it 🙂
Take care,
Daniel.