Embedded Software & Controls Engineer

Marvik

Remote (Argentina, Chile, Colombia, Ecuador, El Salvador, Me Remote Full-time today
Workplace
Remote
Location
Argentina, Chile, Colombia, Ecuador, El Salvador, Mexico, Paraguay, Peru, Uruguay

Check your CV against this job

Free · No signup · A 0–100 ATS match score and the keywords you're missing.

Check my CV free

$14.99/month, cancel anytime. Already have an account? Log in

About the role

We're looking for an Embedded Software & Controls Engineerto 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

Get matched & apply with FindAJobAI

Upload your resume once. We score every job against your profile, tailor your resume and cover letter, and autofill the application.