Key Responsibilities:
- Set Technical Vision & Strategy: Define the direction and objectives for a large ML team, focusing on project impact, system design, and ML excellence.
- Optimize ML for Modern Hardware: Adapt machine learning methods to efficiently leverage parallel computing environments (e.g., distributed clusters, multicore SMP, and GPUs).
- Enhance & Maintain ML Systems: Continuously reassess the trade-offs of existing ML systems and features, driving large-scale efforts to reduce technical debt and redesign from first principles when needed.
- Provide Technical Leadership: Guide teams in developing ML best practices, fostering an engineering culture that prioritizes excellence in model development and deployment.
- Solve Complex Production Issues: Act as the go-to expert for diagnosing and resolving critical ML system performance and evaluation issues that impact production environments.
- Develop Scalable ML Models: Build highly scalable classifiers and predictive models, utilizing techniques such as data regression, rules-based modeling, and deep learning.
- Define Feature Roadmap: Gather, analyze, and synthesize business requirements, translating them into an effective ML feature roadmap.
- Collaborate on Implementation: Work closely with the engineering team to write production-ready code and integrate ML solutions seamlessly.
Minimum Qualifications:
- Experience:
- 8+ years of experience in software engineering or a related technical field (4+ years if holding a PhD).
- 6+ years of experience in machine learning, recommendation systems, data mining, artificial intelligence, or related fields.
- Programming & Development:
- Proficiency in Python, JavaScript, Hack, or other scripting languages.
- Experience developing and debugging in C/C++ and Java.
- Familiarity with scripting languages such as Perl, PHP, and shell scripting.
- Technical Leadership:
- Proven ability to lead major ML initiatives and set the technical direction for projects.
- Experience building and shipping high-quality, scalable, and reliable ML systems.
- Ability to analyze complex data-driven problems and provide detailed solutions.
- ML & Production Expertise:
- Hands-on experience developing machine learning models at scale, from initial research to business impact.
- Understanding of ML system architecture and how ML models interact with large-scale applications.
- Education:
- Bachelor’s degree in Computer Science, Computer Engineering, or a related technical field, or equivalent practical experience.
Preferred Qualifications:
- Advanced Degree: Master’s or PhD in Computer Science, Machine Learning, or a related field.
- Large-Scale System Design: Exposure to architectural patterns for large-scale software applications.
- Deep Learning Frameworks: Experience working with PyTorch and TensorFlow for ML model development.