3 ms·
Presuming you want to work in the field and already have software development experience why not look at the confluence between ML and engineering? Things like
by hereonout2 3y ago
Presuming you want to work in the field and already have software development experience why not look at the confluence between ML and engineering?
Things like ML ops, application of DevOps, testing and ci/cd in the ml space, how to train across multiple gpus, how to actually host an LLM especially at scale and affordably.
In my experience there are hundreds of candidates coming from academia with strong academic backgrounds in ML. There are very few experienced engineers available to help them realise their ambitions!
- brainbag 3y agoDo you have any recommended resources on those topics? I'm coming from a strong ~30 year software engineering background which has been excellent, until now, as ML requires a completely different background. I'm trying to decide if I should start a new game+ with academic background, or get some expansion packs with what I already know and move into ML that way. I've found plenty of resources for the former and practically nothing for the latter.
- hereonout2 3y agoThings like this give a good overview of the problems being face in productionising ML: https://research.google/pubs/whats-your-ml-test-score-a-rubric-for-ml-production-systems/ https://research.google/pubs/whats-your-ml-test-score-a-rubr... Note they start to discuss things like unit testing, integration testing, processing pipelines, canary tests, rollbacks, etc. Sound familiar yet? The same author has also written this book: https://www.oreilly.com/library/view/reliable-machine-learning/9781098106218/ https://www.oreilly.com/library/view/reliable-machine-learni... I don't see a software engineer's skills becoming redundant in this field, especially if you have a good level of experience in cloud infra and tooling. It seems more valuable that ever to me (e.g. I have worked with ML Researchers who don't grasp HTTP let alone could set up a fleet of severs to run their model developed entirely in Jupyter Notebook). I have found it helpful to equate myself with the correct tools and terminology in order to speak the right language - there's specific tools lots of people use such as Weights & Biases for "Experiment Tracking", terms like "Model Repository" which is just what it sounds like. "Vector Databases" (Elastic Search had this feature for years), "Feature Stores" - feel familiar to big table type databases. Reading up on a typical use case like "RAG - Retrieval Augmented Generation" is a good idea - alongside starting to think about how you'd actually build and deploy one. Above all having a decent background in cloud infra, engineering and how to optimise systems and code for production deployment at scale is a very in demand at the moment. Being the person helping these teams of PHDs (many of whom have little industry experience) to productionise and deploy is where I am at right now - it feels like a fruitful place to be :)
- nkzd 3y agoHey, I am a classic backend software engineer looking to learn how to do things you mentioned. I believe if I learn these skills, I will know how to make "shovels" during gold rush :) Can you recommend any learning resources for things you mentioned? I don't have an option to learn these on my current job, so it will be hard to structure CV to prove my future employers I know them when I don't have real world experience.
- hereonout2 3y agoCheck out my reply to the sibling comment