Software Development Engineer – Amazon – Vancouver, BC
Location: Vancouver, BC | Company: Amazon
Deep in the stack where every microsecond counts, Amazon Web Services is looking for a Software Development Engineer to join the Data Plane team behind Amazon ElastiCache and MemoryDB in Vancouver, BC. This isn’t a typical cloud infrastructure role — you’ll be working at the lowest levels of a distributed in-memory database engine that serves millions of customer workloads for companies like Disney+, Snap, Zoom, Lyft, and Airbnb.
The work sits at the intersection of systems programming, database internals, and performance engineering. You’ll extend the open-source Valkey engine with novel capabilities — from durable replication and active-active conflict resolution to vector search and full-text indexing — all while maintaining sub-millisecond latencies at cloud scale.
About the Role: Software Development Engineer, AWS MemoryDB
As a core member of the Data Plane team, you’ll own and evolve the engine that sits at the heart of Amazon MemoryDB — the only Valkey-compatible database delivering in-memory speed with Multi-AZ durability. Day-to-day, you’ll write and review production-quality C/C++ code, working on everything from memory allocator tuning and I/O path optimization to replication protocols and advanced data structures. You’ll engage in design reviews, debug complex system-level issues like memory corruption and crash dumps, and translate emerging customer needs into engine capabilities.
The team values technical depth, ownership, and a bias for action. Senior engineers are directly involved in mentoring and on-call rotations, and you’ll contribute to operational excellence by improving engine reliability and diagnostic tooling. Collaboration with upstream open-source Valkey contributors and internal partner teams is also a regular part of the role.
Benefits and Salary
This position offers a base salary range of $114,800 to $191,800 CAD annually for the Vancouver location. As a total compensation company, Amazon’s package may also include sign-on payments and Restricted Stock Units (RSUs), with final compensation based on experience, qualifications, and location. Benefits include comprehensive health insurance (medical, dental, vision, prescription, basic life and AD&D), a Registered Retirement Savings Plan (RRSP), a Deferred Profit Sharing Plan (DPSP), paid time off, and additional resources to support health and well-being.
Job Details
🏢 Company: Amazon Development Centre Canada ULC
📍 Location: Vancouver, BC
🆔 Requisition ID: 10402013
💰 Pay: $114,800 – $191,800 CAD annually
Responsibilities
The Data Plane team owns the core in-memory engine powering hundreds of thousands of AWS customer workloads. As an SDE on this team, your responsibilities span the full depth of the engine — from replication and durability to performance tuning and mentorship — with a high degree of autonomy and accountability for project outcomes.
- Design and build the next-generation in-memory database engine delivering sub-millisecond latencies and millions of operations per second
- Develop large-scale distributed in-memory storage systems in C/C++, extending open-source Valkey with durability, replication, and advanced data structure capabilities
- Build and optimize the durability layer — transaction logging, snapshotting, and replication protocols — enabling Multi-AZ data protection at in-memory speed
- Design and implement advanced data structures and query capabilities including vector search and full-text search to support generative AI workloads
- Drive performance engineering at the systems level — memory allocator tuning, I/O path optimization, and lock-free concurrency
- Contribute to active-active replication and conflict resolution mechanisms for globally distributed, low-latency data access
- Mentor and grow engineers on the team, serving as a technical leader and role model for engineering best practices
- Manage individual project priorities, deadlines, and deliverables with autonomy and accountability
Requirements / Skills
This role is designed for engineers who are genuinely passionate about systems programming and distributed database internals. The ideal candidate brings hands-on experience building and scaling complex systems, a strong command of C/C++, and the technical depth to engage meaningfully in architecture discussions around durability, replication consistency, and memory efficiency.
- 3+ years of non-internship professional software development experience
- 2+ years of non-internship experience in design or architecture of new and existing systems, including design patterns, reliability, and scaling
- Programming proficiency in at least one software programming language
- 3+ years of full software development life cycle experience (preferred) — including coding standards, code reviews, source control management, build processes, testing, and operations
- Bachelor’s degree in computer science or equivalent (preferred)
How to Apply
To apply, visit the official Amazon job posting using the link below. Make sure your resume is up to date and tailored to highlight your systems programming and distributed systems experience before submitting.
Share This Opportunity
Know someone who might be interested? Share this job posting and help them join Amazon in Vancouver.
Job Summary & Tips for Applying
Quick Summary & What to Highlight: This Software Development Engineer role at Amazon in Vancouver is perfect for candidates who excel in C/C++ systems programming, distributed database internals, and performance engineering. On your resume, emphasize any experience with in-memory storage systems, replication protocols, or low-level memory management, attention to detail, and your ability to work in a fast-paced, high-scale environment. If you’ve previously worked on open-source databases, distributed storage systems, or cloud infrastructure, make sure to highlight specific achievements and responsibilities that align with this position.
Resume & Application Tips: Before applying, tailor your resume to match the job description. Include keywords like C/C++, distributed systems, and in-memory database that appear in the posting. Quantify your achievements where possible (e.g., “reduced p99 latency by 30% through I/O path optimization” or “designed replication protocol supporting 1M+ operations per second”). Write a brief cover letter expressing your genuine interest in Amazon and why you’re excited about this opportunity in Vancouver. Double-check your application for spelling errors and ensure your contact information is current.
Interview Preparation: If selected for an interview, research Amazon‘s Leadership Principles, recent AWS announcements, and the MemoryDB/ElastiCache product suite beforehand. Prepare specific examples using the STAR method (Situation, Task, Action, Result) to demonstrate your systems design and engineering problem-solving skills. Common questions may include scenarios about debugging complex distributed systems issues, making trade-offs between durability and performance, and mentoring other engineers. Dress appropriately for a technology/cloud computing environment, arrive 10–15 minutes early (or log in early for virtual interviews), and bring copies of your resume. Prepare thoughtful questions about the team’s on-call culture, roadmap for MemoryDB, and growth opportunities. After the interview, send a thank-you email within 24 hours reiterating your interest in the position.