Staff Software Engineer, Product Catalog
Fetch Rewards (View all Jobs)
Remote
Interview Process
1. Short take-home project 2. 50 min screening interview that includes discussion of project 3. 5 hr (w/ breaks) final interview that involves speaking with your future manager and a non-technical product manager, a real-world coding problem, and high-level and low-level system design problems.
Programming Languages Mentioned
Java, Python
What we’re building and why we’re building it.
Every month, millions of people use America’s Rewards App, earning rewards for buying brands they love – and a whole lot more. Whether shopping in the grocery aisle, grabbing a bite at the drive-through or playing a favorite mobile game, Fetch empowers consumers to live rewarded throughout their day. To date, we’ve delivered more than $1 billion in rewards and earned more than 5 million five-star reviews from happy users.
It’s not just our users who believe in Fetch: with investments from SoftBank, Univision, and Hamilton Lane, and partnerships ranging from challenger brands to Fortune 500 companies, Fetch is reshaping how brands and consumers connect in the marketplace. When you work at Fetch, you play a vital role in a platform that drives brand loyalty and creates lifelong consumers with the power of Fetch points. User and partner success are at the heart of everything we do, and we extend that same commitment to our employees.
Ranked as one of America’s Best Startup Employers by Forbes for two years in a row, Fetch fosters a people-first culture rooted in trust, accountability, and innovation. We encourage our employees to challenge ideas, think bigger, and always bring the fun to Fetch.
Fetch is an equal employment opportunity employer.
At Fetch, we are on a mission to build the most comprehensive product catalog across every retailer in the U.S., and eventually the world. Our catalog is the backbone of the Fetch platform, powering critical features such as personalization, relevance, search, and product matching. This catalog doesn't just track basic product information; it includes rich metadata like category taxonomies, images, and purchase history data to fuel our advertising capabilities and enhance the overall user experience.
We are seeking a Staff Software Engineer with deep expertise in building and scaling large, data-rich product catalogs. This role is crucial to leveling up our catalog and data capabilities, which will drive many of Fetch’s most important future initiatives. The ideal candidate has a blend of technical proficiency, domain knowledge, and experience in areas like data ingestion, machine learning, and potentially AdTech.
Responsibilities:
- Collaborate closely with cross-functional teams, including engineers, data analysts, product managers, and ML specialists, to build a comprehensive and scalable product catalog.
- Lead the design, implementation, and optimization of critical components of the catalog, such as product ingestion pipelines, data enrichment, metadata generation, and data serving infrastructure.
- Ensure the catalog serves as the foundation for personalization, relevance, search, and product matching across Fetch’s app, while supporting additional use cases like image-based ad generation and real-time product recommendations.
- Develop robust solutions to ingest product data from multiple sources (partners, third-party data providers, and web scraping) and harmonize that data to maintain a unified, up-to-date product catalog.
- Collaborate with the ML team to integrate state-of-the-art machine learning techniques for data classification, entity resolution, and content enrichment (text, images, etc.).
- Mentor team members, fostering a culture of knowledge sharing and technical excellence.
In your toolbag (Minimum requirements):
- 5+ years of experience building and maintaining large-scale, high-performance product catalogs or similar data-driven applications, with a strong focus on reliability, scalability, and accuracy.
- Proven experience delivering software in a high-traffic production environment, with an emphasis on data quality, integrity, and operational excellence.
- Strong proficiency in at least one of the following programming languages: Python, Go, Java, with the ability to write clean, efficient, and maintainable code.
- Expertise in cloud-based distributed systems (AWS or similar), microservices architecture, and handling large-scale data ingestion and processing workflows.
- Familiarity with machine learning techniques for data cleaning, enrichment, and classification tasks, such as entity resolution, named entity recognition, and image/text classification.
- Strong understanding of data modeling and data structures, especially in building product catalogs with complex relationships between entities.
Nice to Have:
- Experience with AdTech or systems that optimize and generate ad content using product metadata.
- Experience using GenAI/LLMs to automate data cleaning, enrichment, and categorization tasks.
- Knowledge of search system optimization and experience building or enhancing relevance and ranking algorithms.
- Familiarity with taxonomy design, knowledge graph construction, or other advanced data modeling techniques to structure and enrich the catalog.
- Experience with web scraping and data aggregation from diverse external sources to support catalog growth and data coverage.
Please mention No Whiteboard if you apply!
I'm a one-man team looking to improve tech interviews, and could use any support! 😄