Senior Software Engineer - Data Acquistion (Field Team)
Exodigo
Description
Exodigo is the leading underground mapping solution for non-intrusive discovery. Our platforms combine multi-sensor fusion, 3D imaging, and AI technologies to create complete, accurate underground maps that enable confident decision-making for customers across the built world. We transform the project lifecycle for our customers, who include key community stakeholders in the utilities, transportation and government sectors.
We are experiencing sky-rocketing growth and closed a historically large $96M Series B round in July of 2025.
Job description
The Field Team at Exodigo develops the backend platforms that power our field data acquisition technology for underground mapping. These platforms run remotely on edge devices deployed worldwide, operating in close integration with hardware, sensors, positioning systems, and networks. They form the foundation for everything downstream - from real-time data processing and algorithms to the production-grade 3D underground maps delivered to our customers.
This role focuses on building and operating real-world backend systems where software meets physical constraints: high-throughput, real-time sensor data ingestion, asynchronous and distributed pipelines, and reliable operation under unstable field conditions such as limited connectivity, weather, power constraints, and resource-constrained edge environments.
You’ll work in a highly multidisciplinary environment, collaborating closely with system engineers, algorithm teams, hardware, and field operations. Together, you’ll shape system architecture, make meaningful engineering tradeoffs, and influence how large-scale, mission-critical systems evolve.
Engineers in our team take true ownership. As a Senior Engineer in our team, you will own core systems, drive architectural decisions, mentor engineers, and build technology that has immediate, visible impact on building a more efficient and sustainable world by revolutionizing how civil engineering projects are executed in the physical world.
People are our most important asset. We believe in a culture of psychological safety, where our people feel listened, appreciated and empowered to take their initiatives into core impact to the company. We care about our people growth and proactively invest on it.
What you will do
- Build and evolve core backend services that orchestrate field data acquisition across distributed, real-world environments.
- Design and implement asynchronous, pipeline-driven systems for real-time data ingestion, validation, and processing.
- Own critical system components end-to-end, with responsibility for correctness, performance, resilience, and behavior under real production conditions.
- Lead architectural decisions and technical direction, driving improvements in scalability, robustness, and long-term system clarity.
- Work hands-on with live production systems developed and deployed remotely to edge devices in the field, including releases, field experiments, deep debugging, and on-call support.
- Collaborate closely across disciplines - system engineering, algorithms, hardware, frontend, and operations - to deliver cohesive, end-to-end solutions.
- Raise the engineering bar through high-quality code reviews, design discussions, and by shaping best practices within the team.
Requirements
- 6+ years of experience building, operating, and owning production-grade backend platforms in data-intensive environments.
- Strong proficiency in Python or an equivalent high-level language, with the ability to write clear, maintainable, and robust production code.
- Hands-on experience with Linux-based systems and networking fundamentals.
- Significant experience in designing architecture and building complex, data-intensive distributed systems, with the ability to balance reliability, performance, and scalability tradeoffs.
- System-level thinking - ability to reason about end-to-end flows, state, and failure modes, proactively identifying gaps, risks, and opportunities and translating them into robust, production-grade solutions with observability built in from day one.
- Ability to operate effectively in a fast-moving environment, and to thrive in a complex multidisciplinary domain where requirements are not always fully defined and engineering judgment plays a central role in shaping solutions.
- Strong ownership mindset and communication skills, with a collaborative approach, technical maturity, and a continuous learning attitude.
Additional nice to have requirements:
- Experience with Rust/C/C++ or embedded systems development - Strong advantage
- Background in hardware-software integration, sensors, or data acquisition systems - Strong advantage
- Hands-on experience with AWS and cloud infrastructure in production environments, including deployment, monitoring, and operations.
- Experience working with geospatial data and/or positioning technologies (e.g. GNSS).
- Experience leveraging AI-assisted workflows and tools to improve development velocity, code quality, or system design in production environments.