Hey guys. Hope everyone is doing well. Also using AI/ML as an umbrella term throughout - feel free to correct if needed.
Into:
Senior Web Developer. Initially started from Software Development. Developed passion for Web Development and made the move. Worked my way up to Senior position. 70% backend, 30% frontend. Currently 80-90% IC, rest managerial responsibilities. 9.5 years overall. Changed companies over time. Been in various industries.
Problem:
Going back and forth about moving into AI/ML. Motivation - high interest and demand. Fear - leaving web development skills behind.
My Current Solution:
Ask reputable sources about AI/ML day to days and job responsibilities. Lots of it seems to be marketing and all that glitters is not gold.
If all checks out and my passion is rooted in evidence then I would like to take few Stanford machine learning courses online. Once fundamentals are solid would like to go for masters degree in applied machine intelligence or similar. Start looking for jobs.
Questions:
These are all the questions I could think of. Apologize for the length, but thought it would be helpful to give context. Please feel free to include anything else you deem helpful. Much appreciated and Happy holidays.
I am currently a Machine Learning Engineer. Will add my 2 cents here.
would you please describe a day to day/job responsibilities for an AI/ML engineer?
The MLE role typically involves solving problems and automating workflows using machine learning; it is a good mix of SWE and Data. Depending on the company, you might be doing more of one or the other. Rather than a day-by-day. I'll give you the overview of an average project workflow:
If you are more senior, then you would come up with opportunities yourself too and even handle much larger scale and longer term projects that involve a ton of shepherding. This doesn't just involve technical machine learning knowhow; but also talking to a bunch of people; looking into code bases you aren't necessarily familiar with.
I personally read a lot of technical blogs from large companies and read (and sometimes) research papers for my work; but this isn't always going to be the case
Granted everything checks out - do you think going for Masters makes sense? Given that finances and time is not the problem.
Maybe? No right answer here (I have a Masters in Data Science). Grad school helps you to learn to learn. This is the most important skill I picked up in grad school that is very useful in the MLE world (and professionally in general). Aside from this, my masters certainly helped me understand the technicalities and theoretical aspects of machine learning. I have no regrets and I have a solid understanding because of it. But it's not an absolute necessity. I too started with the Stanford Coursera Course by Andrew Ng that I believe you were referencing - It's solid. But by no means alone can get you the job in the field.
What is best regardless of whether you go for grad school is do some end-to-end projects. Get data (from maybe Kaggle) and solve problems keeping in mind the steps I outlined above.
Would you say I have to leave a large portion of web development skills behind when making the move? What are some of the transferables?
At the end of the day, we all solve problems whether you are a SWE or MLE or Sales. Your critical thinking skills about a problem and domain knowledge you have in the industry you're working in are probably the best transferables. Problem Solving skills become useful when you are communicating ideas to stakeholders; domain knowledge is useful when you are engineering features for your model - you know the right questions to ask.
Would I have to start as an entry engineer? Do you think Masters helps here?
I doubt you'll need to start at entry level; MLEs code too. I have seen a common path is for people to work as a SWE for a few years and then transition into a senior MLE role. I have also seen the same from Data Analysts. A masters isn't an absolute necessary here. But it can be helpful to maybe gain technical insight about the models themselves; understand the bigger picture with them instead a pure application standpoint. It also helps you you want to acquire the skill of "learning to learn".
Hope this helps you and everyone else out there thinking about transitioning into the field. Good luck :)
Adding my POV here since I started in AI/ML and gradually moved to adjacent spaces such as data engineering, architecture and infrastructure over the years.
Like Rahul mentioned, a very small portion of it is directly related to working on the model itself. It is even more the case now, as I'd say the model development part is largely commoditized, as any out of the box model from a library, framework or AutoML capability is pretty good even with default configs.
Most of the work in ML Engineering boils down to:
All things considered, I personally still enjoy this domain, but just be cognizant of what problems you're expected to solve going in, especially when we're in the middle of the GenAI hype train.
Motivation - high interest and demand.
If this is your primary motivation, I wouldn't go into AI/ML. This concerns me as you mentioned that you developed a passion for web development but didn't mention the same for AI/ML. Passion should be fairly separated from what the day-to-day looks like: It should be rooted in what the field can fundamentally do and how it feels. Web development is an incredibly deep field. If you like it and are good at it, I'm sure you can reach even greater frontiers specializing even more in it 💪
For more of my thoughts on making this decision alongside a lot of good context about the field in general (including thoughts on day-to-day), I highly recommend going through this other discussion: "Is it worth transitioning to become a Machine Learning Engineer?"
Granted everything checks out - do you think going for Masters makes sense? Given that finances and time is not the problem.
I'm pretty skeptical of the value of a Computer Science Master's - It's a ton of effort, time, and money for an often dubious amount of return. Of course, there are tactical reasons like immigration, but aside from those, the success scenarios are few and far between from my experience: "Is it worth getting a Master's degree in CS?"
Would you say I have to leave a large portion of web development skills behind when making the move? What are some of the transferables?
It depends on how you have developed as a software engineer, but in general, if you have gone deep in your current field, most of your skill is transferrable like:
Something to think about is how many of the skills do you have from this thread: "What are software engineering fundamentals?"
would you please describe a day to day/job responsibilities for an AI/ML engineer?
This depends very much on the company, but a data point I'll share from the startup I worked at in 2014/15 (engineer focused on Recommendation systems) was mostly data engineering work. Turns out that a lot of ML is actually just looking at the data and trying to find insights.
I'm sure things have changed since then, but I'd recommend you talk to peers in your current company, or at the desired company (or in the Taro Premium network!) to understand that you'd actually enjoy the day-to-day.
A lot of the skills between web dev and ML will carry-over. One way to look at is that, given you have 9 YoE and some management responsibility, I'd imagine a lot of your job is not related to coding at all. Those skills (project management, decomposing problems, etc) should carry over completely.