Meta is looking to develop machine learning systems for resource-constrained environments such as mobile devices and AR/VR headsets.
Requirements
- Machine Learning Framework(s): PyTorch, MXNet, or Tensorflow
- Machine learning, recommendation systems, computer vision, natural language processing, data mining, or distributed systems
- Hadoop, HBase, Pig, MapReduce, Sawzall, Bigtable, or Spark
- Scripting languages: Perl, Python, PHP, or shell scripts
- C, C++, C-Sharp, or Java
- Python, PHP, or Haskell
- Relational databases and SQL
Responsibilities
- Research, design, and develop machine learning systems for resource constrained environments such as mobile devices and AR/VR headsets.
- Utilize low level programming, algorithmic optimization, and hardware acceleration to optimize the performance of the PyTorch machine learning framework across mobile hardware environments.
- Apply deep neural networks to a variety of domains such as image object detection, image background segmentation, foundational language models, ads/feed/search ranking, and audio transcription to enrich user experience in Meta’s family of social media applications.
- Apply GPU programming to enable acceleration of machine learning models via the mass parallelism offered by graphics processors.
- Investigate and resolve performance bottlenecks in real-time machine learning workloads.
- Design and implement moderate-sized software modules of the Pytorch machine learning library with a focus on achieving good software quality.
- Apply GPU shader programming with Cuda, OpenCL, Vulkan and usage of CPU vector intrinsics to implement optimized mathematical functions that will be used to execute Pytorch machine learning models on mobile and edge (e.g. VR headsets) devices.
Other
- Requires a Bachelor’s degree (or foreign degree equivalent) in Computer Science, Computer Software, Mechatronic Engineering, Applied Sciences, Mathematics, Physics, or related field.
- Completion of a university-level course, research project, internship or thesis in the specified areas
- Collaborate with team members, review code, delegate tasks, deliberate design reviews, etc.