Skills for ML Engineering

Posted on , 2 min read

1. Getting ready

(1) Leetcode problems to understand data structures and algorithms, (2) Exposure to software design patterns (e.g. event driven etc.), (3) Solid CS fundamentals by reading text books (e.g. Operating Systems, Compilers, Distributed and cloud computing), (4) ML engineering fundamentals with fast.ai or deeplearning.ai.

2. Learning from Google

Google is the OG for ML. Things they say are very useful to learn from, for example, the rules of ML.

3. Write a pipeline

If you have access to an AWS account, run a complete SageMaker pipeline and go around your AWS console seeing and inspecting all the resources it created, or Vertex AI pipeline, or Azure ML pipelines. If you don’t have access to any account already, poke around the internet if you can figure out if any of them offer things in free tier (it’s also a skill to see if a vendor provides something in free tier and use that I guess ;)). If not, run a Kubeflow pipeline, or an Airflow pipeline.

4. Research & explore the web

Just surf the internet, maybe start with awesome-mlops and check out what others are up to, especially companies like Uber, AirBnB, Lyft, Shopify, Netflix, etc. FBLearner flow, particularly, a post from Facebook all the way back from 2016 is still as awesome as ever and is a brilliant design pattern introduction for doing ML at a big company.

5. Andrew Ng

Do all the Andrew Ng courses that are available on the internet.

6. Talks and conferences

Develop a method to search the Internet and find people speaking about the topic. A lot of people speak about ML these days in different forums, events and conferences, e.g. Stanford MLSys seminars, DeepLearning AI channel, AWS re:Invent 2021 keynote, InfoQ, or my own talk at AWS re:Invent 2019.


Discuss this post on HN