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

Software Development Engineer II

Vancouver, BC
Full Time
2 days ago

Are you excited by big data, really big data? Do you want to have a high impact on the security of Payments using the very best of AWS technologies? Are you interested in building high performance platforms to deal with big data, support security analytics and implement automation to address security threats? Amazon's Payments Security team is looking for a seasoned Software Development Engineer with a strong passion for these topics to join our team.

You will operate at the convergence of the hottest areas in tech: Big Data, Payments, Security, Software Development and AWS Cloud Services. You will design an AWS-first cloud service to launch a high-impact, cutting-edge security solutions and distributed, multi-tier services to address complex security problems (from transaction integrity to automation to mitigate security threats) that will drive Amazon-wide impact.

You will deliver security solutions as a core member of an engineering team within Application Security to shape the foundation of a new security service. You will be responsible for thinking big, setting goals, direction and priorities, delivering high-quality software, maintaining operational excellence, and leading interactions with customers and partners within the Payments organization and security partner teams. You will play a critical role in our ability to efficiently access security relevant data and build automation at the scale. You should be comfortable with a degree of ambiguity that's higher than most projects and relish the idea of solving problems that haven't been solved at scale before. Along the way, we guarantee that you'll learn a ton, have fun and make a huge impact.

You will:
• Define, design, and implement multi-tier distributed security service. from the ground-up using the best of AWS.
• Estimate engineering effort, plan implementation, and roll-out system changes that meet requirements for functionality, performance, scalability, reliability, and adherence to development goals and principles.
• Guide junior SDEs in- and outside the team.
• Must be able to independently design code and test major features, as well as work jointly with other team members to deliver complex changes.
• Must be able to effectively collaborate in a fast paced environment with multiple teams in a large organization (software development, QA, Project/Release Management, Build and Release, etc).
• Maintain the team's high operational excellence bar and identify opportunities to further improve
• Work with customers within Amazon's Payments teams and with your team of engineers to develop systems that magnify our ability to deeply understand and rapidly improve Payments security.
• Work with Product and Program Managers to develop and evolve the vision and strategy for the team.
• Support hiring, and mentor other engineers on your team.
Amazon Payments Services build systems that process payments at an unprecedented scale, with accuracy, speed, and mission-critical availability. We process millions of transactions every day worldwide across various payment methods. Over 100 million customers and merchants send hundreds of billions of dollars moving at light-speed through our systems annually. Here in Payments, we embrace our differences. We are committed to furthering our culture of inclusion. We have ten employee-led affinity groups, reaching 40,000 employees in over 190 chapters globally. We have innovative benefit offerings, and we host annual and ongoing learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences. Amazon's culture of inclusion is reinforced within our 14 Leadership Principles, which remind team members to seek diverse perspectives, learn and be curious, and earn trust.


• 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.
• 2+ years of non-internship professional software development experience
• 2+ years of professional experience in software development
• 2+ years of experience working with professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
• Experience building scalable distributed systems with service oriented architectures
• Proficiency in at least one modern programming language, e.g. Java, C#, or C++
• Bachelor's Degree in Computer Science or related field, or an equivalent in relevant work experience
• Exposure to cloud computing (AWS, Azure, etc)


• Strong, object-oriented design and coding skills
• Experience with distributed (multi-tiered) systems, algorithms, and relational databases
• Ability to effectively articulate technical challenges and solutions
• Deal well with ambiguous/undefined problems; ability to think abstractly
• Previous technical internship(s) preferred
• Graduate degree a plus
• Strong written/spoken communication skills
• Experience with system architecture/design
• Experience with distributed systems operating in a scalable/high volume environment
Software and Programming