As an MLOps practitioner, you need to be well-versed in a wide range of tools and technologies to build, deploy, and maintain machine learning systems effectively.
- ML + DevOP =The practice of applying DevOps principles to ML. - Build a personal project, like an app, and actually try to deploy the model in your own app.
Have to know
- Python. Main ML libs are python-based. Data processing is usually done with python, too.
- Learn pandas, numpy and scikitlearn at least. MLOps tools like MLflow usually have python APIs
- Git. Not a programming language really.
- Software Engineering principles such as Object Oriented programming and Test Driven Development.
- DevOps principles such as CI/CD.
- MLFlow, W&B or a similar MLOps tool.
- Docker/Kubernetes. You will not nees to learn a programming language, I think that you will be using yaml and CLI.
- Learn cloud first. I can’t imagine understanding MLOps without basic DevOps (Git, Docker, Docker Compose, basics of Kubernetes) and without basic cloud (blob storage like S3, compute like EC2, orchestration tools etc.). Personally I started with AWS, since they have good documentation, good free tier and a lot of free courses at AWS Educate (quality varies, but “main” intro course for Cloud Practitioner was really good). Good to know
- Backend SWE
- PySpark. Too much data? You’ll need spark probably
- FastAPI. If you need to develop an API to make available your model inference, it’s the easiest way and documentation is top.
Resources
- Designing Machine Learning Systems
- MLOps Zoomcamp
- Threads
- MLE interview
Other