Look, I'm a PhD candidate and the head of an ML department at an automotive company. Sounds impressive, right? Well, it took over four years of trial, error, and frustration to get here. So, if I could hit the reset button, here's how I'd start learning ML in 6 simple steps.

Do you want to stay on top of 99% of the competitors? Time to start ready about the new position the companies are demanding for this 2025. Get a copy of "Full stack ML Engineer Handbook" for FREE:

1. Python: Your Best Friend (and Sometimes Worst Enemy)

Let's get real — if you can't handle Python, you won't get far in ML. The basics are non-negotiable: learn how to work with lists, dictionaries, loops, and if-else statements. Then, level up with list comprehensions and class inheritance.

Here's the kicker: don't fall for shortcuts. You don't need a thousand-dollar course to learn Python. YouTube and Google are filled with free, quality tutorials. But here's the catch — don't just watch. Code. Break things. Fix them. That's how you actually learn.

2. Math: No Need to Be a Genius, Just Don't Skip It

Yes, I know. There are libraries that do the math for you. But if you don't know what a derivative is or can't grasp the concept of matrix multiplication, you'll feel lost in no time.

The essentials? High school calculus, linear algebra, and basic probability. You don't need to be Einstein. Resources like Khan Academy and Brilliant.org are still goldmines in 2025. Take your time and don't overthink it. Stuck on something? Google is your friend.

3. ML Tools: Jupyter, Pandas, Numpy, and Matplotlib

Now that you've got Python down, start playing with the core ML tools:

  • Numpy for numerical computing (think arrays and matrices).
  • Pandas for managing and cleaning data.
  • Matplotlib for visualizing data in ways that make sense.

Get comfortable with these, preferably in Jupyter Notebooks, which lets you see your code and results side by side. Stick to beginner tutorials to start. You'll learn the deeper stuff naturally as you tackle projects.

4. Learn Machine Learning (Finally!)

Now it's time to dive into the meat of ML. Start with Andrew Ng's Machine Learning Specialization — it's a timeless classic for a reason. Then move to frameworks like scikit-learn and TensorFlow.

I have a soft spot for PyTorch (because, let's be honest, it's awesome). Once you understand one framework, switching to another is a breeze. Bonus: Hugging Face is still the reigning champ in NLP (natural language processing), so dive into their tutorials to stand out in the crowd.

5. Projects: Where the Magic Happens

Courses are great, but projects are where you'll really learn. Start small — take on a dataset in Kaggle, play around, and build something basic.

When you're ready for a challenge, try replicating a research paper. Yep, it's hard. But trust me, the experience (and the bragging rights) are worth it. Tools like PapersWithCode can guide you to cutting-edge papers with code implementations.

6. Repeat, Improve, and Stand Out

Repetition is the secret sauce. Keep practicing, building, and refining your skills. You don't need to be perfect — you just need to keep showing up. Share your projects on GitHub or write about them on Medium. Let your work speak for itself.

There's no shortcut to success here. It's about showing up, doing the work, and staying curious. If you're ready to start, don't wait. Grab a tutorial, open your laptop, and dive in.

And hey, if this guide helped, let me know. Or better yet, prove me right by sticking with it and becoming the ML engineer you've always wanted to be. The future is waiting — are you?

Before you leave!

Oh, and since you're here, subscribe to my newsletter "The Learning Curve" It's free, no spam, no clickbait. Just the kind of content I'd want to read myself.

If you're interested in working together or need tailored help, you can check out my services.

And don't forget to connect with me on LinkedIn to stay updated and share your journey. Let's keep learning and growing together!

Finally, after many years developing ML projects myself, I decided to create my own notion template for ML projects tracking. You can download it here: