Embedded Engineers: Roles & Responsibilities

  • Context: Engineering 
  • Thread starter Thread starter vead
  • Start date Start date
  • Tags Tags
    Engineer
Click For Summary
SUMMARY

The discussion outlines the distinct roles of embedded engineers, including Embedded System Engineers, Embedded Software Engineers, Embedded Firmware Engineers, and Test Engineers. An Embedded System Engineer ensures the functionality of the embedded computer with surrounding hardware, while an Embedded Software Engineer develops and maintains application software, often requiring specialized loading techniques. The Embedded Firmware Engineer manages firmware updates and flashing processes, and the Test Engineer conducts both functional and system tests to validate performance. The conversation emphasizes the complexity of embedded systems and the necessity for engineers to possess a strong background in electrical engineering or hardware knowledge.

PREREQUISITES
  • Understanding of embedded systems and their components
  • Knowledge of embedded software development practices
  • Familiarity with firmware management and updating processes
  • Experience with testing methodologies for embedded systems
NEXT STEPS
  • Research Embedded Linux kernel management techniques
  • Learn about debugging strategies for embedded systems
  • Explore scripting for automated testing using MATLAB
  • Study hardware description languages for FPGA design
USEFUL FOR

Embedded systems engineers, software developers, firmware engineers, and test engineers seeking to deepen their understanding of embedded engineering roles and responsibilities.

vead
Messages
92
Reaction score
0
what is role in company for following engineer
1 Embedded system engineer
2embedded software engineer
3 embedded firmware engineer
4 test engineer
 
Physics news on Phys.org
An embedded system:

http://en.wikipedia.org/wiki/Embedded_system

so an embedded systems engineer I think would make sure the embedded computer works with, monitors or controls the surrounding hardware.

an embedded software engineer would develop and maintain the application software running on the embedded computer. He/she might have to specially load the software onto the computer thru some special means like replacing a ROM or some controlled write to update the EPROM or SDCARD ...

an embedded firmware engineer would handle the firmware of the computer system ROM, PROM or EPROM or SD card. He / she may have to update and flash the ROM with a new OS.

a test engineer would run hardware and software tests on the embedded computer and its hardware. The tests would be things like
- functional tests, I inject an error and an LED lights up and do this for each LED, each sensor, each supported function...
- system tests, I use the device like a user doing common user tasks and see how well it works do the right LEDs lightup do the right motors activate... I use it with other devices that its supposed to work with like on a distributed network or in the context of a bigger system

A simple example would be a GPS system that works standalone or in a car. The software guy develops the software for it, the firmware guy maintains the embedded linux kernel, the systems engineer designs it to work within a car. The test engineer tests it standalone and then within the car
 
Hopefully he will have the kindness toward his end user to include a watchdog timer and make the embedded system leave a visual clue as to why it hangs up or stops.

This poor guy has a genuine problem:
https://www.physicsforums.com/showthread.php?t=770276
Dear All,

plant is running droop mode not connected with grid
fuel type HFO heavy furnace oil engines, this engine is software control,
during operation communication failure appeared and all parameters held (hang) emergency stop does not work.
this engine one accident of over speed alternator rotor poles broken

I include a few LED's for heartbeat and program status to tell what it's waiting on, and a register with user accessible error message.
 
As was said above, an embedded software engineer writes software for embedded systems. This can loosely be defined as any system that is not a normal ready to go computer with already debugged hardware. These engineers work with the hardware engineers to debugged both the hardware and software simultaneously. It is this interplay of hardware and software debugging that characterizes embedded software. As you can imagine this debug is FAR more difficult than debugging on a system with debugged hardware.

It is a rather difficult field and its practitioners are considered to be rather elite. It is common for embedded software engineers to be educated as electrical engineers originally. If you don't have an electrical engineering background, then you at least need to have extensive knowledge of hardware. It is a difficult field to break into, but it is worth it if you can because it pays considerably more than just straight software.
 
Typically, test engineers write scripts in MatLab or some other scripting language for automated tests and then runs them to test computer or embedded systems. Sometimes this refers to people who just run the automated tests, but these are not really engineers but just techs. This is a much less demanding field than writing embedded software and most have degrees in computer science or math. Still important though.
 
Last edited:
The firmware engineer typically writes software in some hardware description language to design and configure Field Programmable Gate Arrays (FPGAs). It is usually considered to be a form of hardware engineer and almost all people who do this have degrees in electrical engineering. Sometimes engineers who write software like the PC BIOS are considered to be firmware engineers, but they are more correctly considered to be embedded software engineers.
 

Similar threads

  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 11 ·
Replies
11
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 2 ·
Replies
2
Views
4K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 6 ·
Replies
6
Views
4K
  • · Replies 21 ·
Replies
21
Views
5K
  • · Replies 1 ·
Replies
1
Views
2K