Chip Huyen writes about machine learning systems, real-time ML, RLHF, LLM agents, and ML engineering careers.
Commenters recommend her articles and book on ML systems design, and one calls her RLHF piece a great article.
Thanks! I saw your earlier question related to working with AI at FAANG, from the context of being 30ish, and self-taught. I was around 27 when I started learning software engineering and AI.
I made a free e-book here (https://emilwallner.gumroad.com/l/no-ml-degree), and I believe most of the key points are still valid, however, when I learned software engineering and ML, ML was a rather small field and tools like chatGPT and claude didn’t exist.
Imo, asking about a curriculum is the wrong framing, for me, it was more about how to find resources to focus full-time and being in an environment that increases my motivation.
I started learning software engineering at home taking courses, but I procrastinated too much to be effective, maybe I did around 10 hours of effective learning per week. For me, studying C at 42 (https://www.42network.org/42-schools/), a free peer-to-peer school was crucial, and I recommend something similar. It enabled me to focus 70-90 hours a week, and after 6 months I was good enough to get competitive startup job offers.
During my time, the FastAI course (https://www.fast.ai/) was the best practical AI course. I'd probably spend a week looking for ambitious projects made by recent autodidacts, and ask them which course they think is best now. And spend max 1-2 months taking the course.
As for picking projects and building a portfolio, the advice in my e-book is still valid. An ambitious but realistic timeframe for landing a FAANG job is 3-5 years.…
Here’s a fun quote from his book, via Chip Huyen’s blog (https://huyenchip.com/2019/03/11/silicon-valley-misogyny.html)
> “Most women in the Bay Area are soft and weak, cosseted and naive despite their claims of worldliness, and generally full of shit. They have their self-regarding entitlement feminism, and ceaselessly vaunt their independence, but the reality is, come the epidemic plague or foreign invasion, they’d become precisely the sort of useless baggage you’d trade for a box of shotgun shells or a jerry can of diesel.”
I’m also not sure if his stance on privacy will fit in well at Apple:
> “Most people don’t care about privacy. Media elites care about it, underemployed Eurocrats care about it. And the entire privacy-industrial complex — there’s an entire set of very loud voices who are constantly beating the drum and building media careers around this.”
A complementary resource is Chip Huyen’s interview book, https://huyenchip.com/ml-interviews-book/
I find her book to be more practical and humble, though perhaps less feature-complete than the book from this post.
IMO Kashani and Ivry’s writing feels a little uppity and needlessly offputting — for example, logistic regression is lumped under Kindergarten in the table of contents. Sure it’s fundamental, but implying it’s not useful anymore in our age of deep learning (listed under “Bachelor’s,” of course) is a little myopic/insulting, no? Students who feel pandered to by know-it-alls probably learn worse than students whose skills are being collaboratively built up by enthusiastic mentors.
This feeling was particularly loud from the foreward, ToC, and intro; maybe it gets better after…?
There is also the much larger confusion arising of whether it's an ML compiler in the sense of being a specialized compiler for ML code (compiles a description of a network to efficient ML-specific low-level IR to enable further optimization and code generation), or whether it's an ML compiler, a compiler (or part of it) that uses ML.
The first meaning is extremly common, the top 2 results for "ML Compiler" on google returns[1][2], both using it in the first sense. It's not that ML or ML-like techniques in compiler writing is new but the first sense is definitely at least as popular an interpretation.
[1] https://huyenchip.com/2021/09/07/a-friendly-introduction-to-machine-learning-compilers-and-optimizers.html
[2] https://petewarden.com/2021/12/24/why-are-ml-compilers-so-hard/
I was a MLE Tech Lead at Snap and laid some of the foundations of the generative AI infra at Snap. I would highly recommend MLE route as a very rewarding career path.
This book is a very good introduction to designing Machine Learning Systems for production: https://www.amazon.com/Designing-Machine-Learning-Systems-Production-Ready/dp/1098107969
This blog by the same author is highly recommended as an intro into building production grade AI and ML systems: https://huyenchip.com/2023/04/11/llm-engineering.html
To summarize answers to your questions:
(1) Yes it is wise to do this transition especially at an inflection point in the zeitgeist of the times as now
(2) Yes
(3) See above for resources on how to get started and reach mastery in the craft of ML Engineering.
Reasonable argument, I like it, however would add a bit of salt:
I've seen several times so far that people maintaining things are actually doing a much better job, while those who were granted honor of doing a new thing because hey they are "pros". And once they did the prototype, they are _considered_ even more "pros", because hey, they wrote it. The people who rethought and rewrote the thing later were real makers, but didn't get the appreciation of "pros".
The worst thing is that "pros" status keeps working for itself, even while delivering worse job. I wouldn't have a problem if the system could fix itself over time.
Kinda related: "Confession of a so-called AI expert
" https://huyenchip.com/2017/07/28/confession.html