Software Engineer
Role details
Job location
Tech stack
Job description
Alexander Daniels Global is seeking a Senior Software Engineer focused on Machine Control in Spain. This role involves developing embedded software that governs motion and behavior for high-performance industrial systems.
The ideal candidate will design scalable software architectures and collaborate across engineering disciplines to ensure production readiness and robustness of deployed systems., Embedded C/C++ Real-time systems Machine control systems State machines Industrial machinery Descripción del empleo Senior Software Engineer - Machine Control, You will work at the intersection of software, hardware, and physics, collaborating closely with mechanical, electrical, and process engineering teams to deliver production-grade systems deployed to customers. What You Will Do
- Design and develop embedded software in C/C++ for industrial-grade systems
- Architect and implement real-time control systems (RTOS/bare-metal/Linux)
- Build and maintain machine-control logic: motion and motor control, sensor integration, actuator orchestration, state machines and sequencing
- Take ownership of end-to-end system behaviour, from low-level control to system-level integration
- Define and evolve software architecture for scalability, reliability, and maintainability
- Collaborate cross-functionally with hardware (electronics), mechanical and mechatronics teams, manufacturing and production engineering
- Ensure production readiness: testing strategies (unit, integration, system), CI/CD pipelines, debugging and validation on real machines
- Contribute to delivering robust systems deployed in customer environments
Requirements
- Strong experience in Embedded C/C++.
- Solid understanding of real-time systems.
- Experience with machine control systems, including motors and sensors.
Responsabilidades
- Design and develop embedded software for industrial systems.
- Build and maintain machine-control logic.
- Ensure production readiness through testing and validation., * Strong experience in Embedded C/C++
- Solid understanding of real-time systems (RTOS or deterministic environments)
- Experience with machine control systems, including motors / motion control, sensors and actuators, control loops and system behaviour
- Experience designing state machines and complex control logic
- Hands-on experience with industrial machinery, automotive systems, robotics or mechatronic systems or proven track record of shipping reliable systems to production
- Experience working closely with physical systems (not just software platforms)
Software Engineering Maturity (Critical)
- Experience designing scalable and maintainable software architectures
- Automated testing
- Code quality and maintainability practices
- Experience working across the full development lifecycle (requirements * production)