* Job market sucks for junior devs due to the end of ZIRP and normalization of layoffs
* Dearth of good developer role models due to the "public sphere" getting worse (collapse of developer twitter community, rise of vacuous influencers). I'm a little skeptical about this one as I didn't really benefit much from these sources myself when getting into the industry. And there's always hacker news, which is doing fine!
* Loss of good mentorship opportunities due to rise of remote work
* AI tools are good for seniors who already know how to do things, but terrible for junior devs trying to learn. This is the forklifts metaphor. (And AI is probably not helping the junior dev job market either, although that was already bad for other reasons as mentioned above.)
I am truly worried about where the next generation of senior devs is going to come from. Some juniors, maybe 10% of them, will be fine no matter what: brilliant engineers who are disciplined enough to teach themselves the skills they need and can also adapt well to AI dev tools. I don't worry about them. But I worry about what happens to the median junior engineer, and consequently what our profession will look like in 10-20 years.
Most of them were pretty middling developers when I worked with them... So I guess that tracks.
I can and I have
> Mentor your junior colleagues, give them the space to learn and make mistakes.
I’d love to. My company stopped hiring juniors during the mini saas recession and then cursor launched. There are no juniors to mentor anymore.
Juniors nowadays are expected to perform senior work. It’s a recipe for disaster.
Remember when mailing lists
never mind
- Junior jobs become scarce. You either jump to senior very fast, or you are dumped out of the industry. The juniors that make it are those special unicorns that somehow learn everything about the job, including how to do it with AI, within a couple of years. There's a little bit of guidance, but mostly it's the kids who have good taste in blogs/books/videos that end up learning it all on their own. Also the kids who have the motivation to keep studying without a syllabus.
- Instead of junior devs, we just have domain experts who are crap at coding. Quants who can write a model in pandas, but when they venture offpiste, they get AI to build them a monstrosity. Working monstrosity, but if you could code, you would cry. This ends up happening in every industry: there's very few coders left anywhere outside of FAANG, everyone just does the modern equivalent of thinking Excel has solved their problem. Balls of spaghetti the size of which the world has never seen are written, hidden in various domains.
- Universities wisen up about how to teach people to use AI. Once upon a time, they used to teach you how to punch holes. Assembler was taught. Systems languages like c++. Java, JS, Lua. Kids who came out of these universities were somewhat ok for industry. Why not AI as well? There are going to be lessons learned roughly this decade that will be useful to teach the kids. What to tell the AI, what not to. How to leverage it to make the most progress.
Universities will (still) teach only part of the necessary tradecraft, but that fraction will include some basics for how LLMs can churn out dodgy prototypes. Junior/introductory roles will feature the crap-work of taking excel-esque monstrosities and making them marginally less-terrible.
But does this count as misleading title? I really expected an article about literal forklifts. Among all the AI craze these days, I was hoping for some real-world hands-on skill insights. The kind of thing hackers often can describe really well.
From that perspective, I got disppointed.
TL;DR: The article is about junior developers having a hard time in the current conditions shaped by remote work, AI and an abandoned Twitter.
> Other AI tools are fair game ("explain this code", "generate docs", "generate tests", etc.)
I disagree. Tests are production code.
For those who wouldn't know it: https://www.youtube.com/watch?v=TJYOkZz6Dck
elzbardico•1h ago
Books seem to still work very well. I am not even sure all this social media learning was that much positive. A lot of it was based on trend chasing, shiny object syndrome and stuff like that in a completely a-historical context. It was always funny when some star social media coder re-discovered something that probably people did in mainframes before I was born and that you can find in a lot of books.
libraryofbabel•1h ago
1) Keep up with the trends by reading hacker news. Be on the lookout for decent blog posts but ignore social media and most of youtube.
2) BUT your best bet for actually leveling up is reading these ten books I'll give you (Designing Data-Intensive Applications, etc. etc.), plus doing side projects to get hands-on practice.
sokoloff•1h ago
dingnuts•1h ago
sokoloff•1h ago
elzbardico•1h ago
You don't even have the dopamine hit of counting your content upvotes.
thegrim33•1h ago
dingnuts•1h ago
frankly terrible advice, especially now that this website is just AI News. If you want to be a better programmer, there are better places, but I'm not going to advertise them here because I do not want to infect them with the HN commentariat which is much too focused on trends.
Engineering fundamentals have not changed in decades. Screw trends, especially at the beginning.
Books written before 2022 are a good bet. Maybe the value of traditional education has also returned.
libraryofbabel•1h ago
bcrosby95•20m ago
I'm sure I've missed some things, I've taken more than one hiatus.
Nuance usually cannot be well conveyed in a blog post. Someone is always selling something. When something exists long enough the bullshit behind it is eventually revealed. Reality is messy and there's always bullshit hiding somewhere.
It doesn't mean HN is useless. I use it as a bellweather to see what other people are putting their attention on. I don't pay attention to AI other than what's on here. I mostly follow my interests, which outside my dayjob, is currently concurrency. But I don't write about it.
Ultimately the place to become a better programmer is behind a keyboard learning what works, what doesn't, where it does, where it doesn't, and why or why not. It's difficult to convey all the nuance in every decision which means most people never actually do it. Any post is dripping with assumptions. In my mind nearly any decision could be justified and would be surprised to find a place that actually attempts to teach these.
Rather than consuming media you're probably better off putting it out there and letting people tell you all the ways you're "wrong" (because they love to do that). Somewhat paradoxically I don't really follow my own advice, but that's humans for you.
andyjohnson0•1h ago
On the whole, junior dev-age people don't read books much. They read short-form stuff on screens.
Brian_K_White•48m ago
"new devs don't read" is a non-sequitur imo.
If they want the info, they will, or not. The info is there. Take it, don't take it, what do we care either way?
Dilettante_•1h ago
Well don't leave me hanging boss!
libraryofbabel•37m ago
But here are some titles:
* Kleppmann, Designing Data-Intensive Applications
* Nand2Tetris. Computers from first principles, often fills in a lot of gaps. Possibly preceded by Code: The Hidden Language of Computer Hardware and Software if they need even more grounding.
* SICP if I think they'd be ready for it
* Crafting Interpreters
* If they're working with Python I'd give them Fluent Python by Luciano Ramalho. For whatever other language(s) pick a book that allows them to go from intermediate to advanced in that language and really understand it inside out.
* Ousterhout, A Philosophy of Software Design
* Data and Reality
* The Staff Engineer’s Path by Tanya Reilly to demystify the upper IC track. Or The Manager's Path by Camille Fournier.