Software Development Engineer(Distributed Systems)
Your work days are brighter here.
About the Team
About the Role
Develop the Platform
Maintain Big-Data Pipelines
Tune and Optimize
Ensure Reliability
Secure the Data
Operational Support
Support Observability AI
Collaborate and Learn
About You
Basic Qualification
5+ years experience in software development engineering. 3+ years experience specifically focused on designing, building, and operating complex distributed system architectures, evidenced by successful deployment of systems with high availability (e.g., 99.9% uptime) and fault tolerance. 5+ years experience with at least two of the following programming languages Java, Python, Go, including experience in writing production-level code for distributed systems. Bachelor's degree in a relevant field such as Computer Science, Engineering, or a related discipline; a Master's degree (e.g., MS in Computer Science, Distributed Systems, or related field) is strongly preferred or equivalent practical experience.
Other Qualification
- Strong ability in Algorithmic to build highly efficient and scalable solutions for complex high-throughput data ingestion and sub-second query performance challenges.
- Solid experience in API Development, including an understanding of gRPC, REST, and OpenTelemetry (OTLP), with practical experience designing and building scalable distributed APIs for observability data.
- Strong understanding of Code Testing methodologies, such as distributed load testing and integration testing, and experience contributing to end-to-end telemetry pipeline testing and CI/CD automation.
- Solid understanding of Distributed Systems Software principles, including data partitioning, eventual consistency, and fault tolerance mechanisms, with hands-on experience in Kafka, Spark, Flink, or ClickHouse.
- Experience implementing and maintaining High Availability strategies for critical distributed systems, including multi-AZ deployments, robust retry mechanisms, and automated failover.
- Practical experience with Large Scale Data Processing technologies and frameworks such as Apache Kafka, Spark, Flink, and Apache Iceberg within complex distributed architectures.
- Good understanding of Large Scale Systems design principles, including distributed data sharding, replication, and query optimization, and experience working on observability pipelines or data lake platforms.
- Strong understanding of Object-Oriented Design (OOD) principles and architectural patterns for building highly scalable and maintainable distributed systems.
- Experience with Source Control Management (SCM) tools such as Git and GitHub/Bitbucket, and following best practices for collaborative distributed development workflows.
- Strong understanding of System Security principles and best practices relevant to securing distributed environments, including mutual TLS (mTLS), multi-tenant authorization (authz), and data encryption.
- Proven ability to actively collaborate within and across distributed software development teams and contribute constructively to architectural discussions and system designs.
- Strong skills in creating Technical Writing Documentation for runbooks, system design specs, and API documentation related to distributed systems architecture and design.
Workday Pay Transparency Statement
spend at least half (50%) of our time each quarter in the office or in the field
Not included in the source posting: qualifications, benefits.
Skills
Who can apply
The employer didn't state any visa, work authorization, citizenship or clearance requirements in this posting. Confirm with the employer before applying.
Read automatically from the employer's posting text. Always confirm with the employer — requirements can change after a job is published.