Job description
Role & responsibilities
- Design and develop embedded firmware for microcontroller-based industrial products.
- Support project initiatives collaborating with the rest of the design team ensuring that development milestones and deadlines are met.
- Define and implement high-performance software by leveraging a strong understanding of embedded hardware design.
- Be a contributor to developing an environment of continuous improvement across product lines and development groups.
- Analyze and provide feedback on peer designs in an open and collaborative design review forum.
- Actively participate in, and at times leads, cross-functional teams to develop new devices as well as address design issues or maintenance of existing products.
- Coordinate with the project team to create and release product requirements, design specifications and design descriptions for assigned designs applicable standards and procedures.
- Responsible for recording and sharing technical knowledge gained with colleagues. Review product documentation for accuracy including documentation intended for customer use.
- Evaluate, test, and review designs to determine if the program will perform according to requirements and specifications.
- Ability to communicate with the overseas client.
Preferred candidate profile
- Prior firmware design engineering experience
- Proficiency in programming languages such as C or C++
- Experience driving technology integration and adoption
- Microcontroller based Software development experience in an embedded environment for industrial devices
- Familiarity with protocols like I2C, SPI, UART, USB, TCP, MQTT etc
- IOT, FOTA and experience on the ESP module will be added advantage
Preferred Skills
- Experience with assembly level and C language development including the tools used to edit, compile/assemble and debug code in an embedded environment
- Experience working with real-time operating systems (RTOS)
- Experience with real-time signal processing and hardware
- Experience working with various communication and networking protocols
- Strong communication skills with the ability to work with all levels of the organization
- Ability to work both individually and as part of a team
- Excellent time management skills with the ability to contribute to multiple concurrent projects