System Software Engineer
Bangalore, Karnataka, India
As part of our world-class, international Software Development center in Bangalore, you will partner with us in developing system software (RTOS, BSP, drivers, bootloader, etc.) for Eta compute’s ultra-low-power Edge AI System-on-Chips used in various IOT based edge AI applications. Our projects combine software, hardware, communications, operations and other elements in a system-level product or solution. Typical SW applications include control of hardware, data acquisition, automation, and real-time processing in embedded environments and then connecting embedded devices to popular cloud IOT infrastructures. Sound exciting! Your effort will make a significant impact to our company’s success.
You’ll be responsible for…
Participating in the system software/infrastructure lifecycle effort to connect our ultra-low-power AI SOCs. Basically, all phases of development of the system software such as requirements, design, implementation, integration, testing, release, customer deployment and support. In addition, you will:
- Develop and maintain all system software infrastructure (RTOS/middleware, drivers), framework, and peripheral related software so that the algorithm developer need not bother with the details of hardware complexities;
- Own the firmware support for silicon validation on emulation platforms as well as silicon bring-up and post silicon validation;
- Work closely with system hardware engineers, algorithm engineers and support application engineers for resolving field customer issues;
- Be involved in evaluating, selecting, and managing outside vendors and partners;
- Collaborate with open-source communities for integration of Eta compute’s ultra-low-power SOC based system software, participate and support open source upstream projects.
Qualifications we seek…
- Tech/M.Tech in Electronics Engineering/Computer science with more than 8 years of relevant experience;
- Working experience in developing drivers for at least one of the Operating systems: Freertos, Mynewt, Zephyr, etc. on small constrained HW environments;
- Experience with writing sensor, audio, and video data acquisition drivers;
- Expert level software development using C, C++ and assembly, with solid background in operating system internals, algorithms and data structures;
- Good understanding of software-hardware interfaces like I2C, SPI, DMA, interrupt, etc;
- Experience with power management for embedded systems;
- Experience with connectivity protocols like BLE, LORA, NB IOT will be an added advantage;
- Strong technical experience and problem-solving ability, with a can-do attitude;
- Experience collaborating with remote teams and contributing to open-source communities, with tools like jira, git, etc;
- Knowledge of software-hardware co-design and silicon bring-up in low power MCU/SOC;
- Willingness to travel internationally (10-15% travel).