Machine Learning Software Engineer
The ideal candidate will have industry experience working on a range of classification and optimization problems, e.g. audio/video fingerprinting, video classification, text/sentiment classification, or collaborative filtering/recommendation. The position will involve taking these skills and applying them to some of the most exciting data and prediction problems that exist on the web.
- Develop highly scalable classifiers and tools leveraging machine learning, data regression, and rules based models.
- Suggest, collect and synthesize requirements and create effective feature roadmap.
- Apply expert software development skills to a wide range of ML-related coding projects.
- Adapt standard machine learning methods to best exploit modern parallel environments (e.g. distributed clusters, multicore SMP, and GPU).
- MS degree in Computer Science or related quantitative field with 5 years of relevant experience or Ph.D degree in Computer Science or related quantitative field.
- Experience in one or more of the following areas: machine learning, recommendation systems, pattern recognition, large-scale data mining or artificial intelligence.
- Experience with deep learning - convolution neural networks, recurrent and recursive nets a big plus.
- Proven ability to translate insights into business recommendations.
- Experience with Hadoop/Hbase/Pig or Mapreduce/Sawzall/Bigtable.
- Expert knowledge developing and debugging in C/C++ and Java.
- Experience with scripting languages such as Perl, Python, PHP, and shell scripts.
- Experience with filesystems, server architectures, and distributed systems a plus.