Is a CS Degree Still Worth It?
The junior developer crisis and the value of CS fundamentals.
A reader recently asked me: in the age of AI, is it still worth getting a computer science degree?
It’s a great question, and yet, one that would have seemed almost absurd to ask just five years ago. For nearly all of the 2010s, the answer was simple: yes, obviously. “Learn to code” became a cliché for a reason - thousands upon thousands of students saw computer science as a golden ticket1.
We can literally see the result in the data: universities are graduating twice as many computer science majors as they did a decade ago - from around 50,000 in 2013 to over 100,000 in 2022. Which is impressive, considering that a significant percentage of software engineers are concerned that AI may soon automate us all out of jobs, starting with recent graduates.
Right now, there’s a significant mismatch in supply and demand: students are flooding into CS programs based on advice from 2015-2020, precisely when companies are eliminating the junior roles those graduates were supposed to fill. The advice that made sense in 2019 - “learn to code for job security” - has become dangerously outdated by 2025.
Even titans of industry like Jensen Huang are bearish on coding:
At the recent World Government Summit in Dubai, Nvidia CEO Jensen Huang made a counterintuitive break with what he thinks is a long tradition of tech CEOs advising youngsters to learn how to code. Huang argued that, even at this early stage of the artificial intelligence (AI) revolution, programming is no longer a vital skill.
What then, is a young programmer to do? It feels like there’s no simple answer anymore - every solution creates new complications.
The Junior Developer Crisis
Let’s start with some uncomfortable data. According to the most recent numbers from the Federal Reserve Bank of New York, CS graduate unemployment is between 6.1% and 7.5%2, a record high, as young programmers describe a brutal job market. Even graduates from elite programs like MIT, Stanford, and Berkeley have seen employment rates drop from over 80% in the early 2020s to around 70% by 2024.
For what it’s worth, I don’t heavily buy into the idea that AI is entirely to blame for the white collar layoffs we’ve seen in recent years. I think tech companies overhired during the pandemic and have been shedding jobs, while leaning more into efficiency as interest rates have remained high. However, signs are increasingly pointing to AI having an impact on the job market for early-career professionals - i.e., juniors.
A recent Stanford study, which tracked millions of workers through mid-2025, found that young workers aged 22-25 in highly AI-exposed jobs, such as software development, experienced a 13% decline in employment since the launch of ChatGPT. What’s striking is the specificity: older workers in the same roles saw steady or rising employment. Within the same company, the most-exposed jobs experienced a 13% relative decline compared to the least-exposed jobs.
In the wake of the pandemic, people often talk about a K-shaped economic recovery - an economic rebound where different sectors and income groups recover at different rates. For example, high-income households and tech-oriented industries might thrive, while low-income workers and sectors like hospitality or brick-and-mortar retail struggle to recover. But when it comes to AI, we’re arguably looking at K-shaped automation - AI specifically changing what companies need from their entry-level workforce.
In the study, the employment effect shows up much more strongly in “automative” uses of AI (where AI fully replaces a task) versus “augmentative” uses (where AI assists human work). In other words, for the types of work where junior developers historically cut their teeth - fixing bugs or implementing small features - AI can now do these tasks without human involvement.
What a CS Degree Actually Gives You
But here’s the paradox of the current moment: junior developer jobs are disappearing precisely when the underlying knowledge from a CS degree is becoming more valuable.
I still find that the latest and greatest AI agents are still unreliable at understanding technical tradeoffs and maintaining system architectures over the long term - skills that are core to being a senior software engineer.
I’ve written about this before:
When I look at senior software developers, their job isn’t necessarily about typing keystrokes. Those have to happen for the final product to get delivered, but ultimately, the responsibility of senior developers is to:
Ensure projects are scoped correctly
Make sound architectural decisions that don’t drown the company in technical debt
Take on board business objectives and incorporate them into product planning
Mentor junior developers and establish good engineering culture
I like to use the analogy of a woodworker or carpenter. For a junior carpenter (i.e. an “apprentice”), the job might actually just be about the output - taking designs or ideas and making them into finished pieces. But for someone more senior (a “journeyman” or “craftsman”), their job is often about understanding what the client wants, understanding the realities of what’s possible with the materials, and designing things to fit the brief.
Let me share some anecdata from my own career. After earning my CS degree, I spent years pursuing a variety of endeavors, including writing books, building startups, and working as a digital nomad. I never formally climbed the junior-to-senior developer ladder. From the 10,000 foot view, it might even look as though I’d wasted time on the degree.
But those unconventional paths, those career pivots, were only possible because of the CS foundation.
Building a startup meant making architectural decisions that would either scale or collapse under load. Writing about AI meant understanding what’s actually novel versus rebranded hype. When I needed to learn a new technology or framework quickly, I could - not because I’d memorized syntax, but because I understood the underlying principles of how systems work.
I’ve long held the opinion that while not everyone should become a programmer, everyone should at least take a programming class. Because at the end of the day, the most valuable parts of the CS degree give you a mental framework for decomposing complex problems and understanding tradeoffs. And that framework compounds over time - they focus on understanding why systems work the way they do, not just how to make them work.
And increasingly, as AI handles more of the “how,” the “why” is what companies are willing to pay for. But even if you can craft an unconventional career without a CS degree, does that mean that getting one isn’t worth it?






