26 Sep
|
TalentXO
|
Bengaluru
26 Sep
TalentXO
Bengaluru
About Company
We are building general-purpose autonomous robots for US construction to tackle rising costs, safety risks, and labour shortages. Our modular, multi-trade platform combines purpose-built hardware with real-time site intelligence to navigate complex environments and execute tasks with precision. Trained in high-fidelity simulation and already deployed on live sites, our robots deliver 5x faster execution, 250%+ margin expansion, and significant cost savings.
About the Role
We are looking for a versatile, hands-on software engineer to join our growing team. You will work across embedded Linux systems, networking stacks, robotic middleware, and cloud-connected services. This role demands robust fundamentals, intellectual curiosity, and the ability to learn quickly — not just familiarity with buzzwords.
On-site, Bengaluru
Responsibilities
- Design and implement robot boot-up sequences and service orchestration to ensure reliable, deterministic system bring-up.
- Configure and manage Linux networking — TCP/IP stack, HTTP, iptables, ARP, DHCP, DNS — for robot-to-cloud and inter-robot communication.
- Own CI/CD pipelines using ArgoCD, GitHub Actions, and containerized workflows to ship software to robots.
- Manage Docker-based deployment and runtime environments on robot and cloud infrastructure.
- Write and maintain system administration tooling and bash scripts for fleet management and diagnostics.
- Collaborate closely with robotics, perception, and application teams to integrate platform capabilities.
- Establish and enforce best practices around Git workflows, branching strategies, and code review.
- Lead and mentor a small platform engineering team — set technical direction, conduct code reviews, and drive execution.
Requirements
All candidates must demonstrate solid,
hands-on competency in every item listed below.
- Linux systems programming in C
- File I/O — read, write, seek, memory-mapped files
- Multi-threading — pthreads, mutexes, condition variables, thread safety
- Socket communication — TCP/UDP sockets, select/poll/epoll
- Basic data structures & algorithms — stack, heap, queue, linked list
- General comprehension ability — reading technical manuals, datasheets, and RFCs
- Python scripting
- Bash scripting
- Git — CLI usage, branching, merging, rebasing, conflict resolution
- Standard UML diagrams — flowchart, sequence diagram, deployment diagram
- Windowless text editor — vim, nano, or equivalent
Strong Advantage
- C++ programming — C++17, OOP, templates, STL
- Common network protocols — DHCP, ARP, TCP, UDP, DNS
- Network configuration — routers, switches, VLANs, subnetting
- Server-client application architecture
- P2P vs. centralised communication — DDS vs. MQTT
- Database management — SQL vs. NoSQL, schema design
- Network security — checksums (CRC, MD5, SHA), public-key encryption, digital signatures
- ROS2 framework — pub/sub, services, actions, lifecycle nodes, DDS transport
- CMake build system — targets, find_package, CTest integration
- Docker — Dockerfiles, docker-compose, remote image registries
Must-haves (non-negotiable)
- Strong Linux systems programming in C — multi-threading (pthreads), socket communication (TCP/UDP, epoll), and file I/O
- Hands-on experience with CI/CD pipelines (ArgoCD, GitHub Actions) and Docker-based deployments
- Networking expertise — TCP/IP stack, DHCP, DNS, iptables, inter-device communication
- Proficiency in Python and Bash scripting for fleet management and diagnostics
- ROS2 experience (pub/sub, DDS, lifecycle nodes) is a strong advantage
Skills:- Linux , pthreads, Sockets, TCP/IP, Python, Bash, Docker, CI/CD, ROS2, Git and C
📌 Lead Software Engineer - Linux (Bengaluru)
🏢 TalentXO
📍 Bengaluru