Software Engineer (C++), Heavy-machinery Automation
The Core System team at DeepX builds the software platform and tooling that underpin our heavy-machinery automation applications. This includes the base robotics framework, sensor and hardware abstraction layers, integration infrastructure, middleware, and system-level orchestration.
As a Core System Engineer, you will design how the automation system comes together, build the components that make it work, and harden it for real-world operation, including hands-on validation at Genba (現場, the work site), where safety is paramount. We’re looking for a strong software engineer who enjoys working across the full robotics stack, reasons about system behavior end to end, and works closely with other domain teams to put production-grade automation on real machines. A robotics background helps, but solid engineering and curiosity about the whole system matter more.
You’ll have broad ownership in a small team, from system design through field validation, working on autonomous heavy machinery deployed at real customer sites, not just in simulation.
Responsibilities
- Design and implement system orchestration: state machines, behavior trees, and high-level behavior management, including safety and error-handling mechanisms.
- Lead the integration of perception, control, and planning modules with the hardware, UI and external systems, working with the teams that own them, ensuring everything works together reliably at runtime.
- Contribute to design of the ROS2 node architecture, interfaces and configuration packages that our automation applications are built on.
- Develop machine platform components such as drivers and parsers for proprietary and third-party hardware.
- Build logging, monitoring and introspection tools that make integration and field operations faster, safer and cheaper.
- Validate your work on real machines through hardware testing and field deployments.
Requirements
- Professional experience developing production software in modern C++ on Linux.
- Experience building, integrating, or debugging systems where multiple components interact at runtime (robotics, automotive, embedded, industrial automation, or distributed systems).
- Willingness to work on-site at customer sites on a project’s needs basis, including outdoor and industrial environments and travel.
- Working proficiency in English.
Nice to haves
While not specifically required, tell us if you have any of the following.
- Experience with ROS2, especially designing node architecture and interfaces for larger applications.
- Hands-on field testing of robotic, vehicle, or industrial systems, covering integration, stability, safety, and performance.
- Hardware driver or low-level infrastructure development, including CAN bus, PLCs, industrial protocols, or network communication (TCP/UDP, sockets).
- Proficiency in Python.
- Familiarity with perception, control, or planning.
- Experience defining test strategies for system reliability.
- Practical experience with Docker.
- Proficiency in Japanese.
Hiring Process
- CV check
We check the qualifications from CV submitted at the time of application.
*Applications with heavily AI-written CVs or application materials, meaning those that rely on AI-generated content rather than describing your own experience and skills, will not be considered. We also do not use AI to make hiring decisions. We ask all applicants to be transparent throughout the selection process.
- 1st interview
Based on the applicant’s profile, we determine the suitability for our company’s positions and clarify any uncertainties the applicant may have.
- Two technical interviews
We verify whether the applicant possesses the abilities required for the position.
- Final interview
We check for a culture match with our company and adjust terms and conditions.
This role requires you to be in Japan. If that means relocating or flying in, it is worth checking fares before you commit to a start date.
Compare flights and hotels →Get remote jobs like this by email
10 hand-picked jobs, one email a day. No spam, unsubscribe anytime.
Similar for you
Get 10 hand-picked remote jobs like this one in your inbox every morning. One email a day, matched to what you browse. No spam, one-click unsubscribe.
No thanks — continue to the application ↗