How to Become an Embedded Systems Engineer
Photo by: Tech. Sgt. James Hodgman
So you want to become an embedded systems engineer? What’s it going to take to get there? If you’re into robots, know your way around PCBs, and love coding in C, you might have the makings of an embedded systems engineer. In this article, we’ll cover the skills, accreditations, and career path of an embedded systems engineer.
What is an embedded systems engineer?
What do the avionics on a rocket, the automated powertrain of a self-driving car, and the internals of your programmable pressure cooker all have in common? They’re all examples of embedded systems—combinations of hardware and software designed to perform specific tasks.
An embedded system typically consists of:
-
Analog sensors for real-time data collection (temperature, pressure, acceleration, etc.)
-
Microcontrollers, microprocessors, and/or actuators for decision making, automation, and control.
-
Embedded software: coded instructions that can run the whole system without human input.
The embedded systems engineer is responsible for the design, development, production, testing, and maintenance of embedded systems. Often times, this role leans more towards the software development side of the equation, which is why this position is also known as an embedded software engineer.
Core skill set of an embedded systems engineer
Like the systems they manage, the embedded systems engineer requires experience with both hardware and software.
The core skill set of an embedded systems engineer looks something like this:
-
Programming languages such as C, C++, and Assembly Language are the most common requirements for this position. LabView is also popular for working with National Instruments data acquisition units. Depending on the job position, familiarity with other languages such as ADA, Lua, Rust, Python, VHDL, and Verilog may also be required.
-
Microcontroller/microprocessor ecosystems such as Arduino, Raspberry Pi, Atmel AVR, ESP8266 NodeMcu, and PIC10Fxx.
-
Memory management: a solid understanding of the different types of memory, including RAM, ROM and Flash, and how to develop software where memory is a premium.
-
Circuit Design: PCBs, signal analysis, debugging, assembly and testing of integrated circuits and their components. PCB analysis and design software such as Sigrity and Allegro.
-
CAD Design: Basic hardware design using CAD software such as AutoCad or SolidWorks.
-
Measurement: Experience using digital multimeters, oscilloscopes, DAQs, and other equipment to measure, analyze and troubleshoot electrical systems.
-
IoT devices and frameworks such as Google Cloud Platform, IBM Watson, Azure, and AWS.
-
Data Processing and Analysis: Able to process and analyze data using Excel, Matlab, and Python.
-
Technical Writing: A large part of the actual engineering job is technical documentation. Even better if you can write research grants.
Even if an embedded system engineer never has to directly touch the hardware of the systems they design, intimate knowledge of those hardware systems is required to properly design embedded software.
Embedded Systems Engineer Degrees and Certifications
As you might imagine, there’s a lot of overlap among degrees in the world of electrical and computer engineering (ECE) that you can use to work towards a career in embedded systems. Here are some of the more popular programs you can pursue for either a bachelors, masters, or PhD:
-
Embedded Systems Engineering
-
Electrical and Computer Engineering
-
Electrical Engineering
-
Computer Science
-
Robotics
The nice thing about embedded systems engineering, is that experience and personal projects probably speak louder than any certificate for getting a job in this field. That said, depending on your industry, it may be worth considering some of these certificates:
-
CLED (Certified LabView Embedded Systems Developer) from National Instruments.
-
CMfgE (Certified Manufacturing Engineer) from SME.
-
CAP (Certified Automation Professional) from ISA.
There are many other certifications available for specific skills such as soldering or CAD design. It’s best to acquire these as part of your job experience.
Embedded Systems Engineer Career Path
Once you land a job as an embedded systems engineer, it’s entirely possible to continue to work within that profession till you retire, much like a CPA, a doctor, or a lawyer. The key is to remain up to date and savvy on the latest technologies. That said, it’s also true that for more financial gain, many transition into management or marketing roles within companies. Here’s a look at some of the career paths that become accessible to an embedded systems engineer:
-
Senior Embedded Systems Engineer
-
Quality Assurance Engineer
-
Project Engineer
-
Program Management
-
Sales Engineer
-
Marketing Director
Even if you do eventually transition to a position with soft skills such as management or marketing, it’s important to remember that embedded systems engineering is a lifelong skill. Just as the carpenter can always build their own shelves, an embedded systems engineer will always be able to apply their mastery of electronics to DIY projects in and around the home.