How I plan to become a machine learning engineer
My machine learning study plan repo has 15k+ stars. This is why I decided to create it.
I was born and raised in a low-income family in Vietnam. My parents expected me to get a stable job, lead a simple life, and be happy and healthy for the rest of my life. After I graduated, I landed a good job as a mobile developer. It was a rather stable job that allowed me to live an uncomplicated life but I was not happy. I felt like something important was missing, but I couldn't quite put my finger on it. I decided to move on and switch my focus to machine learning for a new start.
Why couldn't I find a machine learning mentor nearby? I came across lots of postings and enthusiastic people in various communities and forums, but even then, I felt like most of the enthusiasts didn’t know what machine learning really is. Machine learning, deep learning, artificial intelligence… these buzzwords are thrown around everywhere in Vietnam. Many people want to give machine learning a try simply because they’ve heard about it. Having a hard time imagining that? Just imagine someone telling you they want to visit a place simply because they saw a random picture of that place on the Internet one day. Not only do most people not know anything about machine learning, most of them are unaware that they’re most likely under qualified for it.
The root problem is NIHILISM, Nihi (Latin) means “Nothing.” Nothing is responsible for anything. I witnessed and frequently read tons of nihilistic discussion. People wanted this or that but didn’t want to be self-responsible for any (possible) failure.
Are Vietnamese nihilistic? Well, in Vietnamese classic literature Kieu story of Nguyen Du, the most celebrated classic literature in Vietnam. Miss Kieu was not responsible for anything. It was her ill-fated life, a lamentation, and an exceptional literary Nihilism. The paradoxical result is that young Vietnamese are more and more dependent on public opinion for some worthless guidance. They live according to the opinion of the others. They are too lazy and easily accept their life.
Vietnamese should try to give up their entrenched nihilistic tendency, take responsibility in their hand and learn how to find a Vietnamese-specific way to develop Vietnam.
Why machine learning?
There is no question that machine learning is one of the most hyped up emerging technologies. As you can imagine, there are also quite a bit of people trolling about machine learning on the Internet. To reference Dan Ariely:
Machine learning is like teenage sex: everyone talks about it, nobody really knows how to do it, everyone thinks everyone else is doing it, so everyone claims they are doing it...
Just like every other passionate developers, who takes the ins and outs of studying and learning software development into their own hands, I, head of mobile development at a Vietnam-based company, decided to teach myself how to become a machine learning engineer. What I did was I created a free and open award-winning “Machine Learning for Software Engineers” study plan on GitHub for myself and other curious developers who want to join the learning journey.
Here’s my study plan:
While studying machine learning, I felt discouraged because all the books and courses I read and took told me I need knowledge in multivariate calculus, inferential statistics, and linear algebra as prerequisites. Without a computer science degree, I was not exposed to any of these courses. Since I was not finding what I was looking for, I created my study plan for going from a mobile developer to a machine learning engineer.
It brings people together over the world to learn more of what they want to learn in Machine learning. It is created around one simple idea: when we get together and do the things that matter to us, we are at our best. Moreover, that is what it does. It was developed in English and then translated into Chinese and Brazilian Portuguese. It also has 15k+ stars and 18 contributors, mostly based in the United States. I welcome contributions to this project. I taught Machine Learning at the beginner level as well as several seminars component associated with that project for my colleagues and my students.
Now, to learn machine learning well, we should focus on a particular application domain (e.g. education, micro-finance, human rights, health care, disease surveillance, etc.) Machine learning revolution: How should you prepare for it? Do you want to embrace new technologies? Do you want to build a product that can touch the lives of millions of users?
My future aspirations
USA as heck
In the next five years, I want to gain a deeper understanding of artificial intelligence. I want to enhance my expertise in machine learning and hone other relevant skills as well. My dream is to have hands-on experience in as many technical projects as I can just, so I can become well adept at the skill I have chosen to work with. I hope to work in the United States and join a company that specializes in machine learning. I want to work with a super talented team that is filled with top-notch A.I / machine learning / speech recognition scientists, business leader, and world-class investors in the Bay Area / Europe and Asia. I also want to shape the future of an early-stage well-funded startup, where my individual contribution will have a lasting impact on the company’s future.
A decade ago, such technologies would most likely have been developed in California’s Silicon Valley, but today, amazing apps and technologies are emerging from Vietnam’s startup sector, an industry driven by local techies trained overseas but returned home to prowl for opportunities. Bringing Silicon Valley to Vietnam or connecting the two is a lifetime dream and calling for me. It gives me the opportunity to challenge myself at the highest level. This is what I believe and, I’m willing to die for it, period. No matter how hard it is, or how hard it gets. I’m going to make it! I want to represent an idea. I want to represent possibilities.
Top-down learning path: Machine Learning for Software Engineers
This is my multi-month study plan for going from a mobile developer (self-taught, no CS degree) to a machine learning engineer.
My main goal is to find an approach to studying machine learning that is mainly hands-on, essentially taking most of the math out of the equation (at least in the beginning.) This approach is unconventional because it’s a top-down, results-first approach designed for software engineers.
It’s a long plan. It’s going to take me years. If you are familiar with a lot of this already, it will most likely take you a lot less time.
Please feel free to make contributions to my study plan!
- Twitter: @Nam Vu
- Top-Down Learning Path: Machine Learning for Software Engineers on Github: