I have just completed the Machine Learning Engineer NanoDegree proposed by Udacity. I guess this is a great occasion to give you my feedback on this. I hope this will help you decide if you wish to register.
Who is this course for ?
Udacity instructors have been clever enough to design a course that adapts to a great variety of students. This course fits for software engineers, data engineers, and data scientists. I particular, one course section focuses on software engineering skills, so that you have the minimum background to follow the whole course (that is mostly about coding I must say).
The course content is of great quality. Instructors explanations are very clear, and there is a mix of videos, text and Jupyter Notebooks, so that you have many ways to understand the many topics covered in the Nanodegree.
The best part about this Nanodegree is that it really focuses on using and mastering AWS SageMaker. This tool allows to do tons of things, but require some basic knowledge to be used properly. One whole course section is dedicated to learning how to use SageMaker, so if you are starting from scratch, this is a great first step in ! If you have already used SageMaker before, the course covers a wide range of functionalities, thus I am pretty sure you will find the topic interesting either way.
The SageMaker section also teaches how to create a Machine Learning pipeline, from the models coding to the HTML WebApp that will query your – in production – machine learning model, and this was by far the sexiest thing of the whole course 🙂 The first capstone project is also dedicated to check that you master all the steps of the pipeline. I must admit that for this purpose, AWS really shines. All the products used interact perfectly all together, and provide with a very fluent user experience, with a reliable online end product.
Brilliant course proposed by Udacity !
The other topics covered in the nanodegree are unfortunately not as interesting as the lesson focused on SageMaker. You will get a course section focused on Software engineering basics with Python. According to me, if you come from a software engineering background, you can directly skip this course section. Another course section focuses on working on a machine learning usecase where you will be proposed to use scikitlearn and SageMaker to work on a machine learning problem.
What to expect from this Nanodegree ?
This nanodegree really focuses on the engineering part of machine learning. It shines on teaching how to deploy machine learning models in production on AWS, do some beta-testing, versioning and building endpoints in order to query your models. This course brings real value, and from my past experiences, I can tell that not all the companies know today how to deploy machine learning in the cloud. This is why I think the nanodegree really deserves some attention.
You must also understand that this nanodegree is NOT about teaching machine learning. Don’t expect then to be taught about the technics of data wrangling, supervised learning, decision trees, deep learning, etc. The course will not get into the theory of technics. Yet, they will indirectly be covered through their implementation in Jupyter Notebooks with scikit-learn mostly. But to be honest, would you call yourself a machine learning expert, just because you are shown how to do PCA in Jupyter notebooks ?
And this gets me to my final conclusion. I think this nanodegree provides with enough knowledge to show yourself as a machine learning enthusiast, but not enough to be considered a machine learning engineer. Being a machine learning engineer – to my point of view – requires many more skills that are unfortunately not covered in this course. For instance, the course doesn’t cover how to rewrite, optimize and scale data scientists python models, which are also part of a machine learning engineer’s daily job.
Should you follow this nanodegree ?
Definitely YES. Through this course, I have learnt a lot, particularly about how to deploy machine learning models in production. I’m glad I could follow this course, because there is a lot here that I know I can reuse in my daily work with my datascience team.
I think this Nanodegree is a great start for a machine learning engineer career. This is a great start, but it is only a first step in the long journey to become a true machine learning engineer. Good thing is that you now have the basics to dive deeper and develop your machine learning expertise.