DDN
Software Engineer
Santa Clara (Remote)fulltimemidAdded today
About this role
Join the Control Plane team to architect and build scalable backend services powering a petabyte-scale AI data platform. You'll design distributed microservices, craft robust APIs, and embed security and observability across hybrid on-premises and cloud environments supporting mission-critical workloads.
What you'll do
- Design and develop scalable, high-performance distributed backend services and microservices for the control plane
- Build and own APIs (REST/gRPC) for centralized management across multi-region hybrid environments with versioning and lifecycle governance
- Architect resilient systems with strong consistency, fault tolerance, and high availability at petabyte scale with minimal downtime
- Implement policy-driven orchestration, infrastructure-as-code integration, RBAC, and multi-tenancy capabilities
- Instrument systems with comprehensive observability (logs, metrics, traces) and support incident correlation and root cause analysis
- Design secure-by-design architecture with authentication, authorization, encryption, and audit logging; collaborate on compliance
What they're looking for
- Backend/distributed systems engineering (3+ years)
- Microservices architecture design and implementation
- Modern backend languages (Go, C++, Java, Python, or equivalent)
- API design and implementation (REST and/or gRPC)
- Distributed systems concepts (CAP theorem, consistency models)
- Cloud-native and containerized environments (Kubernetes)
- Security principles (authentication, authorization, encryption)
- CI/CD pipelines and automated testing frameworks
Opens the application — the Jobs AI extension fills it for you. Set up autofill
Opens the official application on the employer’s site. No login required.
DDN
Likely interview questions
- Describe a distributed system you designed that had to handle consistency and high availability trade-offs—how did you approach it?
- Walk us through your experience designing and versioning APIs at scale; how do you handle backward compatibility and deprecation?