Staff Engineer, Product Search and Ranking
- Full Time
About the job
Job title: Staff Engineer, Product Search and Ranking
Location: US-Remote #LI-Remote
Reports to: Manager, Engineering
About the role
We are hiring a Staff Engineer to lead our Product Search and Ranking efforts. The Product Catalog is the backbone of LTK’s Creator-Driven Shopping App. This service will contain billions of items, powering scenarios such as price drops, link management, retailer availability, search, ranking, and similar product scenarios. A key challenge in this service is de-duplicating and reconciling exact products across retailers and surfacing them to creators and shoppers.
The ideal candidate has a deep understanding of e-commerce and product catalog systems, and has experience delivering business value in a high growth, fast moving environment. You have experience building highly scalable systems that anticipate significant growth across multiple dimensions.
You’ll simplify and get things done, working effectively with engineering teams across the company. You challenge yourself and your team to constantly come up with simpler and better solutions to complex problems. This highly visible position will have you working closely with the VP of engineering and other departments to ensure the success of LTK.
How you will make an impact
- Lead the (1) Building and Scaling of a Product Catalog Service. (2) Building and scaling of an Exact Product Matching Service. (3) Building and scaling a Product Search Service.
- Bring a strong command of Golang, Python, Vector Databases, and embedding technologies.
- Have expertise in designing and building complex systems, architecture, and solutions.
- Provide inputs on engineering and operational excellence and help complete critical engineering projects on time, within budget and at high quality.
- Identify and evaluate new technologies and tools to improve the efficiency and effectiveness of the engineering team.
- Innovation: Demonstrate your ability to solve complex technical challenges, provide innovative solutions, and influence technical direction.
- Excellence: Create and maintain technical documentation, including architectural diagrams, design documents, and project plans.
- System Design: Design, develop and deploy software solutions that meet the needs of the business.
- Problem Ownership: Willingness to take ownership of complex issues, drive problem resolution, and act as a technical leader in crisis situations.
What you will bring to LTK
Leadership:
- Leadership: Proven leadership skills, including mentoring and guiding engineers, leading technical initiatives, and collaborating with cross-functional teams.
- Project Management: Ability to lead projects from conception to completion, manage timelines, resources, and priorities effectively.
- Continuous Learning: A commitment to staying up-to-date with industry trends, tools, and methodologies, and a passion for sharing knowledge with peers.
- Mentor and coach teams within the department.
Work Management/Communication:
- Develop and maintain relationships with key stakeholders, including other technical leaders and teams
- Communication: Excellent communication skills to effectively convey technical concepts, collaborate with non-technical stakeholders, and provide guidance on technical decisions.
- Influence: Ability to influence technical decisions across teams and mentor others in technical skills and practices.
- A mindset focused on seizing opportunities and moving with urgency.
- Dedication to fierce prioritization and operational excellence.
- Adaptability to a dynamic, fast-moving environment.
- A growth mindset and openness to feedback.
Technical Skills:
- Experience: more than 7 years demonstrating a deep understanding of distributed systems and software development principles, architecture, and best practices.
- Degree: A bachelor's or master's degree in Computer Science, Software Engineering, or a related field is preferred, although relevant work experience can sometimes compensate for formal education.
- Design, develop and deploy software solutions that meet the needs of the business.
- Ensure that the engineering team adheres to coding standards, best practices, and compliance requirements.
Nice to have:
- Data Storage: Expertise in working with various data storage technologies, including relational databases, NoSQL databases (like Hadoop HDFS, Apache Cassandra), and columnar databases.
- Data Processing: Strong understanding of data processing frameworks like Apache Spark, Apache Flink, Apache Beam, or Hadoop MapReduce. Experience in designing and optimizing data processing pipelines for performance and scalability is important.
- Streaming Data: Knowledge of stream processing frameworks like Apache Kafka or Apache Pulsar is valuable for handling real-time data streams.
- Cloud Platforms: Experience with cloud platforms like AWS, Azure, or Google Cloud Platform, and their big data services (e.g., Amazon EMR, Azure HDInsight, Google Cloud Dataproc).
- Containerization and Orchestration: Familiarity with containerization (Docker) and orchestration tools (Kubernetes) for deploying and managing big data applications.
- Data Modeling and ETL: Understanding of data modeling concepts and experience with Extract, Transform, Load (ETL) processes for transforming and moving data between systems.
- Optimization: Proficiency in optimizing big data applications for performance, throughput, and resource utilization.