Job descriptionRoles and ResponsibilitiesMandatory :5-7 years of relevant experience and expertise in C in systems programmingHands on embedded SW development and device driver development.Bare metal programming experience in programming minimal bootloader to initiate the processor,clock and memory and main execution.Thorough understanding of the operating system and system calls.Basic understanding of C++, OOPS concepts is a required.Good experience in IPC, Threading, Debugging, Memory management.Strong foundations in design, analysis, and implementation of software.Good understanding of Embedded systems, communication protocols (I2C, SPI, RS232 etc.)Good Debugging skills using HW tools like JTAG, ICE and GDBAbility to read schematics.Be an innovative and creative thinker, has ability to propose alternate designs.Knowledge of medical electronics is a plusSkills MandatoryC++ S/W development basic knowledge YesDevice Driver development experience YesAny RTOS experience (QNX, VxWorks, Emb. Linux etc) YesBare metal programming YesDebugging skills (JTAG, ICE, GDB) YesIPC, Memory management, Threading YesCommunication protocols (Any I2C, SPI, RS232 etc.) Yes