Description

Requirements
● B.S. degree in Computer Science, Electrical Engineering, or equivalent experience
● 1+ years' Experience developing embedded software/firmware that uses wireless communications in microcontroller-based systems like Bluetooth, BLE, 802.15.4, Sub-GHz, or 802.11 with a focus on low latency high throughput use of the peripheral real world application scenarios.
● 4+ years' experience in use of the C language for systems or firmware software development with a good knowledge of C build systems, debuggers, and profiling tools
4+ years' experience with Cortex-M or similar architecture microcontroller-based system design with experience writing and maintaining integrated on-chip peripheral device drivers for microcontrollers
● Experience in interfacing the use of simple serial interfaces like UART, SPI, and I2C to interface to sensors, memory devices, or other external peripherals and the ability to use sniffers and logic analyzers to verify working embedded software support at the system level.
● Ability to autonomously identify, report, and solve problems with minimal direction.
● Ability to work in a dynamic, high-paced environment where job duties may change frequently

Preferred Qualifications:
● Direct working experience with creating new BLE GATT services, BLE sniffing and performance profiling tools, and optimization of BLE performance in the context of interoperability.
● Experience with Infineon PSoC Creator and Modus Toolbox toolchains and the PSoC6x family of microcontrollers
● Experience in the use of electromechanical transducers like encoders, load cells/strain gauges, or capacitive force/displacement sensors

Must Have:
1. Direct experience in development of firmware/embedded software using wireless communications on a microcontroller/SoC based system
2. C language experience in writing software/firmware targeting ARM-Cortex M or similar microcontroller based systems
3. Experience with the use of I2C, UART, or SPI to interface to off-microcontroller integrated circuits like ADCs, DACs, sensors, or other microcontrollers.

Nice to Have:
Experience authoring BLE(Bluetooth Low Energy) GATT services from scratch, or basically defining interfaces between a BLE microcontroller and upstream host based on the type of data to be sent.
2. Experience in power savings efforts to save power on ClientU based systems with features like sleep modes, clock gating, or adjusting peripheral clocks
3. Experience using tactile and force sensing sensors in robotics or electromechanical systems applications like load cells, strain gauges, capacitive or inductive sensors, or encoders for mechatronics sensors. At a high level virtually any experience with embedded software/firmware in Mechatronics/robotics.

Responsibilities
● Develop low-level, embedded software components in C including microcode, system RTOS, DSP algorithms, PHY/MAC firmware.
● Develop Board Support Packages (BSPs), drivers, kernels, and software for managing hardware peripherals (e.g., I2C, PCIe).
● Work closely with hardware engineering teams and software counterparts to define firmware/software interfaces.
● Coordinate execution of firmware releases, including running and reporting on validation tests.
● Track and manage defects, document root causes, and work on corrective actions.
● Participate in code reviews and maintain good code hygiene

Education

Any Gradute