An embedded software engineer works with other software development engineers on tasks in real-time embedded communication and control environments. They contribute to the design and development of next-generation video display technologies, systems, and components. Embedded software engineers work with codes and drivers to enhance and build new systems.
An embedded software engineer uses software design techniques and procedures to complete a sequence of related engineering tasks, such as investigating, design, developing, and testing in accordance with company guidelines. They are also responsible for applying complex technical skills to older software to add more features. They participate in the review of documents, designs, codes, and test cases of software. Embedded software engineers perform functional testing of developed software to ensure correct operation and compatibility.
It is important that embedded software engineers keep abreast of relevant technology; they work in a fast-paced environment and must keep up to date on the changing trends. Embedded software engineers typically work during business hours, although overtime may be required depending on the demands of the project.
Embedded software engineers must have a bachelor’s degree in computer engineering, computer science, or electrical engineering. It is preferred that they have a master’s degree or higher in one of those fields. They must have a strong experience in C and C++ programming, as well as a experience with OS internals and driver development. It is important that they possess some knowledge of various scripting languages. A familiarity with object-oriented design and analysis tools is also a plus.
Embedded Software Engineer Tasks
- Write performance critical code in resource-limited environments, including low power, low memory, restricted bandwidth, CPU, etc.
- Test and document software.
- Use kernel debuggers, system dumps, and assembly language, as well as higher level languages.
- Write, modify, and debug software for embedded devices.