Amazon OpenSearch Service is a fully managed service that makes it easy to deploy, operate, and scale OpenSearch clusters for log analytics, full-text search, application monitoring, and more. As part of AWS, we serve hundreds of thousands of customers who rely on OpenSearch to power mission-critical search and observability workloads at scale.
As a Software Development Engineer on the OpenSearch team, you will help solve a variety of technical challenges in distributed systems, data ingestion, and search infrastructure. You will play an active role in translating business and functional requirements into concrete deliverables and build quick prototypes or proofs of concept in partnership with other technology leaders within the team. You will help invent new features, design, develop, and deploy reliable distributed services that operate at massive scale across all AWS regions.
You will work with a variety of core languages and technologies including Rust, Java, Python, Golang, and AWS-native services. You will tackle challenging problems in areas such as cluster management, data pipeline orchestration, query optimization, and multi-tenant infrastructure — all while ensuring high availability and security for our customers.
You should be comfortable with a degree of ambiguity that's higher than most projects and relish the idea of solving problems that span the full stack — from control plane APIs to data plane performance. Along the way, we guarantee that you'll learn a ton, have fun, and make a positive impact on many customers.
This is a greenfield opportunity on a newly formed, high-performing, AI-led team. A true Think Big initiative from the ground up.
Key job responsibilities
* Design, develop and support high throughput, highly available, distributed, multi-tenant, cloud native systems.
* Produce bullet-proof code that is robust, efficient and maintainable; our primary languages are Java and Rust.
* Leading development and maintenance of key system features for Amazon OpenSearch Service
* Designing and building scalable, fault-tolerant distributed systems
* Work on challenging problems in areas such as data ingestion, auto-scaling, data storage, search optimization and query optimization, security, machine learning and more.
* Identify and advocate for operational improvements, reducing maintenance and development cost
* Join a great group of motivated, top-notch, people and work with them to solve challenging problems in a fun, collaborative environment
Internal job description
Basic qualifications
* Working with other team members to investigate design approaches, prototype solutions, and validate them through testing
* Working in an Agile/Scrum environment to deliver high quality software in a fast paced environment.