Senior Software Engineer - Recommendation Engine (Scala)
Summary
Senior engineer on an 'Engine Team' that turns data-science prototypes into production Scala/Spark software powering personalized fashion recommendations, serving ML-driven suggestions to millions of shoppers within tens-of-milliseconds SLAs over billions of retail transactions.
- Deliver Software: Implement, test, and support high quality software, used by millions of consumers every day, in an agile, iterative development culture.
- Focus on Performance: Make that software hit our Service-Level Agreements, serving personalized recommendations in 10s of milliseconds (e.g., without hitting disk).
- Apply Machine Learning: Design, implement, test, and support Big Data-driven, ML-based algorithms in conjunction with our team of data scientists.
- Learn: Contribute to team success by learning new technologies and algorithms, often while designing and building the software.
- Collaborate: Work with product managers, scientists, engineers, and customer support to invent, prioritize, build, and support our predictive analytics applications.
- 5+ years as a professional software engineer
- Experience with functional and/or object oriented programming experience: e.g., Scala, Kotlin, or Java, C#, C/C++, Erlang; JVM experience preferred.
- Demonstrated focus on software quality including unit testing, integration testing, and strong collaboration with QA
- Familiar with developing and releasing software as a service, especially software with a large user base or strict performance requirements.
- Collaboration skills: Work together with members of various internal teams, including listening and communicating.
- Execution skills: Gets things done both independently and collaboratively, and understand when each is appropriate.
- Familiar with Big Data: For example, designing for large data volume, combining relational and NoSQL databases, parallel or distributed computing (Spark experience helpful), enterprise-level data management.
- Familiar with Machine learning, especially in commercial environments.
- Passion: Has an interest in our business domain (fashion), solution space (Big Data & Machine Learning), or technology stack.
- Undergraduate degree in Computer Science or a quantitative field (e.g., Math, Physics, Engineering).