We’ve long heard that artificial intelligence and machine learning are the future of tech. Usually, this is asserted in the same conversation as warnings about a lack of skilled. and/or suitably educated workers that are needed to who can develop and leverage these technologies. I spoke to a number of devs in the space to get a feel for their career trajectory, the challenges, and opportunities and suggested learning resources.
Machine Learning Means Self-Learning
The biggest insight I got from those in Machine Learning is that you have to be willing to crack open to books (or at least invest time and effort in online courses) to build on the foundation knowledge you most likely have already as a developer. Evan Tann, Thankful CTO, and co-founder asserts:
“The Machine Learning skills shortage isn’t a symptom of not enough talent, but rather, that talent not having the right focus”. Many developers are extremely talented but in order to be successful at ML, it’s critical to combine a development background with a strong understanding of statistics. Further, understanding a broad set of machine learning models increases your hireability as you are well-positioned to be able to determine the best model for any given scenario.”
Working with Data is Different to Working with Code
Chad Mills, former Head of Analytics for the News Feed Experience team at Facebook notes:
“Working with data is very different than writing code. When you write code, you can architect a solution and accurately predict the amount of work involved and how long it will take. You can expect it to work well. You might run into some unexpected complications along the way, but these are almost always solvable with minor modifications.
When working with data, the process is very different. This starts at the very beginning: the analysis of data often leads to insights that drive a particular approach to a problem. Looking at data reveals patterns, and these can be turned into features that are input into a model. Then you run an experiment and see if it works. You look at errors and find new ideas for features to try. You try hyperparameter searches to find the best settings for the model. Knowing when you’re done is tricky—more like art than engineering.
Most of the technical skills needed are similar. People building intelligent systems need to be able to write code, architect systems, and write tests. There are some additional skills required, particularly related to statistics and linear algebra. But the biggest difference is the mindset. You’re not building a clearly-articulated solution. You’re embarking on a path to discover what will work, or even if the problem is solvable. You must be resilient to failure and follow the data wherever it leads.”
A journey of AI/Machine Learning
Renjit Philip, CEO, co-founder of Explain Care Inc. shared his story:
“It was late 2016 when I was reading yet another article on McKinsey quarterly about the future of work and how automation was going to destroy millions of jobs. I desperately needed the time to step away from my day to day work and immerse myself in the new technologies that were seemingly threatening our jobs. I got the time to start this learning journey when I got the chance to quit everything and go to the US in 2017.
My learning journey was driven by fear of being rendered irrelevant in a few years by the advances in technology. I had clocked around two decades in financial services, payments, and insurance. I realized that I needed to learn more about the area of science, mathematics, and management to stay relevant in my future career.
So now, it was clear that I needed to pick up skills that would help me co-exist with these new technologies. Also, I would need to be comfortable to work in an environment where people, intelligent software, and hardware (robots) worked together. The future of leadership is going to be very interesting!
I knew coding, but my last program was compiled back in 2002. Those were the days when green screens were still popular, and client-server computing was the rage! We were just recovering from the dotcom bust. In short, my “skills” were non-existent and antiquated, and Python seemed to be the easiest way to get to grips with a modern programming language. After much research, I picked up a working knowledge of Scikit-learn, Pandas, Numpy libraries. These are critical if you want to learn how to manipulate vectors/ arrays for any foray into Machine learning.”
Evan also asserts:
“Significant experience with Python is another pre-requisite I always look for when hiring ML developers, as it has strong support for modern machine learning tools, such as PyTorch and TensorFlow.”
Tried and tested Machine Learning Resources
Some of the resources Renjit swears by:
- Machine Learning and AI Foundations: Recommendations
- Machine Learning and AI Foundations: Value Estimations
- Coursera: Machine Learning – Of this course Renjit notes:
” It is a tough course, make no mistake. You will need to brush up your vector math and essential calculus from Engineering 1st year/ Math graduate school courses. Also, you will need to learn to program in Matlab and Octave in this process. In short, it was comprehensive and grueling, and I thoroughly enjoyed it! The time that I took to complete the course: 11 weeks.”
Learn by doing
What if you threw yourself headfirst into a career in AI/Machine Learning by founding your own startup? Renjit shared:
” I got a chance to set up a startup, Explain.care, to delve deep into a wing of AI called natural language understanding and to develop conversational interfaces such as chatbots and voice skills. We aim to help customers save money on health insurance by “speaking” to them in a language that they are comfortable in. The grounding that I got earlier certainly helped in this journey. I had understood how machines learn our language and how they can speak it. I had also finally lost my fear of these new technologies and understood how to utilize them to transform old business models in targeted ways.”
Other resources
- The Second Machine Age” by Erik Brynjolfsson and Andrew McAfee. (Renjit)
- Building Intelligent Systems: A Guide to Machine Learning Engineering by Geoff Hulten. (Chad)
- Udemy: Python for Data Science and Machine Learning Bootcamp
- Joseph Misiti, Co-Founder of Math and Pencil have put together a list of Machine Learning resources on Github