Job Description
We're looking for a hands-on Embedded Software Developer to build and scale firmware and low-level systems for next-gen hardware products. This role is heavily focused on core programming (80%) with some hardware debugging (20%), ideal for engineers who enjoy working close to the metal.
Responsibilities
- Design, develop, test, and debug embedded software using C, C++, and Python.
- Work extensively on Linux kernel development, driver writing, and porting.
- Build and optimize firmware stacks for embedded peripherals.
- Develop and maintain interfaces for protocols like GPIO, SPI, I2C, UART, CAN, USB, RS232 RS485
- Work with microcontrollers (ARM-based) and embedded platforms.
- Integrate and interface modules such as GSM, sensors, and external devices.
- Perform hardware-level debugging and system bring-up.
- Collaborate with cross-functional teams across hardware and software.
Requirements
- Strong proficiency in C/C++ (core requirement).
- Experience with Embedded Linux (kernel, drivers, and system-level programming).
- Solid understanding of communication protocols (SPI, I2C, UART, etc. ).
- Hands-on experience with microcontrollers (ARM preferred).
- Familiarity with platforms like Raspberry Pi / Arduino.
- Strong debugging skills across software + hardware layers.
Good to Have;
- Exposure to electronic hardware design / schematics.
- Experience with firmware architecture & optimization.
- Prior work with industrial communication protocols (CAN, RS485).
Company Summary
Our platform combines cutting-edge technology with industrial expertise to deliver unprecedented visibility and control over your manufacturing operations. Developer of industrial automation software designed for manufacturing process optimisation. The company's platform supports universal machine connectivity across protocols like Modbus and OPC-UA, real-time traceability of materials and components, AI-powered defect detection through computer vision, MES system integration, and customizable workflows, enabling manufacturers to enhance operational visibility, reduce waste, and accelerate digital transformation with secure, scalable infrastructure.
Transform your manufacturing operations by harnessing real-time machine data to drive meaningful outcomes like:
- Increased efficiency
- Automated quality inspection
- Improved compliance
- Reduced time for digital transformation.
UGX has four in-house products:
- A versatile edge gateway - designed and built in-house, that allows physical interfacing with any equipment
- Communication protocol library that supports easy data exchange with leading machine makers like Fanuc, Mitsubishi, Siemens, Haas and others.
- Vertically focused applications like MES, Machine Monitoring, Traceability, Vision-based Quality Inspection, and Digital Work Instructions eliminate the need for custom software development for these applications.
- AI Agents for shop floor operations.
Why Join Us
We understand and appreciate the needs of a modern workplace and are truly flexible with the unique needs of our colleagues.
Job Description
We're looking for a hands-on Embedded Software Developer to build and scale firmware and low-level systems for next-gen hardware products. This role is heavily focused on core programming (80%) with some hardware debugging (20%), ideal for engineers who enjoy working close to the metal.
Responsibilities
- Design, develop, test, and debug embedded software using C, C++, and Python.
- Work extensively on Linux kernel development, driver writing, and porting.
- Build and optimize firmware stacks for embedded peripherals.
- Develop and maintain interfaces for protocols like GPIO, SPI, I2C, UART, CAN, USB, RS232 RS485
- Work with microcontrollers (ARM-based) and embedded platforms.
- Integrate and interface modules such as GSM, sensors, and external devices.
- Perform hardware-level debugging and system bring-up.
- Collaborate with cross-functional teams across hardware and software.
Requirements
- Strong proficiency in C/C++ (core requirement).
- Experience with Embedded Linux (kernel, drivers, and system-level programming).
- Solid understanding of communication protocols (SPI, I2C, UART, etc. ).
- Hands-on experience with microcontrollers (ARM preferred).
- Familiarity with platforms like Raspberry Pi / Arduino.
- Strong debugging skills across software + hardware layers.
Good to Have;
- Exposure to electronic hardware design / schematics.
- Experience with firmware architecture & optimization.
- Prior work with industrial communication protocols (CAN, RS485).
Company Summary
Our platform combines cutting-edge technology with industrial expertise to deliver unprecedented visibility and control over your manufacturing operations. Developer of industrial automation software designed for manufacturing process optimisation. The company's platform supports universal machine connectivity across protocols like Modbus and OPC-UA, real-time traceability of materials and components, AI-powered defect detection through computer vision, MES system integration, and customizable workflows, enabling manufacturers to enhance operational visibility, reduce waste, and accelerate digital transformation with secure, scalable infrastructure.
Transform your manufacturing operations by harnessing real-time machine data to drive meaningful outcomes like:
- Increased efficiency
- Automated quality inspection
- Improved compliance
- Reduced time for digital transformation.
UGX has four in-house products:
- A versatile edge gateway - designed and built in-house, that allows physical interfacing with any equipment
- Communication protocol library that supports easy data exchange with leading machine makers like Fanuc, Mitsubishi, Siemens, Haas and others.
- Vertically focused applications like MES, Machine Monitoring, Traceability, Vision-based Quality Inspection, and Digital Work Instructions eliminate the need for custom software development for these applications.
- AI Agents for shop floor operations.
Why Join Us
We understand and appreciate the needs of a modern workplace and are truly flexible with the unique needs of our colleagues.
Required Skills
- Linux
- C++
- C
- Embedded Systems
- Firmware Development
- I2C
- ARM
- UART
- SPI
- Kernel Development
- CAN
- RS485
- Hardware Design
Additional Information
NA