- Bachelors or Master s degree in Computer Science/Software or related field.
- Work Experience: Minimum 10+ years of relevant experience for this position.
- Strong understanding of Software Development lifecycle including Architecture, Implementation and Testing fundamentals.
- Proficient in C/C++ Programming Language. Experience in Python is a plus.
- Experience with Firmware, preferably for communication devices like Ethernet.
- Experience with Embedded firmware, preferably for communication devices like Ethernet.
- Experience with integration and testing of firmware and low-level code.
- Hands on Experience with Hardware and embedded processors, preferably for communication devices.
- Expertise in efficient code practices for code footprint and performance.
Nice to Have Experience with
- Experience with simulation and emulation platforms.
- GNU or similar compiler, debugging suite.
- Embedded programming, preferably with communication devices and hardware buses like I2C, SPI, Ethernet, USB.
- Building Automotive or other safety critical systems using qualification methods/processes like MISRA, ASPICE and ISO26262.
- Communication protocols like Ethernet MAC, PHY, Switching, TCP/IP, Security, Serdes, PCIe, NTB, and SR-IOV.
- Video processing standards and protocols
- Code Version Control and Review tools/processes like Perforce/Git, Swarm.
- Mixed Signal systems - Analog, Digital, Digital Signal Processing (DSP).
- ARM family of processors or similar embedded processors.
- Bootloaders like uboot or similar.
Soft Skills
- Self-motivated and able to work effectively both independently and in a team.
- Excellent communication/documentation skills.
- Attention to details.