Responsibilities
Firmware & Embedded Software Development
- Design, develop, and optimize embedded firmware in C/C++ for microcontrollers and SoCs.
- Implement and maintain drivers for various peripheral components (e.g., sensors, actuators, radios).
- Integrate hardware interfaces including SPI, UART, I2C, GPIO, PWM, and ADC.
- Work within embedded frameworks such as Zephyr RTOS, FreeRTOS, andTensorFlow Lite Micro.
- Conduct unit, integration, and system-level testing to validate embedded software performance and stability.
Hardware & Systems Integration
- Collaborate in system architecture design for embedded solutions to meet functional requirements.
- Review and contribute to schematic designs for embedded subsystems troubleshoot based on circuit diagrams and datasheets.
- Support debugging of hardware-firmware interactions using tools such as oscilloscopes, logic analyzers, and debuggers (e.g., JTAG/SWD).
Prototyping & Fabrication
- Support rapid prototyping and iteration of IoT devices with in-lab fabrication tools.
- Validate hardware designs by running firmware integration tests in early development cycles.
Collaboration & Documentation
- Collaborate with cross-functional teams including cloud/backend, mobile app, and hardware design engineers.
- Document firmware architecture, configuration settings, communication protocols, and deployment processes.
- Mentor junior engineers and contribute to improving team development standards and workflows.
Requirements
Education
- Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Embedded Systems, or a related field.
Experience
- Hands-on experience in embedded firmware development.
- Strong programming proficiency in C/C++ for resource-constrained environments such as microcontrollers.
- Demonstrated experience with hardware interfaces and embedded communication protocols.
- Hands-on experience with firmware debugging and testing tools (e.g., GDB, serial consoles, logic analyzers).
- Experience using schematic diagrams to identify signal paths, interface connections, and potential hardware faults during embedded development.
Additional Qualifications
- Excellent problem-solving skills with a strong attention to detail.
- Ability to work independently as well as collaboratively in a fast-paced environment.
- Strong verbal and written communication skills, with the ability to document and present technical information clearly.
Good to have
- Experience with RTOS, low-power system design, and wireless communication stacks (BLE, Wi-Fi, LoRaWAN, etc.).
- Comfortable with end-to-end PCB development - from schematic to fabrication and bench testing.
- Exposure to edge ML, MQTT/CoAP protocols, or cloud integrations (AWS IoT, Azure IoT Hub, etc.).