About the Team
As the e-commerce market grows in size, there is an increased interest for insights into how the customers are shopping. The Machine Learning team aims to transform the method we extract valuable e-commerce information from text data sources. Utilizing machine learning techniques, we seek to scale the extraction process to increase coverage and quality while decreasing turnaround time and the human effort required. Our team develops and supports various machine learning systems with prediction services, data pipelines, and continuous model retraining.
Machine learning models we built generate millions to billions of predictions per day, solving problems related to e-commerce data categorization and information extraction. The acquired data directly impacts major analytic products in the organization. We also collaborate closely with data quality control teams to enable human-in-the-loop model improvements through dataset enhancements and continuous model retraining. We are an international team consisting of data scientists, machine learning engineers, and software engineers from the United States, Ukraine, and Taiwan.
About the Role
As a machine learning engineer in the Machine Learning team, you would be in charge of all the engineering components in the ML life cycle, including the data ETL pipelines, prediction services, and continuous model retraining workflows. You would be challenged to build practical machine learning systems handling large amounts of data and real-time traffic while maintaining production system stability. Being a member of the machine learning team, you would also collaborate with data scientists and other engineers to productionize machine learning systems from proofs-of-concept to online systems providing millions of predictions per day.
— Build, deploy and monitor large-scale ML systems leveraging state-of-the-art machine learning and natural language processing algorithms that provide millions of predictions daily.
— Own the engineering components in the ML life cycle and engage in the development of several ML systems and their infrastructure that includes data ETL pipelines, prediction services, and continuous model retraining workflows.
— Contribute to a cross-functional team including data scientists, machine learning engineers, and business stakeholders to deploy and maintain machine learning systems that resolve business needs.
— Follow and promote good engineering practices such as writing clean and readable code with tests, performing code reviews, and maintaining high-quality design documents.
— 3+ years of Python experience.
— Experience in AWS cloud and container technologies such as Docker and Kubernetes.
— Experience in developing gRPC and RESTful API services with monitoring systems such as Prometheus and Grafana.
— Familiar with Git and CI/CD tools such as Gitlab CI/CD, Jenkins, and Spinnaker.
— Familiar with SQL and relational / non-relational databases.
— Experience in data processing platforms and workflow management systems such as Airflow, Spark, Databricks, and Snowflake.
— Basic knowledge of the Machine Learning process. (I.e. ML life-cycle, ML evaluation metrics)
— Good technical written and spoken English.
— Experience in working on extensive data with millions to billions of rows.
— Experience in event-driven and stream-based processing patterns and systems such as Spark Streaming, Kafka, Flink, and Kinesis.
— Experience with machine learning tools and libraries such as Pandas, Scikit-learn, fastText, PyTorch, Jupyter, and Streamlit.
— Experience and understanding of Agile/Scrum/Kanban methodologies.
As a team member, you will have access to:
— 20 business days of paid vacation
— Flexible days off
— Maternity/Paternity leaves
— Professional and career development
— Personal, educational budget
— Medical health insurance and sports reimbursement