Skip to content

Instantly share code, notes, and snippets.

@cliffordfajardo
Last active February 16, 2024 14:38
Show Gist options
  • Save cliffordfajardo/03e580083a3b497e48fa52bfe3d6c04b to your computer and use it in GitHub Desktop.
Save cliffordfajardo/03e580083a3b497e48fa52bfe3d6c04b to your computer and use it in GitHub Desktop.

My Experience at Bradfield CS (School of Computer Science)

TLDR:

  • I highly recommend Bradfield; I took 6 classes from 2019-2021
  • Great for folks who want to understand core systems of computer science, reap more benefits at work & refine their mental models of the computing landscape
  • What you get out of the program largely depends on your personal goals & motivations

Bradfield vs Self-learning

In the age of the internet, you could in theory find all the information you need to self-teach yourself, however, do you want to spend your mental bandwidth, energy & time curating the internet to build your your own curriculum?

What is nice about Bradfield is that it provides some of the following over self-pace learning:

  • a well curated & structured curriculum that balances theory & application at just the right level
  • an environment filled passionate & experienced software engineers as peers who are eager to learn the material
  • instructors with great pedagogical skills, rich industry experience and passion for transmitting their knowledge to others

Bradfield feels a lot like going to the gym with an expert personal trainer, a great nutrition plan, & motivated peers alongside you. You will still need to put in effort, time and focus to maximize your outcomes, but at least you're not showing up without a plan on daily, weekly or monthly basis.

My Background (and Biases)

TLDR:

  • bootcamp grad (Hack Reactor)
  • college undergrad dropout (Social Sciences)
  • worked at some big tech & small < 20 people company
  • took a year off from work to attend bradfield & hack on personal projects
  • I have taken 6 Bradfield courses (early 2019 - early 2021)
  • I'm a fan of immersive education, having experienced job trainning programs like Year Up, Hackreactor (coding bootcamp) and Bradfield (post bootcamp learning, master's alternative). I champion immersive education because I've realized my success rate for completion of live cohort based courses is over 90%, whereas I can't keep count of of all the self-paced stuff I haven't finished - maybe thats just me.

FAQ - Frequently Asked Questions:

Note: these questions are from other peers/alum inside the Hackreactor (coding bootcamp) alumni slack channel

1. Do you feel like Bradfield was worth it? I see you're a Sr.Swe at LinkedIn. Do you feel Bradfield was necessary to clear system design interviews at FAANG when interviewing at that level?
Clifford Response

You don't need Bradfield to crack entry into FAANG or break into the industry or even for SWE-Sr.SWE levels

  • SWE-Sr.SWE levels -- very leetcode heavy in interview process IMO
  • Staff level -- light leetcode/algo + lots of leadership & experience stories
  • SrStaff+ level -- very little algo, tons of experience based questions dive deep into internals of the work you do
  • I’d love more input here, but I’ve observed Sr.Staff+ at FAANG+, which very few stay long enough to make it here, requires some luck, lots of technical skills, you’ll need a solid view of your field on top of your specialty, unless your a hyperspecialist wunderkind

I do feel that Bradfield made me a much better engineer, which in turn makes work more fun & my opportunity potential more.Bradfield is great for:

Rohan Response
  • FWIW I mostly agree with Clifford. I used to think Bradfield was necessary to pass Sr-level interviews but actually, knowing **Bradfield stuff just massively narrows the margin of luck.**You're much less likely to have an 'unlucky' interview post Bradfield because you have a much broader understanding of things, but that's not at all the same as being 'unable' to pass without it. Say you'd usually have a 70% chance of passing a SD interview with standard/superficial prep, Bradfield might up that to ~90%... but that's about it.As Clifford alluded to, I think the real superpower bradfield gives you is the ability to escape web-dev altogether and work on databases/networks/kernels/dist-systems etc. But again, it's not necessary. Hack Reactor is to programming as Bradfield is to computer science. You don't

  • need to go to HR to learn to code. Bradfield actually maintains teachyourselfcs.com if you want to just teach yourself and not pay anything. Some v successful HR grads have gone this route too. Example github.com/reem maintains a lot of the most popular systems-level libraries in Rust, including the de-facto standard HTTP library, unit testing frameworks, immutable datastructures and I think the express-equivalent web framework. There're also a few HR grads who's first job just landed them working on TSQL or other really cool projects, just by pure chance.

2. Did you feel it was necessary to do all the courses or were there specific ones that are def worth doing and others just skim the self-study route?
Clifford's response

It depends on your individual goals/vision for yourself. If you know you're going to be in this field for a long time & you currently dont know what you want or what is possible, Bradfield could help expose & broaden your knowledge base. There's the 1 year program and then there's a 8-week program, which is a highly condensed view of the most of the computing landscape. It's a great "jumping off" point into more things and if you want to dive deeper take the 1 year cohort based curriculum

My motivation for taking all the courses was to build broad understanding of the entire field, which I personally believe will help me towards other goals. For example:

  • I work at LinkedIn, where I'm exposed constantly to distributed systems, custom database & query languages engines etc. Ex: kafka, expresso, avro created here & other stuff.
  • Maybe one day I may give startups another go, I want to be a CTO or technical leader. Below are some folks that inspire me & motivate me to get better technically. Some people who are highly technical that I look up to & have deep system knowledge:
    • Evan wallace: cofounder/CTO of Figma, creator of ESBuild
    • Mitchel Hasimoto: Cofounder/CTO of Hashicorp
    • ....
Rohan's response Some of them build on top of each other so it's hard to say. - My *favorites* were databases, architechture, Eliott's 'data structures' class and operating systems - IRL, architecture is fundamental to most things. Data bases is the most useful/transferrable. Networking is important but has lots to rote learn.
3.How much of a bottleneck does having a lack of this foundation create when aiming for roles above senior as well as being able to complete your day-to-day work at below senior levels? My understanding is, at senior/staff+ levels, leadership/communication skills are of much greater priority?
Rohan's response It totally depends. There are Senior roles that are mostly about being organized and having good product vision. There're others that are all about deep technical knowledge. For the latter, it's definitely a bottleneck and for the former, not at all. FWIW, I think the majority of senior+ roles in *most* companies (incl. fang et al)  do not require deep technical chops, and are mostly about the things you highlighted in your question. For day-to-day work, I think you'll find hardcore CS comes up *very* rarely and when it does, you'll have plenty of time to ramp up.
4.Is it worth the financial investment / time
Clifford's response The 18k I spent for 6 courses (2019-2020) out of pocket, I easily got back with my sign on bonus when I moved companies. If you decide to try a new play & hop companies in the future, you will likely get it back with your sign-on bonus and new compensation. But you might find you don't need to move companies if you're at a FAANG-like company, since promo's & yearly bonuses are more common.

Rohan (Google), Ivan (Robinhood) and many other folks shared similar thoughts

Ivan's response

See: https://www.echevarria.io/blog/bradfield-is-phenomenal/index.html#value-on-the-job

5. How much of what is taught at Bradfield is in line with undergrad CS courses. E.g. databases 101, networking 101...
Clifford's Response

I'd say its in line with the topics you'd cover at a top CS programs like Berkeley/Stanford/MIT etc.

  • I went to Berkeley (not CS) so I can say that what I was exposed to at Bradfield is relevant to all the courses they offer. I've read their entire curriculum + have several friends who majored here & took CS elective there before.
  • We read / were exposed to CS papers / research that are seminal to the field throughout different Bradfield classes

I'm trying to optimize for reaching senior as fast as possible. Demonstrating consistent execution, craftsmanship & leadership in your immediate team & organization is one of the fastest way's to get to Senior engineer.

More detailed opinions on comparison with undergraduate studies

6. Is Brafield a replacement for a CS undergrad program? Bradfield and undergrad CS experience differ a lot.

Some great things college offers that a bootcamp or short courses don't offer

  • longer social experiences (living on campus, clubs, dorms etc)
  • ability to take classes in other majors (philosophy, English, Biology etc)
  • if you have the means (financial etc) & can afford the longer time span

Some great things about job trainning programs, bootcamps, trade/professional schools etc (bradfield)

  • can help you get into the industry faster
  • great for folks who are career changers
  • accomodating to folks who have fulltime jobs (are working professionals in some capacity / employed)
  • great for folks who feel quite sure that this field is right for them and want to get started

More detailed opinions

7. How does Bradfield compare to graduate school programs (Master's / PHD)

More detailed opinions on comparison with Master's programs:

  • Julius's thoughts here
  • Oz thoughts here:

PHDs

  • PHD's are in their own class (longer length 4-5 years) & the format & style is not close to what you experience in undergraduate studies, bootcamp or a trade school.
  • Typically, you might pursue one if you're interested deeply specialization in an area of a specific field, become a world-class expert. Typically, you need to have majored in the same field in undergrad or have an undergraduate degree.
8. Should I Enroll in Bradfield? What types of future/long term opportunities can Bradfield open up for me?

Julius's thoughts here Rohan's thoughts here

Eugene's response The goal of the program, I think, is to take web dev people and give them the knowledge to become systems programmers. The most valuable thing it has given me so far is confidence to explore systems level things that would have seemed out of reach before. For example, the first and second modules focused on cpu level operations/optimizations. Understanding and optimizing assembly, memory layout, cache locality, various mechanical sympathy things. Now, I’m probably not going to hand roll assembly but might organize structs to maximize cache utilization and can now do so with a first principles understanding. This is how I see the program’s benefit. Maybe everything isn’t directly applicable to your current job (although Oz did call some people from the cohort out on twitter recently for using things they learned in the program at their jobs) but it will give you the confidence and the knowledge to explore vast territory.
9. When migh it be the right time in my career to take a course at Bradfield?

TLDR:

  • generally the consensus is when you have about a year of working experience in a programming role.

Julius's response here

Student Reviews

Other References

Student Blog Posts / Podcasts etc

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment