Embedded Software Engineer for Mobile Robotics - Freelance - Amsterdam
Job Title: Embedded Software Engineer
Contract Length: 12 Month Contract with opportunity to extend
Start Date: As soon as possible
We are seeking an experienced Embedded Software Engineer to join a multidisciplinary engineering team developing software and control systems for advanced mobile robotic and autonomous machines.
You will work at the interface between embedded software, electronics, vehicle control, and higher-level robotics software. Your work will help enable mobile machines to operate reliably in demanding real-world environments, supporting functions such as vehicle control, sensor integration, communication, diagnostics, safety, and interaction with higher-level autonomy systems.
This is a hands-on engineering role. You will move between software development, hardware integration, simulation, debugging, testing, and deployment, with the opportunity to see your software running on real robotic and mobile platforms.
This is a freelance contract based in Amsterdam, working closely with an experienced engineering team and external technology partners.
What you will work on
- Design, develop, and maintain embedded software in C/C++ for mobile robotic and autonomous machines.
- Develop software for real-time control of vehicle functions, actuators, sensors, and other machine systems.
- Develop interfaces between low-level embedded systems and higher-level robotics and autonomy software.
- Work with sensors, motor controllers, drive systems, steering systems, safety devices, and other vehicle electronics.
- Implement diagnostics, monitoring, fault handling, logging, and recovery mechanisms for deployed machines.
- Support the integration of embedded systems with ROS/ROS 2 and autonomous navigation platforms.
- Develop and maintain software that is robust enough for deployment on prototype and production machines.
- Develop and maintain automated tests and contribute to software verification and validation.
- Support commissioning and troubleshooting of machines in real-world operating environments.
- Evaluate new embedded technologies, controllers, communication architectures, and development approaches and determine where they can provide practical value.
What we are looking for
You are likely to bring:
- 3+ years of professional experience developing embedded software, preferably in C or modern C++.
- Practical experience developing software for mobile machinery, robotics, autonomous systems, agricultural machinery, industrial equipment, or closely related technologies.
- Strong understanding of embedded software engineering principles, including modular architecture, interfaces, testing, debugging, and maintainable code.
- Experience working with real-time systems and software that interacts directly with physical hardware.
- Experience working with microcontrollers, embedded computers, PLCs, or industrial control platforms.
- Experience bringing embedded software beyond development and into hardware-in-the-loop, vehicle testing, commissioning, or production environments.
- Comfort working in an international and fast-moving environment where priorities can evolve quickly.
Useful additional experience
Experience or interest in any of the following would be advantageous:
- ROS / ROS 2 and integration between embedded systems and robotics software.
- Autonomous mobile robots, AMRs, AGVs, or autonomous vehicles.
- Agricultural machinery, precision agriculture, or autonomous farming technology.
- Electric vehicles, electric drivetrains, battery systems, or motor control.
- ABB, B&R, Beckhoff, or comparable industrial automation platforms.
- PLC programming or industrial automation systems.
- Real-time operating systems such as FreeRTOS, Zephyr, or similar.
- Embedded Linux and cross-compilation.
- Sensor integration, including LiDAR, GNSS/GPS, IMU, encoders, cameras, or safety sensors.
- Functional safety, machine safety, or safety-related software development.Hardware-in-the-loop or software-in-the-loop testing.
- MATLAB/Simulink or other modelling and control-development environments.
- Git, CI/CD, automated testing, static analysis, and modern software development practices.
- Experience with mobile robotics, mechatronics, logistics, manufacturing, agriculture, or other complex operational environments.