My career path in tech so far has been junior engineer -> mid level -> senior -> tech lead. As I've progressed through that path, I have had literally no opportunities of applying the stuff I've learnt on HackerRank, save for a couple of interviews. At this point I'm convinced that the focus of those interviews was entirely wrong. Once you pass those tests and get hired, you will be dealing with tons of legacy code r…
The next big tech interview craze, I have long thought: Here is a fucked up environment. Here are logins for each role. Here is your team. Here is your role. Each of you has a chance at each role. There are three of you. So three challenges. The environment is experiencing the following symptoms. Diagnose, report, fix. --- Then throw them at some broken stack with admin rights and figure why its broken and fix it. Cr…
Caltech's CS interview prep course
151–160 of 336 posts
Re: Caltech's CS interview prep course
#152Earlier quoted context omitted.
> How are you supposed to hire 50,000 people a year with a process like that? This is a straw-man. What company has to hire 50,000 engineers a year? Facebook has (in total) ~10,000 engineers (hired over a decade+). Someone has nothing published and no OSS? Great, ask for code samples and the candidate to walk you through the code. It's completely trivial to fix the busted status quo, but people are invested in this n…
It's pretty simple to get a rough estimate of how many people you need to hire a year. You take your engineering count, say ~10,000, how long engineers stay at each company, say 4 years, and you come out to 2,500 engineers you need to hire every year, assuming you don't need to grow, to maintain the status quo. So then you take a larger company like google, with ~100,000 engineers, and they'll need to hire at least 2…
edit: I don’t know their boomerang rate, that might matter.
Re: Caltech's CS interview prep course
#153Earlier quoted context omitted.
What’s your suggested alternative? Please remember that while some of us would do well and prefer some live pair programming or debugging sessions, it stresses the hell out of some folks and penalizes them unfairly. Take home tests penalizes people with families and other responsibilities and probably has a racial bias as well in countries where different races have different societal loads. In the end, even if these…
grinding leetcode is just as bad, if not worse, than a take-home test
For leetcode, I can study once for a week or so, and then do a bunch of interviews at different companies, where each onsite is gonna take me a single day (4-5 hours or so).
For take-home projects, it usually takes way more time than that (about a whole week of a few hours every day). And it doesn't reduce the more I study or do those projects.
So no, thank you, I would rather take a single day to do a full loop with a company, as opposed to spending a week doing the same. Back when I was heavily interviewing last year, I could easily do leetcode interviews with about 1-2 companies a week without breaking a sweat. I did a take-home project a couple of times, and I am never going to do it again. The time sink on take-home projects is insane, and it is a much weaker signal. Given a lot of people here heard those stories last year where people were even trying to cheat on leetcode interviews (by asking other people to take those for them, and they eventually got caught), I imagine the cheating on take-home project is much more common and is much more difficult to detect.
Re: Caltech's CS interview prep course
#154Earlier quoted context omitted.
What’s your suggested alternative? Please remember that while some of us would do well and prefer some live pair programming or debugging sessions, it stresses the hell out of some folks and penalizes them unfairly. Take home tests penalizes people with families and other responsibilities and probably has a racial bias as well in countries where different races have different societal loads. In the end, even if these…
> What’s your suggested alternative? I generally give (mostly) simple questions where I explain how to solve them. Assuming you're a competent programmer in the language we're dealing with, you should be able to figure out how to solve the problem in your head in a minute or two. The trick is that I'm gauging accumulated skill, not memorized algorithms. For example, I'll explain how to use a data reader, explain the…
That's a decent way of interviewing. It depends on the skill of the interviewer though, I can easily imagine someone handling it very poorly.
Re: Caltech's CS interview prep course
#155Earlier quoted context omitted.
> why should I trust the university selection process more than those corporate hiring ones? I don't know the US education system enough, but there are some schools out there which are much more selective than any SWE interview process. You can be guaranteed that the worst student from these top schools could nail any algorithm interview with minimal preparation. But these big companies hire many more people than the…
> You can be guaranteed that the worst student from these top schools could nail any algorithm interview with minimal preparation. Considering that CalTech offers this course, they must be realllyyyy misguided, or you’re talking about schools that are far more selective than CalTech (7% acceptance rate).
Re: Caltech's CS interview prep course
#156My career path in tech so far has been junior engineer -> mid level -> senior -> tech lead. As I've progressed through that path, I have had literally no opportunities of applying the stuff I've learnt on HackerRank, save for a couple of interviews. At this point I'm convinced that the focus of those interviews was entirely wrong. Once you pass those tests and get hired, you will be dealing with tons of legacy code r…
I went to an internal job interview about 5 years into working for the company. They were asking me all sorts of textbook questions about defining stuff like polymorphism and explaining some sort algorithms. I bombed. Many of these terms and algorithms had never been used during my 5 years, and I forgot many since they hadn't been used since college. I wanted to ask the interviewer if they actually use these terms in…
And totally agree with the absurdity of the questions we ask in tech interviews. At least for my current employer, we use simplified versions of real problems we faced in the past, and place more emphasis on how they communicate, rather than just throwing some leetcode medium/hard problems, and let candidates self select based on how much prep work they put in.
Re: Caltech's CS interview prep course
#157Tech interview discussions always seem to run the same course and hit the same points, so I'll repeat one of mine: What's wrong with the idea of turning the standard Leetcode algorithms interview into a license that only needs to be completed once, or maybe once every 5-8 years, similar to what physicians must undergo? Much more efficient than having to retake it with every single company during an interview cycle.
One way to bypass these interview tests is networking. If you are recommended by someone or get an interview through someone, you generally won't be given these tests. After my first job out of college, I've never had to do these types of interviews as I got my next jobs via former co-workers who moved onto other companies and personally recruited me to their new company. I'm not sure if licensing will work. We alrea…
None of them got offers. One didn’t even get past the take-home. I worked with them. I KNOW they had the tech skills to do it.
Re: Caltech's CS interview prep course
#158Tech interview discussions always seem to run the same course and hit the same points, so I'll repeat one of mine: What's wrong with the idea of turning the standard Leetcode algorithms interview into a license that only needs to be completed once, or maybe once every 5-8 years, similar to what physicians must undergo? Much more efficient than having to retake it with every single company during an interview cycle.
One way to bypass these interview tests is networking. If you are recommended by someone or get an interview through someone, you generally won't be given these tests. After my first job out of college, I've never had to do these types of interviews as I got my next jobs via former co-workers who moved onto other companies and personally recruited me to their new company. I'm not sure if licensing will work. We alrea…
Has that ever worked at a FAANG?
Re: Caltech's CS interview prep course
#159Interviewing is broken. When I was at Amazon, it became impossible to hire candidates, and generally the engineers we brought on board were non-US citizens. Typically they're Indians without U.S. residency status, often times U.S. college grads or often even transfers from Amazon's Indian offices. Not only did we pay below other FAANGs, but with these hires, we'd pay them at the low end of our own scale. What are the…
I’ve never worked at Amazon but this seems to be a common theme with interview candidates who work there. They talk about to burnout and stressful on-calls shifts. I’m not sure how this unfolds for Amazon in the long run.
Re: Caltech's CS interview prep course
#160Earlier quoted context omitted.
No. Normal economic sectors without decades long explosive growth have some kind of licensing system to keep people out so that insiders make more money. Merely being able to teach, engineer or reason about the law taking into account precedent is not sufficient to get a license for it. In some cases this probably has some attached quality control implications but we know education degrees have no effect on teacher e…
I wonder how many “engineering” jobs actually require PE. Biotech is an another counterexample to this: there’s no licensing requirement (though many jobs do require a masters or PhD) and the interviews also (mostly) aren’t quiz show lunacy. You usually talk about your past work and answer questions about how you’d approach new problems; no one makes you (say) sketch crystal structures on the board or recite the Kreb…
An engineer is someone who might say "no" to releasing a product that might fail and cause injury or economic damage. I'm not sure what that would correspond to in the software world, where everything fails.