You're using an older version of Internet Explorer that is no longer supported. Please update your browser.

Software Development Engineer – In-Memory Distributed Systems

Vancouver, BC
Full Time
** Are you passionate about building a large-scale, distributed, low-latency, highly available and reliable in-memory database? We are aspiring to deliver a state of the art in-memory database, open-source compatible, and optimized for sub millisecond latency at scale. Come and join us to define the future of ElastiCache and in-memory databases at AWS **

As a Software Engineer in our in-memory databases team, you will develop large-scale, distributed, highly available in-memory sub-millisecond latency platform. You will leverage open source technologies such as Redis, Memcached, and Amazon proprietary technologies. This includes data plane extremely fast and high throughput development, low level optimizations, asynchronous messaging, event-based technologies, real-time failure detection system, horizontal and vertical scaling, auto-remediation, high availability, fault tolerance, storage technologies, snapshoting, and disaster recovery.

As the key member of the engineering team, you will have an influence on our overall strategy by helping define the product features and system architecture. Creating a reliable, scalable, and high-performance service requires strong technical expertise, a sound understanding of the fundamentals of Computer Science, and practical experience building large-scale distributed systems. You should be someone who enjoys working on complex system software, is customer-centric, and feels strongly about building good software.


• 2+ years of non-internship professional software development experience
• Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
• 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
• Hands-on technical expertise in at least two major technical areas: large systems engineering, building complex systems, low level performance optimization, databases or storage systems
• Bachelor's degree in Computer Science or equivalent


• Native development using C in high throughput low latency systems.
• Experience in taking a lead role developing complex software systems that have successfully been delivered to customers
• Experience working with in- and technologies, including Memcached and Redis
• Master's degree in Computer Science equivalent
Amazon is committed to a diverse and inclusive workplace. Amazon is an equal opportunity employer and does not discriminate on the basis of race, national origin, gender, gender identity, sexual orientation, protected veteran status, disability, age, or other legally protected status. For individuals with disabilities who would like to request an accommodation, please visit
Software and Programming