← NURO Interview Insights

NURO·Software Engineer·Onsite - System Design / Architecture·Senior

SeniorPrefer not to say
May 2026

Summary

Nuro system design round, pretty deep into autonomous vehicle data infrastructure. One big question that sprawled across like six different sub-topics. Left feeling okay about it but definitely glossed over some parts I wish I hadn't.

Questions Asked (1)

Q1

Design a system that ingests petabyte-scale raw logs from autonomous vehicles, supports multi-modal data (sensor feeds, perception outputs, video), and lets engineers search for specific scenarios like 'find all clips where the AV saw a pedestrian near a stop sign'. Cover ingestion, feature extraction at ingest time, indexing strategies, query API design, storage tiering, and access control.

System DesignTechnical Trade-offsData Modeling
Author's notes

This was basically the entire interview wrapped into one prompt.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying requirements and scale, then propose a pipeline that ingests raw data into cheap object storage while extracting metadata and features at ingest time. Design a multi-tiered storage and indexing strategy that balances cost and query performance, and expose a declarative query API with fine-grained access control. Emphasize trade-offs between latency, cost, and flexibility at each layer.

Pro tip: Anchor your design around the query pattern: 'find clips where X' implies a two-phase search—first use a metadata index to narrow down candidate clips, then run expensive perception-based filters only on that subset. This avoids indexing every frame and keeps costs manageable.

1. Clarify requirements and scale

Ask about data volume (PB/day?), latency needs (real-time vs batch), query types, retention, and compliance. Establish assumptions to guide design.

2. Design ingestion and feature extraction

Propose a scalable ingestion pipeline (e.g., Kafka + stream processing) that writes raw data to object storage and extracts lightweight metadata (timestamps, GPS, sensor IDs) and heavy features (object detections, scene tags) at ingest time.

3. Define storage tiering and indexing

Tier storage: hot (recent, frequently accessed) on fast storage, warm (indexed metadata) on cheaper storage, cold (raw archives) on object storage. Build inverted indexes on extracted features and metadata for fast retrieval.

4. Design query API and access control

Create a declarative query API that supports filters on metadata and features (e.g., 'pedestrian near stop sign'). Implement role-based access control (RBAC) with row-level security to restrict data by team, region, or sensitivity.

5. Discuss trade-offs and optimizations

Highlight trade-offs: ingest-time vs query-time feature extraction, index granularity, storage cost vs query latency. Mention techniques like columnar storage, partitioning, and caching.

Key Points to Mention

  • Use of object storage (e.g., S3) for raw data and columnar formats (Parquet) for efficient querying.
  • Stream processing (e.g., Kafka, Flink) for real-time feature extraction and metadata enrichment.
  • Multi-modal indexing: separate indexes for video, sensor, and perception outputs, with cross-referencing via clip IDs.
  • Query API design: support for complex predicates (spatial, temporal, object-based) and pagination.
  • Access control: RBAC, encryption at rest/in transit, audit logging, and data masking.
  • Cost optimization: lifecycle policies, tiered storage, and sampling for expensive queries.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.