Senior Software Engineer
Core
Design, build, and operate reliable distributed data-processing systems supporting data and machine-learning workloads.
Role type
Senior backend/data engineer (distributed systems)
Builds
Scalable distributed services, data-processing pipelines, and batch/streaming systems
Domain
Cloud infrastructure, observability, data engineering
Deliverable
production ML models | product features
Required skills
Python, Java, Apache Spark (Scala/PySpark), Kafka, distributed systems architecture, state management, idempotency, Kubernetes, system debugging, capacity planning
Preferred skills
Ray, Flink, Databricks, distributed databases, large-scale state stores
Technologies
Spark, Kafka, Kubernetes, Python, Java, Scala
Responsibilities
Design and implement scalable distributed services and data-processing pipelines; Build reliable batch and streaming systems with predictable latency and throughput; Develop high-quality Python services and contribute to JVM-based systems; Improve system performance, reliability, observability, and operational efficiency; Design safe state-management, retry, recovery, and replay mechanisms; Lead technical designs and migrations for complex platform components; Review code and mentor engineers in distributed-systems practices
Seniority
Senior, hands-on IC
