https://apply.careers.microsoft.com/careers?start=0&pid=1970...
Themselves.
This seems cognitively dissonant with the AI upheaval resulting in the industry needing fewer developers. Maybe they want cheaper developers?
There is of course the possibility that AI gets good enough that even senior engineers won’t be needed, but at this point it seems unlikely. My reasoning is that even expert humans make mistakes, which is why we need other humans to collaborate and check each others’ work (which, if you think about it, is a source of a lot of the processes and bureaucracy at companies; trivial example: code reviews.)
So even if AI gets to the level of human experts, this dynamic will not change... unless we hit ASI, where the AI far exceeds human capabilities. At which point we’ve hit the singularity and all bets are off.
Short of that, however, human experts will be needed, which is why programs like this are needed: to future proof against the short term economic pressures to minimize junior workers which will impact the long term pipeline that produces senior experts.
This is really what we're doing? This makes sense? Am I taking crazy pills?
If we freeze AI models at their current stage of development, then yes. If not, given the rate at which models are improving (compare Claude today to Claude 1 year ago), in 3 to 5 years software development could be fully automated.
Not that the new LLM-as-junior trend doesn't make it worse.
There is even some evidence that suggests senior roles are more in demand (and getting correspondingly higher pay too) which gels with the common observation that senior workers are more effective at managing the AI which is doing the work of (and hence displacing) junior workers.
Asking a chatbot or Google AI overviews should surface relevant studies.
Thanks! I've heard numerous examples of this. E.g. paint rollers, and later paint sprayers, made painting so much more efficient and cheaper that people wanted their houses and apartments painted more often, ultimately increasing house painter employment. But I didn't realize the phenomenon had a name.
Like the mass layoffs the last couple of years seemed to be primarily driven by the goofy hiring spree every company went on during the pandemic and the AI reasoning was only partly true and mostly a coverup for their mistakes in hiring in previous years.
On the other hand, the amount of garbage level devs that were being churned out of bootcamps and such in the years leading up to COVID was also due for some kind of correction and AI may be the catalyst for that correction.
I’ve been around devs making an easy 6 figures that did nothing but copy/paste code from the internet or other parts of the codebase and spew jank into the repo because management needs the work done yesterday.
It’s a problem of missing training and missing mentorship coupled with weak leaders who would rather throw their people to the wolves armed with crayons and coloring books until they just figure it out.
Before AI was a thing once a large organization hired too many shitty developers you could occasionally clean house by laying some off and ordering the rest to own more responsibilities. Once AI starts replacing the weakest among us the scapegoats are gone. Then what? Eventually the finger pointers can only point at themselves once there is nobody else to point at.
This. I imagine they are showcasing a template to hire a new breed of cheap highly replaceable/fireable devs.
The demand for software is huge, the number of manual processes that can be automated in any organisation, small or large, is humongous. The Jevons paradox will play at full, as software gets cheaper we will consume even more of it, and I think there will paradoxically be more software developer jobs.
If you need to be told what to do, it's a short step to your AI replacement being told what to do; money will ensure it. If your job is to discover and capture new things in an exploding possibility space, that's a career.
Schools should teach hacking, but it doesn't seem that's what this program is doing.
Basically still just a prompt jockey but knows the difference between outputs that are good and bad.
... in Github Actions? What a great way to discourage them from entering the industry.
Quite simply, I'm more mentally drained at the end of a day working with AI than I am a normal day of coding. There is still a lot of energy and thought that needs to go into what needs to be written.
What value would an architect provide that a SOTA LLM can't?
2024 me would be shocked at current me saying this.
And how you would know to do that, if you're not writing code?
It's my impression that the best way to be able to read code and distinguish good from bad is to write code. Get burned a few times and you know why certain patterns are a bad idea. You don't internalize that equally well from a powerpoint slide.
Compare this to math. Every successful mathematician has gone through the motions of proving certain basic theorems in math. Like Euclid's proof that there are infinitely many prime numbers. And then they went through related exercises. This was all learned with sweat. The statement above is akin to saying there is no point in doing any proofs by hand anymore, just read one and you will have sufficient understanding of mathematics and become a good mathematician. I don't think that's true. (And I also believe that many sw eng people would be better at their job had they groked the proof of the halting problem.)
Anecdotally, I find the flow-vs-drained state is more about who uses the LLM and whether I'm in a position to know the difference between artifact and intent.
1. [Good] I know what I wanted, I have a concept of what "correct" looks like. I ask the LLM to do the thing, and I check if it's the thing I intended. Even if it's annoyingly wrong, I can fix it up.
2. [Bad] Someone else had a concept once. They put it through an LLM to generate something that reaches me, a ticket, PR, or review comment. However now I have to constantly guess which parts of the thing are "real" and which are nonsense the human never actually intended or even noticed.
The latter is worsened by how reading means inferring/simulate the mind of the writer, but LLM output is not from a mind we typically simulate. Subtle persistent wrongness is exhausting.
The reason why AI induces more demand is more interesting than simply observing a correlation. At the root of the paradox is the dissatisfaction with AI as it raises the bar for human work. In that sense, AI functions like training wheels more than actually doing anything useful on its own. More people can ride the bike well as a result.
This is the "law of diminishing marginal utility". In other words, LLMs are an NLP-powered google search 2.0. That sums up pretty well why AI hit a plateau a couple of years ago. There's only so much training data and humans become more efficient and creative once exposed to the exact information they were always looking for, but could never find in the past.
But is that workflow enough in a competitive world anyway, or will there be an edge for people who do more than "outline the end-user requirements" like it's the waterfall 70s?
Junior roles are always affected when industries have high unemployment rates.
I don’t think AI has eliminated the need for junior engineers, nor will it, it’s just that companies have their pick of available experienced hires.
I would think that junior engineers would make more sense in an era where AI can fix and catch rookie mistakes.
Programs are swapping capstone projects and courses for comprehensive oral examinations and that's partly from input from industry that there's been a skill drop. But that feels like a panic stopgap and we really are going to struggle with this for a while.
These economics would choke off the pipeline that turns junior engineers into senior engineers, which would still presumably needed to supervise the AI.
I don't see the irrationality here?
And yes, bottlenecks at MSFT (or any large corporation) are unrelated to kLOC/hour, which I would argue are primarily because of human factors... which also AI threatens to obviate: https://news.ycombinator.com/item?id=50121996
You're replacing juniors with AI to save money (because again, I doubt there are velocity gains to be had at MSFT), and then you're spending money to keep junior SWEs on payroll and train them in a parallel program.
There's no way this is cheaper than just letting some junior SWEs actually do the coding on the actual projects you're building, right? And gain experience that way?
> given the rate at which models are improving
Right. https://xkcd.com/605/ > in 3 to 5 years software development could be fully automated.
Yes, and as we all know, AI has replaced software engineers "in 6 months" several times by now.Let's see, my grandparents were about 160cm when they were 35. My parents were about 170cm when they were 35 and I am about 180cm around 35. You are saying I can expect my grandchildren to be around 200cm at that age and their grandchildren 220cm?
Of course it is possible also that Claude will marry a chinese model (since it's asian odds are it is also smarter) bringing some diversity into the "gene" pool. Or better yet, a Russian supermodel.