Interesting. When I pushed a bit at (well-known tech company), I managed to get a couple of high-GPA CS students from my state university into the internship interview pipeline. These students were personally recommended to me by the school's top (IMO) CS professor. I was particularly excited for one of them, who had a 3.9-something GPA, and who seemed pretty solid technically when I spoke with him on the phone. Unfortunately, he didn't pass the online coding test in order to proceed to the next step. The others did miserably on this test.
Compare that to the students I interviewed for internships from top 5 engineering schools. Among them was one of the best candidates I'd ever encountered, regardless of experience level. He came up with a unique (and quite good) solution to a problem I'd been using as an interview question for years. As someone who had done fairly well in state school, I was floored by how much more well-prepared these students were than I had been.
My story is anecdotal, and there are many factors that can explain what I perceived. But I suspect the top companies have figured out that they get best results in hiring based on a) recent grads from top schools and b) great resumes from experienced devs who maybe didn't start out at top schools & top companies.
On the plus side from a diversity standpoint, the students I interviewed from these top schools were both male and female, and from a wider variety of ethnic backgrounds than I usually see in the hiring pipeline.
Or the top schools prepare their candidates for the test. I think I’m a pretty decent coder, thank you very much, but I suck on those blackboard interviews. I could see that being fixed with practice though, and maybe the big schools format their classes and labs such as to practice for that?
I went to a top 5 school.. sorry to say there is no secret sauce the school gave us, no interview prep classes, and not a lot of TA sessions either - at least not with small sizes.
Definitely nothing at all targeted towards interviews - even the algo courses were very theoretical and they expected us to get comfortable with the code on our own time. In fact they are all about teaching CS and not about teaching you how to get a job or trendy technologies.
What did help me and some of my friends more than anything was just grinding interview questions - going through CTCI 3-4 times until I could solve it in my head, doing random questions off glassdoor etc..
People love to paint rosy pictures of easy lives for top 5 candidates. The truth is college was insanely hard, many people were extremely stressed/depressed, we worked our asses off and sacrificed a lot. Ultimately to learn a lot more in 4 years than someone else, you have to put in a lot more time - there is no way around it.
>the algo courses were very theoretical and they expected us to get comfortable with the code on our own time. In fact they are all about teaching CS and not about teaching you how to get a job or trendy technologies.
This was very much my experience as well. A couple classes had "make your own final project!" things that usually encouraged front-end like an app or a website. I bombed those pretty hard because I had no idea what I was doing.
Most of my classes only touched code occasionally for a homework. Everything else was either math, short answer, or running algorithms by hand.
I don't know how all this compares to other schools, but it could be a massive advantage in interviews. Most interviews are asking you to come up with an algorithm and implement it. I can't tell you how many interviews have come down to the "linked list indexed by a dictionary" data structure that I had to figure out for my first CS midterm. Nobody asks about logging stacks or Oauth2 or caching in new-grad interviews.
Maybe I'm misinterpreting your point, but: doing small team group work with supervision that leads to being effectively able to solve problems sounds like a thing that makes someone actually a good candidate, not just good at interviewing.
Companies too realize that the process is a highly imperfect proxy for overall developer capability.
But it's also infinitely better from the company's perspective than having no data whatsoever on each candidate's current capabilities.
Combine this with the fact that false negatives (good programmers who perform poorly on 45-minute blackboard programming tests) are not a measurable problem for a company, and you end up with what we now have.
Compare that to the students I interviewed for internships from top 5 engineering schools. Among them was one of the best candidates I'd ever encountered, regardless of experience level. He came up with a unique (and quite good) solution to a problem I'd been using as an interview question for years. As someone who had done fairly well in state school, I was floored by how much more well-prepared these students were than I had been.
My story is anecdotal, and there are many factors that can explain what I perceived. But I suspect the top companies have figured out that they get best results in hiring based on a) recent grads from top schools and b) great resumes from experienced devs who maybe didn't start out at top schools & top companies.
On the plus side from a diversity standpoint, the students I interviewed from these top schools were both male and female, and from a wider variety of ethnic backgrounds than I usually see in the hiring pipeline.