Software Engineer, Machine Learning
Meta is embarking on the most transformative change to its business and technology in company history, and our Machine Learning Engineers are at the forefront of this evolution. By leading crucial projects and initiatives that have never been done before, you have an opportunity to help us advance the way people connect around the world. The ideal candidate will have industry experience working on a range of recommendation, classification, and optimization problems. You will bring the ability to own the whole ML life cycle, define projects and drive excellence across teams. You will work alongside the world’s leading engineers and researchers to solve some of the most exciting and massive social data and prediction problems that exist on the web.
Software Engineer, Machine Learning Responsibilities:
- Leading projects or small teams of people to help them unblock, advocating for ML excellence
- Adapt standard machine learning methods to best exploit modern parallel environments (e.g. distributed clusters, multicore SMP, and GPU)
- Develop highly scalable classifiers and tools leveraging machine learning, data regression, and rules based models
- Suggest, collect and synthesize requirements and create effective feature roadmaps
- Code deliverables in tandem with the engineering team
- 5+ years of experience in software engineering or a relevant field. 3+ years of experience if you have a PhD
- 1+ years of experience in one or more of the following areas: machine learning, recommendation systems, pattern recognition, data mining, artificial intelligence, or a related technical field
- Experience with developing machine learning models at scale from inception to business impact
- Knowledge developing and debugging in C/C++ and Java, or experience with scripting languages such as Python, Perl, PHP, and/or shell scripts
- Track record of setting technical direction for a team, driving consensus and successful cross-functional partnerships
- Bachelor's degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience.
- Masters degree or PhD in Computer Science or a related technical field
- Exposure to architectural patterns of large scale software applications