Senior embedded software engineers require a vast and diverse skill set. These engineers must be gifted communicators and leaders of a team of software engineers and programmers, as they work closely with other team members to produce software which meets customers’ expectations. They must be proficient verbal and written communicators, as they will need to communicate their vision to their team clearly and efficiently. Senior engineers must also mentor junior team members in all areas of software engineering as they learn and apply new technologies in their work.
Technical skills are also very important. Senior embedded software engineer positions generally require at least a bachelor’s degree in a computer science or a related field, experience with software development using C & C++ languages, and experience with other software development programs and languages. These senior engineers must use their knowledge and experience to develop creative programming solutions for employers’ or customers’ needs.
Generally, this position is located primarily in an office setting, but candidates should expect to travel to meet with clients, attend trade shows, or meet with remote team members. Many large organizations employ or hire senior embedded software engineers on contract; their clients or employers generally hire teams to develop software and programs. This position requires candidates to be self-starters, as the hours are variable. Those seeking a position should expect to work until a task is accomplished,and be available to their teammates and supervisors during and after business hours.
Senior 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.