job description
Join FOZ One Sdn Bhd as a Senior Embedded Software Engineer in beautiful Bali and lead the development of cutting-edge embedded systems for next-generation electronics and IoT solutions. This role offers the opportunity to work on innovative projects that push the boundaries of embedded software design, from concept to deployment.
As a key member of our engineering team, you will collaborate with cross-functional teams to design, develop, and optimize embedded software that powers smart devices, industrial automation systems, and consumer electronics. Your expertise in real-time operating systems (RTOS), microcontroller programming, and hardware-software integration will drive the success of our most ambitious projects.
We are looking for a proactive problem-solver with a passion for electronics and a track record of delivering high-performance embedded solutions. If you thrive in a dynamic environment and want to contribute to transformative technologies, this is your chance to make an impact in Bali’s growing tech ecosystem.
Responsibility
- Design, develop, and debug embedded software for microcontrollers, SoCs, and custom hardware platforms.
- Implement real-time operating systems (RTOS) and bare-metal firmware for resource-constrained environments.
- Collaborate with hardware engineers to define system architectures and ensure seamless hardware-software integration.
- Optimize code for performance, power efficiency, and memory usage in embedded applications.
- Develop and maintain device drivers, communication protocols (I2C, SPI, UART, CAN), and low-level interfaces.
- Conduct system testing, validation, and troubleshooting to ensure reliability and compliance with industry standards.
- Document software designs, APIs, and technical specifications for internal and external stakeholders.
- Stay updated with emerging trends in embedded systems, IoT, and electronics to drive innovation.
Qualifications
- Bachelor’s degree in Electrical/Electronics Engineering, Computer Engineering, or a related field. Master’s degree is a plus.
- Minimum 5 years of hands-on experience in embedded software development for microcontrollers (STM32, ESP32, PIC, AVR, etc.).
- Proficiency in C/C++ for embedded systems, with experience in assembly language as a plus.
- Strong understanding of RTOS (FreeRTOS, Zephyr, ThreadX) and embedded Linux (if applicable).
- Experience with hardware debugging tools (JTAG, oscilloscopes, logic analyzers) and development environments (Keil, IAR, STM32CubeIDE).
- Familiarity with communication protocols (UART, I2C, SPI, CAN, Ethernet, BLE, LoRaWAN).
- Knowledge of version control systems (Git) and collaborative development workflows.
- Excellent problem-solving skills and the ability to work independently in a fast-paced environment.