About the role
Origin Autonomy is looking for a versatile, hands-on software engineer to work across embedded Linux systems, networking stacks, robotic middleware, and cloud-connected services.
Responsibilities:
- Design and implement robot boot-up sequences and service orchestration.
- Configure and manage Linux networking (TCP/IP, HTTP, iptables, ARP, DHCP, DNS).
- Own CI/CD pipelines using ArgoCD, GitHub Actions, and containerised workflows.
- Manage Docker-based deployment and runtime environments.
- Write Bash scripts and system administration tooling.
- Collaborate with robotics, perception, and application teams.
- Establish Git workflows and code review practices.
- Lead and mentor platform engineers.
Requirements:
- Experience with Linux systems programming in C.
- Proficiency in File I/O and memory-mapped files.
- Strong understanding of Multithreading (pthreads, mutexes, condition variables).
- Advanced Socket programming (TCP/UDP, select/poll/epoll).
- Experience with Data structures and algorithms.
- Hands-on expertise with Python scripting.
- Knowledge of Bash scripting.
- Proficiency in Git (CLI, branching, rebasing, conflict resolution).
- Knowledge of UML diagrams.
- Strong experience in Vim/Nano or equivalent editor experience.
Strong Advantages:
- C++17 STL, Templates, OOP.
- Network protocols and configuration.
- Client-server architecture.
- DDS vs MQTT communication models.
- SQL and NoSQL databases.
- Network security concepts.
- ROS2 framework.
- CMake build system.
- Docker and containerization.