All Posts

The Bimodal Reality of CS Careers

Here's something nobody told me when I started studying computer science: the career outcomes in this field are bimodal in a way that most people don't want to talk about honestly.

At the top, there are research scientists. The people pushing the actual frontier — publishing at NeurIPS, inventing new architectures, the kind of work where your name ends up on a paper that thousands of engineers downstream build products on. These people are rare, brilliant, and mostly came through a very specific pipeline: top undergrad → top PhD → top lab. The path is narrow and mostly legible in advance. If you're at Tsinghua or MIT doing research at 20, you probably know if this is your track.

Then there's everyone else. And "everyone else" is not a failure category — it's where the actual economy happens. But the work, if you're honest about it, is infrastructure. Systems engineering, data engineering, platform work, DevOps, ML ops, building and maintaining the plumbing that keeps things running. Important work. Well-paid work. But fundamentally different from what the degree promises when you sign up.

The middle is hollow

The thing that surprised me is how little middle ground there is. The dream that CS programmes sell — "you'll build intelligent systems that change the world" — maps onto a very small number of actual jobs. Most ML engineers at most companies are not designing novel architectures. They're fine-tuning existing models, debugging data pipelines, and writing YAML files for deployment configs. The intellectual content of the work is closer to plumbing than to science.

I'm not saying this to be cynical. I'm saying it because I wish someone had told me earlier so I could have planned differently.

If you're not going to be a research scientist — and statistically, you're not — then the question isn't "how do I get better at ML?" It's "how do I position myself where my technical skills create the most leverage?"

That's a fundamentally different question, and it leads to fundamentally different choices about how to spend your time in university.

The school matters. The GPA doesn't.

This is the part that feels uncomfortable to say out loud, but I believe it strongly: in both CS and finance, the name on your degree matters a lot and the number on your transcript matters very little.

The name matters because it opens doors. It gets your CV past the filter. It puts you in a network of people who are going to interesting places. It gives you access to recruiters and career fairs that don't exist at other schools. This isn't fair, but it's true, and pretending otherwise is bad strategy.

The GPA doesn't matter — past a threshold — because nobody doing the hiring actually cares whether you got a 7.5 or an 8.2 in Algorithms II. They care whether you can do the job. And the way you demonstrate that is not through grades. It's through what you've built and where you've worked.

This has a very specific implication for how to use your time at university:

Get into the best school you can. Then spend the minimum energy necessary to not fail, and pour everything else into internships, projects, and real-world experience.

I know this sounds like advice to be lazy. It's not. It's advice to redirect effort from the thing with diminishing returns (grades) to the thing with compounding returns (experience).

The internship compounding effect

Here's how the internship game actually works, from what I've seen and lived:

This isn't just my opinion. Talk to any recruiter at a bank, a tech company, or a consultancy, and ask them: "If you had to choose between a candidate with a 9.0 and no internships and a candidate with a 7.0 and three relevant internships, who would you pick?" The answer is unanimous.

Why this applies double in finance

Finance might be the most internship-dependent industry that exists. The standard path into investment banking is literally: get into a target school, do a spring week, convert it to a summer analyst offer, convert that to a full-time offer. The entire pipeline is internship-gated.

For data/tech roles in finance — which is what I'm targeting — the dynamic is similar but less formalised. Banks are increasingly hiring data engineers, quant analysts, and ML engineers. But they still value pedigree and practical experience over academic metrics. A candidate who's worked at an industrial company processing real data at scale (hello, Airbus) is more credible than one who's only ever worked with Kaggle datasets, regardless of what their transcript says.

What I'd tell my past self

If I could go back two years, here's what I'd do differently:

The uncomfortable summary

CS and finance are both fields where the entry ticket is a good school name, and the career is built on accumulated practical experience. The degree is a filter, not a training programme. The training happens at work.

If you're a student reading this: the single highest-ROI thing you can do right now is close your lecture notes, open LinkedIn, and start applying to internships. Your GPA will survive a semester of B's. Your career will thank you for the head start.

And if you're in CS specifically, be honest with yourself about which side of the bimodal distribution you're on. If you're a future research scientist, you know it already — go deep, publish, and ignore everything I've said. If you're everyone else, stop cosplaying as a researcher and start building the experience that will actually matter.

I say this as someone who spent too long on the wrong side of that decision before course-correcting. It's not too late. It's just later than it needed to be.

Prev: From Loss Functions to Decisions