About the job
AWS Marketplace helps millions of AWS customers discover, evaluate, and procure software. The Search team is the intelligence layer behind that discovery; we build the systems that understand what customers are looking for and connect them with the right products, solutions, and services.
We're a small, high-impact team working on search relevancy, ranking, query intent classification, embeddings, and ML-powered enrichment. Our systems serve every search query on AWS Marketplace and increasingly power adjacent experiences like Agent Mode, console integrations, and the broader AWS discovery ecosystem. The problems are genuinely interesting: hybrid search architectures, LLM-based content enrichment, cross-encoder re-ranking, and building evaluation frameworks that let us measure whether we're actually getting better.
We're looking for a Software Development Engineer who wants to own hard problems end-to-end. You'll design and build systems that directly impact how customers find software on AWS; from the query understanding layer that classifies intent, to the ranking models that decide what shows up first, to the evaluation infrastructure that tells us if we got it right.
Responsibilities
- Search relevancy and ranking systems that serve AWS Marketplace's full product catalog
- Query understanding and intent classification - figuring out whether a customer wants a specific product, a comparison, or a recommendation
- Embedding pipelines and hybrid retrieval architectures (BM25 + vector search)
- ML model integration for ranking, content enrichment, and signal normalization
- Evaluation frameworks — golden datasets, offline metrics (NDCG, MRR), A/B testing infrastructure
- Search APIs consumed by multiple surfaces including the Marketplace website, AWS console integrations, and AI-powered agent experiences
- Operational excellence for a system that handles every search query on the platform
Qualifications
Minimum
- 3+ years of non-internship professional software development experience
- 2+ years of non-internship design or architecture (design patterns, reliability and scaling) of new and existing systems experience
- 1+ years of designing and developing large-scale, multi-tiered, multi-threaded, embedded or distributed software applications, tools, systems, and services using: C#, C++, Java, or Perl experience
- 1+ years of Object Oriented Design experience
- Bachelor's degree or foreign equivalent in Computer Science, Engineering, Mathematics, or a related field
Preferred
- 3+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
- Bachelor's degree in computer science or equivalent