Sr. Software Engineer in Machine Learning
Engineering - Software Development
Who we are
At Criteo, we connect 1.4 billion active shoppers with the things they need and love. Our technology takes an algorithmic approach to determining what user we show an ad to, when, and for what products. Our dataset is about 45 petabytes in Hadoop (more than 90 TB extra per day) and we take less than 10ms to respond to an ad request. This is truly big data and machine learning without the buzzwords. If scale and complexity excite you, join us.
Your mission :
We are searching for great machine learning engineers to join the team responsible for extending Criteo's large scale distributed machine learning library (e.g., implementing new distributed and scalable machine learning algorithms, improving their performance)
You will also build and improve prediction models for ad targeting; proving the business value of the changes and deploy them to production.
You'll have the opportunity to work on highly challenging problems with both engineering and scientific aspects; for example:
Click prediction : How do you accurately predict in less than a millisecond if the user will click on an ad? Thankfully, you have billions of datapoints to help you.
Offline testing : You can always compute the classification error on a model predicting the click probability. But will it really correlate with the online performance of this model?
Explore / exploit : It's easy, UCB and Thomson sampling have low regret. But what happens when new products come and go and when each ad displayed changes the reward of each arm?
Optimization : Stochastic gradient descent is great when you have lots of data. But what do you do when all data are not equal and when you must distribute the learning over thousands of nodes?
Are you interested in tackling such problems in an environment where your algorithms are deployed by a
team that sits next to you?
What you will do?
- Gather and analyze data, identify key prediction/classification problems, devise solutions and build prototypes
- Contribute to the exploration and creation of new scientific understanding
- Initiate and propose unique and promising modeling projects, develop new and innovative algorithms and technologies, pursuing patents where appropriate
- Stay current on published state-of-the-art algorithms and competing technologies
- Maintain world-class academic credentials through publications, presentations, external collaborations and service to the research community
- Develop high-performance algorithms for precision targeting, test and implement the algorithms in scalable, product-ready code
- Research and investigate academic and industrial data mining, machine learning and modeling techniques to apply to our specific business cases
- Interact with other teams to define interfaces and understand and resolve dependencies
- Participate in academic conferences and publish research papers
Strong candidates qualifications:
- Master degree or PhD in Statistics, Machine Learning or a related field, with a previous major in Computer Science
- Experience with traditional as well as modern statistical learning techniques, including: Support Vector Machines; Regularization Techniques; Boosting, Random Forests, and other Ensemble Methods
- Strong implementation experience with high-level languages, such as R, Python, Perl, Ruby, Scala or similar scripting languages
- Familiarity with Linux/Unix/Shell environments
- Strong hands-on skills in sourcing, cleaning, manipulating and analyzing large volumes of data
- Experience with end-to-end modeling projects emerging from research efforts
- Excellent academic or industrial track record of proposing, conducting and reporting results of original research, plus collaborative research with publications
- Strong communication skills both written and oral
- Knowledge of Hadoop programming environments (e.g. Pig, Hive)
Criteo R&D Culture
Empowerment – We believe in hiring the best engineers in the industry and then letting them get on with what they do best – designing, coding and releasing state of the art software.
Mobility – In our Voyager program our engineers get to pick which team they want to work on for 2-4 weeks, boosting collaboration, networking and maybe even leading to switching teams.
Agility - We work in a fast pace environment where we build and release stuff frequently to deliver value soon and adapt to changes quickly.
Variety – We have many ways to get your code to production including our Hackathon, 10% projects, Voyager and more.
Multicultural – We have engineers from all over the world for you to interact and exchange ideas with.
Our culture keeps evolving, and you will be expected to contribute actively with new ideas to complement and enhance the existing programs that include frictionless internal mobility, 10% time, mentoring, technical talks, hackathons, conferences, etc.
We recognize that engineering culture is key for building a world-class engineering organization. Our core values are getting stuff done, collaboration and respect, code quality, striving for excellence, and having fun at what we do.
Do you want to know more about life in the R&D?
Youtube: R&D Criteo @ Europe
Our blog: http://www.criteolabs.com
At Criteo, we dare to be different. We believe that diversity fuels innovation and creates an energy that can be seen and felt all over Criteo. We champion different perspectives and are committed to creating a workplace where all Criteos are heard, feel a sense of belonging, and are treated with respect and dignity.
Criteo collects your personal data for the purposes of managing Criteo's recruitment related activities. Consequently, Criteo may use your personal data in relation to the evaluation and selection of applicants. Your information will be accessible to the different Criteo entities across the world. By clicking the "Apply" button you expressly give your consent.