Someone asked me on LinkedIn what they should learn for the rest of the year in order to become a machine learning engineer.
The specific skills are hard to narrow down as every role will be different. I can only share what I’ve learned the past year being a machine learning engineer at Max Kelsen.
I’ve copied the message I replied with here.
Hey [name removed]!
I'm great thank you! I trust you're well too.
Well, machine learning engineers may have different roles at different companies but let me talk you through what my day usually looks like.
9 am - reading articles/papers online about machine learning (arXiv and Medium are the two usual places).
10 am - working on the current project and (sometimes) applying what I've just been reading online.
4 pm - pushing my code to GitHub and writing down experiments for the next day.
5 pm - sending a small report to the team about what I've been working on during the day.
(these are all ideal scenarios)
Now, what happens during the 10-4pm (this is where most of the code gets done). Usually, it will be all be Python code within a Jupyter Notebook playing around with different datasets.
At the moment I'm working on a text classification problem using the Flair library.
As for what skills I'd suggest are most valuable (in my current role).
1. Exploring datasets using exploratory data analysis, this notebook by Daniel Formosso is a great example.
I also wrote an article with a bit more of a gentle introduction to exploratory data analysis which may help.
2. Being able to research different data science and machine learning techniques and apply them to current problems.
This one is a little more tricky because it will be different from problem to problem.
How you could practice this would be to enter a Kaggle competition (previous or current) and start figuring out different practices for different kinds of data, tabular, text, images.
Because it's free, there are others who show their work (so you know what a good job is) and the datasets are relatively close (all real datasets differ a little) to what you'd be working on as a machine learning engineer.
Once you've spent a couple of months doing 1. and 2. you may want to look into what it takes to deploy a machine learning model in production. However, don't rush towards this. This is still a bit of a dark art (it's doable but not well documented yet). I think over the next year, this step will become more and more accessible to everyone.
I hope this helps.
Let me know if you'd like me to tidy anything/clarify some things.
[If you’re reading this, you can reach out and ask questions too, I’ll do my best to answer.]