As a Lead member of the Block Storage Data plane team, you will own the software design and development for multiple core components and features on the core I/O path of the Block Storage Service. It would be best if you were a strong programmer and a distributed systems generalist, able to dive deep into any part of the stack and low-level systems and design broad distributed system interactions. You should value simplicity and scale, work comfortably in a collaborative, agile environment, and be excited to learn.
We’re looking for hands-on senior engineers with expertise and passion in solving difficult problems in distributed systems, virtualized infrastructure, and highly available storage services. As a lead engineer, you will own the software design and development for major components of the Block Storage Service Infrastructure. You will be technically leading projects with a set of other engineers, while also mentoring them. You should be both a rock solid coder and a distributed systems generalist, able to dive deep into any part of the data plane stack and low level systems, as well as design broad distributed system interactions. You should value simplicity and scale, work comfortably in a collaborative, agile environment, and be excited to learn.
Qualifications
- 10+ years' experience delivering large scale, highly available distributed systems and infrastructure services.
- Demonstrated technical leadership, including driving architecture, mentoring engineers, and leading cross-team technical initiatives.
- Experience designing, building, and operating highly available, production-grade distributed services at scale.
- Extensive experience with systems design and developing clean code in C++ and scripting languages such as Python, etc.
- Strong knowledge of data structures, algorithms, multi-threading, I/O paths, operating systems, and distributed systems fundamentals.
- Strong understanding of block storage systems and distributed persistence technologies.
- Working familiarity with networking protocols (TCP/IP, HTTP) and standard network architectures.
- Experience building and operating modern CI/CD pipelines, release automation, and deployment workflows for large-scale distributed systems.
- Strong troubleshooting and performance tuning skills.
As a member of the software engineering division, you will take an active role in the definition and evolution of standard practices and procedures. Define specifications for significant new projects and specify, design and develop software according to those specifications. You will perform professional software development tasks associated with the developing, designing and debugging of software applications or operating systems.