Firmware Engineer
Job Description
- Design, develop, and optimize embedded firmware for IoT devices and sensors, ensuring reliability, efficiency, and scalability.
- Collaborate with hardware engineers to define system architecture, select components, and integrate firmware with hardware designs.
- Implement IoT communication protocols such as MQTT, HTTP, or etc for device-to-cloud and device-to-device communication.
- Conduct unit testing, integration testing, and validation of firmware to ensure functionality, performance, and security
- Debug and troubleshoot firmware issues, identify root causes, and implement corrective actions.
- Document firmware designs, specifications, and test procedures for internal reference and regulatory compliance.
- Collect sensor data to the device using an available interface.
- Build reusable code & libraries for future use and optimize code & performance of IoT devices.
- Collaborate with software engineers teams to integrate devices to servers.
Job Requirements
- Graduate from Bachelor, Diploma degree from Engineering or other related majors.
- Have experience in embedded firmware development for IoT devices or embedded systems for minimum 1 year..
- Experience with STM Microcontrollers and Raspberry Pi.
- Experience Python Programming Language and Its Framework (Flask) for minimum 1 year.
- Experience of hardware/software interfacing and communication protocols (e.g., SPI, I2C, UART).
- Experience with IoT Protocol Communication Data, like HTTP, MQTT, and SNMP.
- Experience with IoT Connectivity Communication Data, like GSM, Ethernet, Wireless, LoRa, and other Radio Frequency Modules.
- Experience with SQL & NoSQL Databases, like MySQL & MongoDB.
- Experience with Industrial Protocol Sensor (Modbus, CAN Bus).
- Familiar with Linux Operating System.
- Understand Basic Networking and Electronics.