We are currently looking for a motivated and skilled Firmware Engineer to join our firmware development team and be responsible for creating and implementing software for systems and applications.
Abilities Required:
Perform C/C++ embedded firmware development.
Use requirements to analyze, design, and implement functional needs.
Working as a part of a multi-disciplinary team to design, integrate, qualify and test application.
Testing, debugging, verification, and validation of functional modules against requirements.
Staying up to date with firmware development methodologies
Write bash and python scripts.
Coordinate with hardware engineers to develop requirements and test engineers to build and configure tests.
Designing program architecture based on project requirements and hardware specifications.
Writing software code, embedded programs, and system protocols.
Conducting tests on the embedded software systems to ensure proper integration.
Troubleshooting embedded systems and diagnosing errors, malfunctions, or inefficiencies.
Implementing effective repairs, modifications, and upgrades to the embedded code.
Generating diagnostic reports, technical manuals, and software development documentation.
Experience:
Minimum a degree in Computer Science, Electronics Engineering, or a related field.
A prior experience in embedded firmware development C/C++, assembly languages, and code development processes with debugging emulation and simulation tools.
At least 3 years’ experience with low level device drivers such as UART, I2C, SPI, CAN, ADC, DAC, etc.
Must possess a good understanding of software development life cycles.
Must have a knowledge of basic electronics hardware and its interfacing with software systems.
Must be familiar with software configuration tools and concepts.
Experience in firmware systems design is an added advantage.
Strong knowledge of hardware architecture such as ARM, MIPS, and x86.
Apply for a JD for Embedded Software Developer (Controller- Firmware / Software Designer – EGSE) Position