Skip to main content

Software Development Engineer

Are you interested in building and operating some of the largest distributed systems in the world? Do you want to revolutionize the way people manage and use low latency, high throughput in-memory data store?

Our charter is an AWS service, ElastiCache, that enables users to deploy, manage and massively scale in-memory distributed data stores. Customers include many of the world's fastest growing start-ups, using the service to build low latency, high throughput data layer and improve performance of applications using caching. Amazon ElastiCache helps developers turbo-charge their application performance and simplifies management of Memcached and Redis data stores in the cloud. We heavily use open-source software systems in providing a world-class experience to our customers.

Our software developers build the next generation technologies that change how millions of AWS customers connect, and interact with AWS services ecosystem. We use ideas from every facet of computer science including distributed computing, large-scale design, big and real-time data processing, data storage, service-oriented architecture, networking, machine learning, and artificial intelligence. We are looking for highly-motivated and passionate engineers to build our next generation high performance in-memory distributed data storage platform to solve real-time query, transaction and analytics processing for large scale data applications.

Amazon ElastiCache team aspires to create a place where engineers can deliver great work. We are a global business, so your ability to work with people with diverse viewpoints and backgrounds will be important. We value engineers those balancing quality and speed, operational excellence, and delivering value to our customers.


· Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
· Bachelors in Computer Science or Engineering, or equivalent experience
· Very high-quality design and code practices which results in code that is robust and easy to maintain
· Strong knowledge of data structures, algorithms, OS and distributed systems
· Understanding of system performance and scaling
· Possess excellent communication, sharp analytical abilities, and proven design skills


· Experience delivering and operating large scale, highly available distributed systems
· Knowledge and experience with operating systems internals, database kernels, networking, distributed systems and virtualization are a plus
· Experience with large-scale distributed database systems, storage farms, and/or horizontally scaled request processing fleets

Software Development Engineer

Seattle, WA
Full Time

Published on 11-18-2019