Microprocessor architecture and embedded peripherals Embedded Linux experience, with experience developing drivers, bootloaders and working with kernels Experience with IoT devices is a big plus Familiarity with quality standard principles/requirements specifically NIST, IEEE, CIS, or DISA Extremely high proficiency in the C language Knowledge of low level embedded software/firmware, both single-threaded super loop designs and multi-threaded RTOS designs Experience with popular architectures (ARM CMx, AVR, PIC, 8051) and off the shelf microcontrollers (STM, TI, etc) Familiarity with PCB system design Ensure adherence to development processes & various tools Ability to apply principles of logical or scientific thinking to a wide range of intellectual and practical problems Interface with hardware design and development Desired Candidate Profile Leadership of cross functional teams Estimation of development efforts Write neat reusable and maintainable code Understanding use cases including interpreting use case state diagrams Independent trouble shooting skills experience in embedded software engineering or similar role Sense of ownership and pride in your performance and its impact on company’s success Critical thinker and problem-solving skills Team player Good time-management skills Great interpersonal and communication skills