Amazon Selection and Catalog Systems (ASCS) builds the systems that host and run the world's largest e-Commerce products catalog. Our high scale distributed systems process hundreds of millions of updates on the billions of products to power the online buying experience for hundreds of millions of Amazon's customers worldwide, so they can find, discover and buy anything they want 24x7x365.
Product Knowledge (PK) is a comprehensive set of schematic and semantic constructs that allows us to understand customer's intent to power a targeted rich shopping experience. It expands beyond factual product characteristics (e.g. resolution of a TV) to the product characteristics our customer's use in their shopping missions what the product is used for (e.g. baby-proofing), where the product is used (e.g. kitchen), who uses the product (e.g. teenager), when the product is used (e.g. thanksgiving) and opinions about the product (e.g. cute t-shirt). We build highly scaleable distributed systems powered by AI and ML. The systems are responsible for scaling the discovery of Product Knowledge by mining customer engagement signals.
Enable customer shopping journeys on Amazon by vending an authoritative, semantically rich, easily discoverable, and universally applicable body of product knowledge that can be utilized across customer shopping experiences.
We're looking for software engineers who have strong technical design skills and are able to drive technical design of broad efforts that have high impact and visibility. This role hsas a number of opportunities for cross-boundary ownership and require cross-organizational technical leadership skills to create seamless technical designs and solutions that reliably work end-to-end. This role will serve as a great springboard for your career.
This is a dream opportunity for engineers who want to create reliable and scalable solutions that enable Amazon to create the largest and best possible selection for our customers. Come and help make history as we take e-Commerce to the 5 billion people on earth who do not have it today while having fun and learning a lot on the way!
• Bachelor's Degree or above in Computer Science or related field
• 5+ years' professional experience in software development
• Strong Computer Science fundamentals, including object-oriented design, data structures, algorithm design, and complexity analysis
• Strong problem solving skills
• Proficiency in at least one object-oriented programming language such as Java
• Knowledge of professional software engineering and best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
• Experience building software systems that have been successfully delivered to customers
• Experience building high-performance, highly-available and scalable distributed systems
• Ability to take a project from scoping its requirements through to the actual launch
• Experience in communicating with users, other technical teams, and management to collect requirements, and describe software product features
• Experience serving as technical lead throughout the full development lifecycle, end-to-end, from scoping, planning, conception, design, implementation and testing, to documentation, delivery and maintenance.
• Experience providing design reviews for other engineers, including feedback on architecture and design issues, as well as integration, performance and scalability.
• 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 working with both relational and NoSQL data stores.
• Experience mentoring junior software engineers