Job Description for Engineer - Firmware
Primary Objective of position: Work independently on firmware development projects. Firmware Design exposure and implement the firmware consisting of control functions, communication protocols, drivers running on Linux or a real-time operating system. Coordinate and interface with other global design and development teams. Contribute to project requirements analysis, understand the firmware design documents and develop firmware in C/C++ technologies. Conduct software peer and code reviews. Recommend plan to improve software quality in products.
Job Responsibility
1. Coordinating and interface with other global design and development teams
2. Contribute in project requirements Analysis and Design
3. Assist in the development of Project plan and schedule
4. Understand and Update the software design document based on requirement changes
5. Develop software in C/C++ technologies and maintain sustaining projects
6. Conduct software peer and code reviews.
7. Recommend plan to improve software quality in products.
Job Requirements
1. BE - Computer Science \ Electronics Engineering or Equivalent
2. 4 to 6 years of experience in firmware development
3. C experience is a must
4. Exposure to microcontrollers, Digital Signal Processor (DSP) is must
5. Exposure to RTOS is must.
6. Exposure to wifi, wifi stack development, zigbee, ethernet is must.
7. Exposure to different peripherals and drivers like ADC, PWM, Comparators, DAC is must.
8. Interfacing with communications protocols such as CAN, I2C, SPI, Ethernet & SNMP protocol is preferred
9. Own the project and coordinate with functional contacts at different locations
10. Ability to develop readable, robust, reliable, well-structured code is a must
11. Ability to review code for readability, and robust/reliable operation in a software system is a must 12. Real-time operating system experience is preferred.
13. Ability to communicate effectively in both written and spoken English
14. Good Interpersonal skills & Strong Team Player