As a Senior Embedded Software Engineer, you will play a crucial role in designing, developing, debugging, and testing software for embedded systems. You'll be responsible for integrating software with hardware components and collaborating closely with cross-functional teams to deliver robust embedded software solutions for electronic devices.
Responsibilities
- Designing and developing high-performance software for embedded security systems.
- Debugging and testing embedded software to ensure functionality and reliability.
- Integrating software and hardware components effectively.
- Collaborating with hardware engineers and cross-functional teams throughout the development lifecycle.
- Ensuring software meets quality and performance standards.
- Documenting software designs, processes, and procedures.
Qualifications
- Bachelor's degree in Electronic Engineering, Computer Engineering, Electrical Engineering, or a related field.
- Proficiency in programming languages such as C.
- Experience with real-time operating systems (RTOS).
- Excellent communication and teamwork abilities.
- Knowledge of standards like ISO26262, ISO21434, and ASPICE level-3.
- Minimum 7+ years of experience in embedded software development.
Skills
- Expertise in Embedded C programming.
- Hands-on experience with Arm and RiscV Assembly.
- Working knowledge of Python for system automation.
- Familiarity with RTOS and microcontroller/microprocessor internals.
- Strong background in hardware-software integration.
- Proficiency in debugging tools and techniques.
- Understanding of security fundamentals like AES, RSA, ECC, and post-quantum cryptography.
- Practical experience in cybersecurity practices such as Secure Boot, Key Management, Firmware update, Code hardening, and adherence to coding guidelines (CERT C, MISRA-2012).
- Knowledge of protection against fault attacks, SPA & DPA (Side-Channel Analysis and Differential Power Analysis) is an added advantage.