The Machine Learning Engineer will be responsible for developing, improving, and maintaining online inference systems and a data mining platform. This role involves optimizing and compressing machine learning models to meet performance requirements.
About the role
Responsibilities
Develop, improve, and maintain online inference systems.
Create and maintain a data mining platform for online activities.
Optimize and compress machine learning models to meet online performance requirements.
Requirements
Good C/C++ development skills, including familiarity with multi-threaded programming, memory management, design patterns, and Linux development.
Clear understanding of C++11 syntax and experience in developing highly concurrent programs.
Knowledge of machine/deep learning theory and experience in training deep learning models.
Proficiency in Python, Golang, Scala, or Java.
Familiarity with common algorithms in computer vision (cv), natural language processing (nlp), recommendation systems, and social networking services (sns) is a plus.
Understanding of the internal workings of Tensorflow/Pytorch is advantageous.
Experience in distributed systems projects, including design and debugging of complex system software, is a plus.
Knowledge of GPU hardware architecture, CUDA proficiency, and optimization in deep learning computational frameworks is a plus.
Experience in AI compiler development, familiarity with model compression technology frameworks, and understanding of the latest research progress in this field are beneficial.
Skills
C/C++multi threaded programmingmemory managementDesign PatternsLinux developmentC++11PythonGolangScalaJavaComputer VisionNatural Language ProcessingRecommendation Systemssocial networking servicesTensorFlowPyTorchDistributed SystemsGPU hardware architectureCudadeep learning computational frameworksAI compiler development