Software Development Engineer - Distributed Services
- Seattle, WA
At the heart of Amazon's e-commerce business is the Item & Offer Platform engineering team. The platform is used by millions of merchants to expose customers to new products or new offerings on existing products. Using massively parallel processing and proprietary techniques, millions of updates to details, prices, inventory levels, and relationships are processed in real time to keep Amazon's catalog fresh. Imagine that on any given day your solutions bring billions of experiences to customers around the globe; that is the reality on the Item & Offer Platform team.
The Item and Offer Platform team is an agile, fast-moving team driving the future of this central piece of Amazon's shopping experience. We are looking for a Software Development Engineer (SDE) to shape that future.
In this role, you will participate in all parts of the software development process, from collaborating with customers on design to executing that design in a scalable and extensible way. You will have the opportunity to solve hard computer science problems and help the business every day.
Successful candidates are passionate about translating high-level, ambiguous business goals to software platforms that enable multiple businesses. You are passionate about taking initiative, delivering extensible, on-time solutions, and being a part of high-performing teams.
• 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
• Bachelor's Degree in Computer Science or related field
• Minimum 5+ years professional experience in software development
• Computer Science fundamentals in object-oriented design
• Computer Science fundamentals in data structures
• Computer Science fundamentals in algorithm design, problem solving, and complexity analysis
• Proficiency in, at least, one modern programming language such as C, C++, C#, Java, Perl, or similar
• Experience taking a leading role in building complex software systems that have been successfully delivered to customers
• Knowledge of 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 with distributed computing and enterprise-wide systems
• Experience in communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy
• Experience mentoring junior software engineers to improve their skills, and make them more effective, product software engineers
• Experience influencing software engineers best practices within your team
• Hands-on expertise in many disparate technologies, typically ranging from front-end user interfaces through to back-end systems and all points in between
• Experience with Client/Server development
• Experience designing and building large distributed system
Back to top