Marvik / Software
Embedded Software & Controls Engineer
nuevaDesde Argentina
- Remoto desde Argentina
- Tiempo completo
- Remoto
- Senior
Requisitos
- python
- docker
- ci/cd
- qa
- c++
- git
- linux
- redes informáticas
- gestión de proyectos
- • inglés intermedio o más (el aviso está escrito en inglés)
Suma si tenés
- jenkins
La búsqueda
We're looking for an Embedded Software & Controls Engineer to develop machine-control software for heavy equipment — from low-level drivers and embedded Linux to application-level control logic. The role combines C/C++ development on microcontrollers, embedded Linux/connectivity work, and model-based control design in MATLAB/Simulink. 🚜
🧑🏻💻 Responsibilities:
• Develop and maintain embedded C/C++ software for microcontrollers, including bare-metal firmware, hardware drivers, and board support packages (BSPs).
• Develop and debug embedded Linux on ARM-based platforms (e.g., Jetson): systemd, journalctl, device tree basics.
• Configure and troubleshoot on-machine networking and connectivity: Wi-Fi, Network Manager, LTE/5G/SIM provisioning, Modem Manager, and CAN bus.
• Build and cross-compile containerized software for embedded targets (Docker: base images, layers, Compose), and script in Python/Bash for tooling and diagnostics.
• Translate system requirements into control models and software designs; design, simulate, and verify control logic in MATLAB/Simulink, then implement and integrate it in embedded C/C++.
• Develop machine-control applications interfacing with joysticks, keypads, sensors, and electrohydraulic systems, including hydrostatic pump/valve control and power, cooling, and fan management.
• Debug and validate software across the full stack — hardware interfaces, drivers, connectivity, and application behavior on the machine.
• Work within an Agile process, maintaining requirements traceability and documentation (e.g., Polarion), and contribute to code reviews, version control, and CI/CD (GitHub, Jenkins, GCC toolchains).
🤝 If you have:
• Hands-on C/C++ embedded development experience, including bare-metal microcontroller systems.
• Solid embedded Linux experience: systemd, journalctl, device tree basics, and general debugging on ARM/Jetson platforms.
• Experience with on-device networking and connectivity: Network Manager, Wi-Fi, LTE/5G/SIM, Modem Manager, and CAN.
• Experience with Docker in embedded/edge contexts (base containers, layers, cross-compilation, Compose) and scripting in Python/Bash.
• Understanding of control systems and hardware/software interfaces (sensors, actuators, operator inputs).
• Strong debugging skills across firmware, electronics, connectivity, and machine behavior.
• Solid software engineering practices: unit testing, Git workflows, code reviews, and continuous integration.
• Comfortable working cross-discipline in an Agile team, with availability to travel to the US.
🦾 It’s a major plus:
• Experience with MATLAB and Simulink for model-based control development, simulation, and verification.
• Experience with heavy machinery, mobile equipment, or industrial machine-control systems.
• Familiarity with electrohydraulics, hydrostatic drives, pump/valve control, power management, or cooling systems.
• Experience spanning both low-level embedded development and application-level controls.
• Familiarity with Jenkins, GitHub, and GCC toolchains, and PLM/documentation tools such as Windchill.
Originally posted on Himalayas
Publicado en Himalayas. Los datos de requisitos los extrae Maru del aviso: ante cualquier duda, manda el aviso original.