[HN Gopher] Caltech's CS interview prep course
___________________________________________________________________
Caltech's CS interview prep course
Author : b8
Score : 116 points
Date : 2022-02-27 20:38 UTC (2 hours ago)
(HTM) web link (courses.cms.caltech.edu)
(TXT) w3m dump (courses.cms.caltech.edu)
| wsh wrote:
| Other than the course outline, is there any substantive content
| available?
|
| I saw only a link to the first problem set, and even that
| requires a Caltech login.
| tzs wrote:
| I'm a bit confused. The course number on the page and in the URL
| is CS 11. But the Caltech course catalog lists CS 11 as "Computer
| Language Lab" [1] and the description is nothing like the CS 11
| at the submitted URL.
|
| [1]
| https://catalog.caltech.edu/current/courses/department/CS/20...
| enjoyyourlife wrote:
| It seems to change topics depending on the term
| im_down_w_otp wrote:
| Are there other major economic sectors which have circled the
| wagons around making job applicants do remedial coursework as
| live performance art?
| darkstar999 wrote:
| Actuary?
| TrackerFF wrote:
| I feel that it's mostly a certain part of the tech scene. FAANG
| companies, startups, and those cargo-culting those. I've
| actually been to dev. interviews that were 1-2 interviews long,
| almost zero technical questions.
|
| Now, those places were in now way "prestigious", or paying
| $250k starting salaries. Just your garden variety F500
| companies / gov. agencies / non-tech companies.
|
| Also, my experience with "traditional" engineering companies
| have been similar, 1/10th duration of tech interviews, some
| fundamental questions related to your trade, then mostly
| questions on personality, you experience, etc.
|
| The closest I've been to tech, was finance. It's very much a
| predictable process - you know what kind of questions you'll be
| asked, what the next round will include, and all that...but
| still not anywhere near the rigor of prestigious or trendy tech
| firms.
| barry-cotter wrote:
| 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
| effectiveness[1] so there's at least one case where that's pure
| rent seeking, where the insiders benefit and everyone else
| pays.
|
| [1] It's easier to pick a good teacher than to train one:
| Familiar and new results on the correlates of teacher
| effectiveness
| https://www.sciencedirect.com/science/article/abs/pii/S02727...
| mattkrause wrote:
| 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 Krebs Cycle.
| barry-cotter wrote:
| You can get into software engineering completely self
| taught or after a (3-12 month) boot camp. If biotech was
| that open they'd have similar interviews checking for basic
| familiarity with the field. Must have a Master's at minimum
| is very different from must pass an interview as a minimum
| hiring filter.
| zizee wrote:
| This is largely a result of low barriers to entry into the
| profession. You do not need to have a qualification from an
| accredited institution to be a practicing software
| engineer/programmer/developer.
|
| Unlike doctors, lawyers, dentists, civil engineers...
|
| So you have a well paying profession, hot demand, good working
| conditions, and no external framework to ensure a base level of
| competence. Of course people will try and game the system
| (wittingly or otherwise).
|
| IMO this is a good thing. It allows people from all walks of
| life to get into the industry, and has helped it to grow more
| rapidly. But it does introduce a big issue, that its very
| difficult to know if someone is an expert, or just trying to
| fool you (and perhaps themselves) into thinking they know what
| they are talking about.
| SmellTheGlove wrote:
| Nah it's still broken. Using lawyers as an example because
| that was my past career, 3-4 years of law school also doesn't
| teach many practical skills. In fact, most of us took what
| amounts to a semester long course just to prep for the bar
| exam. And even then, you still don't know anything!
|
| As I shifted into tech, the hiring process didn't surprise me
| but for the wrong reason. All I learned was software
| engineers put up with similar bullshit to lawyers!
|
| All that said I don't know how to fix any of it easily. Maybe
| no one else does either, and so here we remain.
| porcoda wrote:
| I've noticed that people here paint the whole industry with a
| broad brush that reflects what a handful of giant companies and
| companies imitating them do. I've been on both sides of the
| interviewing table at a few places and it's never been the
| whiteboarding dystopia that everyone talks about here. The last
| job I took had a long interview process, and at the end of the
| day someone spoke up and said "oh yeah, we probably should ask
| you some code question", which I blew since I was exhausted and
| it was an obscure C++ thing. They laughed it off and I still
| work there.
|
| HN is a poor barometer for the broader tech industry -
| everything from hiring practices, tech choices, etc. HN has a
| tendency to make it sound like all the world acts and smells
| like a giant tech company or a startup. There are a TON of
| companies that are not like those.
| neonate wrote:
| https://archive.is/njEHH
| axpy906 wrote:
| Thanks could not get main site to load. This should be at top.
| BurningFrog wrote:
| Idea: Professional CS interviewers!
|
| I'm a good programmer, but not a good interviewer. That makes me
| pretty typical.
|
| I could spend a lot of time getting better at it, but I would
| only marginally improve, and it would take time out of the work
| I'm actually good at.
|
| This feels like a typical problem for division of labor to solve.
|
| Maybe it's already done in done form?
| avl999 wrote:
| You would not "marginally improve", you would dramatically
| improve. That's the dirty secret of these interviews they are
| not that hard to get good at. There are at most a little over
| half a dozen data structures and about a dozen algorithmic
| technique patterns that show up in these interviews, once you
| do enough of those types of problem, you get better at it.
|
| I am willing to bet that spending an hour every day on leetcode
| you can probably be good enough to pass interviews at most
| companies in a month or two (assuming you had exposure to DS
| and Algorithms in college, if not add more time but the general
| idea applies). Maybe not Google but I would bet you'd be good
| enough to see double digit increasing in your onsite -> offer
| conversion percentage. Whether that would be worth it is a
| different question, the answer for many people who already have
| good jobs is no.
| Apocryphon wrote:
| Tech 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.
| barry-cotter wrote:
| > 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?
|
| How far from this is the A level in Computer Science[1] which
| should take at minimum 20 weeks full time study for the target
| 16-18 age group? Or the EdX MicroMaster's in Data Structures
| and Algorithms[2]? If any one of the FAANG companies said "Get
| this qualification and we guarantee you an interview" that
| would already be massive, never mind skipping one or two steps
| of the interview process.
|
| [1] https://www.ocr.org.uk/Images/170844-specification-
| accredite...
|
| The content of this A Level in Computer Science is divided into
| three components: * Computer systems component (01) contains
| the majority of the content of the specification and is
| assessed in a written paper recalling knowledge and
| understanding. * Algorithms and programming component (02)
| relates principally to problem solving skills needed by
| learners to apply the knowledge and understanding encountered
| in Component 01. * Programming project component (03 or 04) is
| a practical portfolio based assessment with a task that is
| chosen by the teacher or learner and is produced in an
| appropriate programming language of the learner's or teacher's
| choice.
|
| [2] https://www.edx.org/micromasters/ucsandiegox-algorithms-
| and-...
| aiisjustanif wrote:
| For the non-UK folk you might have to explain A-levels. But
| your question it's valid.
|
| > How far from this is the A level in Computer Science[1]? Or
| the EdX MicroMaster's in Data Structures and Algorithms[2]?
|
| Pretty far from being standardized and the key point of the
| previous comment you replied to is re-licensing.
|
| > If any one of the FAANG companies said "Get this
| qualification and we guarantee you an interview" that would
| already be massive, never mind skipping one or two steps of
| the interview process.
|
| Is it? Network engineers are required to keep up
| certifications for jobs in the US (CCNP or rarely CCDE). So
| do Security Engineers/Professionals, Auditors, Cloud
| engineers/architects/consultants. Government employees or
| contractors require them for assurance. It's not that massive
| of a shift imo.
| interview_anon wrote:
| giantg2 wrote:
| I'd say cert, not license. I don't think anyone should _have
| to_ pass a LeetCode exam to professionally code. But otherwise
| a good idea.
| Apocryphon wrote:
| Sure, I'm using them interchangeably to mean an "officially-
| decided standard that allows you to not have to retake the
| same interview at every company." Whether that standard is
| created by some sort of industry consortium, the IEEE or ACM,
| CS academia, or some combination thereof, is left as an
| exercise to the discourse.
| mherdeg wrote:
| Is this the Triplebyte model?
| Apocryphon wrote:
| I thought Triplebyte just allows candidates to skip the tech
| screen step, the on-site can and does still include algo/ds
| questions depending on the interviewing company.
| closeparen wrote:
| That's more the way employers treat Triplebyte in practice,
| and it is probably how they would treat any similar
| attempt.
| qiskit wrote:
| 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 already have
| "licensing" via Microsoft/etc certificates. And my experience
| is that we test these people with certificates even harder
| because of the poor reputation of these certificates.
| closeparen wrote:
| "The standard" belies a lot of variation. Some interviewers
| want perfect code the first time on a whiteboard, some let you
| go back and forth with a compiler as much as you wish. Some
| interviews stick to relatively shallow algorithms knowledge
| like DFS, others will ask you two LC Hard questions in an hour.
| Sometimes it's about whether you solved the problem, sometimes
| it's about your thinking and collaboration during even a failed
| attempt. There are too many opinions and too little hard
| evidence to sort them out. It's a challenging coordination
| problem.
| Apocryphon wrote:
| You're completely right, and this actually is another layer
| to the whiteboarding technical interviews are broken
| narrative: there are no objective standards, even if there is
| huge overlap in the content being interviewed from company to
| company (or even team to team). A very discouraging aspect
| about these interviews is that the rubric is completely
| hidden away from candidates and feedback is almost never
| provided. At least a licensure or certification test would be
| more transparent.
| majormajor wrote:
| There are no objective standards for the _output_ of the
| software development process. It 's a unique mishmash of
| building the blueprints and the final artifact at the same
| time. Not because we _want_ to be a bunch of cowboys, but
| because the unique ability of it _to be_ that flexible, and
| to be patched over time, means speed is possible in a way
| it just isn 't in other fields, and the market has rewarded
| companies that move fast.
|
| So until that's changed, I find it hard to see how we could
| standardize developer hiring. My coworkers and I all wear a
| different amount of hats with varying competence. The
| number and variation of certs required would be rough! "I'm
| level 4 backend engineer with level 3 data design
| [streaming level 1, traditional ETL level 7], level 1 hacky
| frontend dev, and level 2 devops" - sheesh, now I'm
| spending my whole time keeping those up to date.
| Apocryphon wrote:
| You are talking about the nitty-gritty aspects of actual
| software engineering. I'm talking about doing away with
| the redundancy of having to retake the industry-wide
| Leetcode fizzbuzz portion instead of passing it once.
| majormajor wrote:
| I'm asking that since the job itself is wildly
| unstandardized, how on earth are we supposed to
| standardize a single "industry-wide" credential for
| interviews?
|
| There's no "industry-wide Leetcode fizzbuzz portion" -
| Leetcode and fizzbuzz are famously on complete opposite
| sides of the whiteboard spectrum! I've only been asked
| actual fizzbuzz once, and can't immediately think of any
| other duplicate whiteboard problems I've seen either.
| Many of them aren't ones I've seen on Leetcode, and would
| probably be on the "easy" scale there if they were there.
|
| I couldn't pick out any single problem that would make
| everyone at all my last few jobs happy, let alone the
| whole rest of the industry.
| 10000truths wrote:
| Why would you _want_ a license? The whole allure of software
| development is in its accessibility, that it 's easy to get
| started with nothing more than a laptop and an Internet
| connection. Putting up artificial barriers to entry is anathema
| to that. What you'll end up with, in practice, is one of two
| outcomes:
|
| 1. A race to the bottom where licenses become easier and easier
| to get, until it becomes no more a demonstration of competence
| than drivers' licenses are to one's driving skills.
|
| 2. Protectionist policies make licenses mandated and difficult
| to obtain, then the talent pool and innovation moves to places
| that don't require that license.
| Apocryphon wrote:
| By license I mean the current Leetcode interview process
| except you do it once and are good for at least five years.
| Obviously when candidates are interviewed there would still
| be technical questions asked, but perhaps those would be more
| domain-specific. The whole point is to avoid the redundancy
| of the existing interview process.
| ryandrake wrote:
| Yea, think of it less as a "government issued license
| allowing you to do software" and more of a certificate that
| says "I recently passed a level $LEVEL leetcode grind, you
| only need to test me for specialized skills or for a level
| greater than $LEVEL." If it actually worked and couldn't be
| gamed/cheated (good luck with that), it could reduce
| interviews to a simple check of domain knowledge not
| covered by the certificate.
| naiwenwt wrote:
| > By license I mean the current Leetcode interview process
| except you do it once and are good for at least five years
|
| Some companies do seem to be offering something similar to
| this, see CodeSignal's general coding assessment or back
| when TripleByte was big a few years ago. I think the
| problem is that even within the specialized topic of LC
| style interviews, many companies don't agree on a similar
| strategy when it comes to types of questions and
| difficulty. There isn't one standard that every company
| agrees on, so most have their own flavor of it.
| singron wrote:
| An equivalent idea is to hire anyone who has worked at any
| well-known company with similarly rigorous interviews.
|
| But people from those places still perform really poorly in
| interviews at about the same rate as everyone else. I wish I
| knew if it was a fluke that they bombed this time or that they
| passed the original.
| ip26 wrote:
| More likely is that any company big enough to have a
| reputation is also big enough to have strong & weak
| departments, and it can be hard to tell which the candidate
| is from.
| honksillet wrote:
| As someone who is licensed in a different field, awful idea.
|
| Each state tends to have their own (often quite different)
| license requirements. They tend to be expensive to get and need
| to be renewed frequently (more $$$). There are usually other
| hoops you have to jump through to get both license and
| relicensed. I would never wish licensure on my own profession.
| cutenewt wrote:
| I agree on the downsides, but I believe licensing is a good
| forcing function to get others to 1) gain knowledge and 2)
| standardize training for a base level of competence.
| gaoshan wrote:
| I don't necessarily want someone with great algorithm test
| taking skills... such a cert would be of relatively minor value
| to me. A single data point out of many and not one with
| especially great weight. I want someone that can build stuff on
| time, using the tools our team uses, within budget and do all
| of this while being a collaborative, reasonable, not unpleasant
| person to work with.
| Apocryphon wrote:
| Sure, and perhaps that means you're currently already not
| asking algorithm questions in your interviews. Meaning
| candidates grousing about Leetcode wouldn't have similar
| grievances interviewing with your company.
| shahbaby wrote:
| Reminder, our field isn't regulated.
|
| Anyone can go online and learn enough to be useful at a high
| paying entry level job.
|
| At some point there has to be a filter and that's what these
| interviews are for.
| Apocryphon wrote:
| The kind of license I'm suggesting doesn't change any of
| that. It would literally be formalizing the existing Leetcode
| process so it doesn't have to be retaken many times.
| ip26 wrote:
| The curse of a field which is both competitive yet difficult
| to measure. A meritocracy where your true status is opaque.
| bluedino wrote:
| The trick is proving to an employer what you know. Hard to
| get a resume past HR when you've worked in other industries
| and learned all your coding online.
| shagie wrote:
| We tried that once.
|
| https://ncees.org/engineering/pe/software/
|
| But nobody was interested.
|
| https://ncees.org/ncees-discontinuing-pe-software-engineerin...
|
| ---
|
| I've interviewed software developers who have on their resume
| "Oracle Java 8 certified", but aren't able to name three
| different spots where the static keyword appears in Java or the
| situations where they'd be used.
|
| There are certainly many possible reasons why someone wouldn't
| retain that knowledge, but I've encountered far too many
| candidates claiming mid or senior level experience with
| "enhanced" resumes and certifications from everywhere that are
| not able to satisfactory do more than follow instructions (e.g.
| not able to determine steps needed to complete tasks nor able
| to solve the larger problems and break them down into tasks).
|
| So, with the resume and certifications not things that I have
| confidence in, asking those questions to try to figure out if
| the person is able to approach solving a novel problem is what
| gets asked. If other companies do the same, then that candidate
| will likely see similar lines of questions in each place.
| Apocryphon wrote:
| It's interesting how this mirrors the Computer Science GRE
| subject test being discontinued.
| SeanLuke wrote:
| This is a test on software engineering, not computer science.
| shagie wrote:
| I would contend that it makes it _more_ applicable to the
| general "what do you do professionally" for most people
| outside of academia.
| someelephant wrote:
| For a lot of space-cadet interviewers this would work well.
| They just want the right answer and aren't thinking about how
| easy it would be to work on a team with these people.
| TLadd wrote:
| Last time I interviewed, I thought about how it probably would
| have benefitted me to take one less class a semester in college
| and just drill leetcode-style questions in that time. Given how
| almost all "prestigious" companies use these problems heavily for
| interviewing, it's likely to increase earnings more than any
| other course.
|
| I think what caltech is doing here makes a lot of sense and
| demonstrates an awareness of the realities of interviewing at
| companies a lot of their students will want to work at. College
| is also a better time to build up this skill than later when
| other responsibilities tend to pile up.
| Veserv wrote:
| For context, this is a CS11 class which is a catch-all small form
| factor elective (3 units, average class is 9 units, units are
| supposed to be that many hours per week) that is used to offer a
| dozen or so small topics that are not extensive enough to warrant
| a full class. In any given term they will usually offer various
| CS11s for learning new programming languages and a few other
| random topics with some being run by grad or undergrad students.
| ozzythecat wrote:
| Interviewing 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 they going to do? Quit? Ha! If they quit, they have to
| leave the country. So most of them just suck it up. Many of them
| had spouses and children. Quitting Amazon meant they'd have to
| uproot their entire family.
|
| A second order effect the entire industry on how to work around
| Amazon (and other big tech's) styling of interviewing. What
| amazes me are all the Youtube channels from Amazon engineers and
| other big tech companies with this "influencer" persona.
|
| At the end of the day, many of these kids at Amazon are doing
| shitty migration projects, shoveling legacy code around all day,
| and dealing with on-call hell.
|
| But we have this entire cult of working in big tech and going
| through all these gymnastics to get through pointless interviews.
|
| Perhaps Google, Netflix, etc. are much better places to work, but
| it boggles my mind anyone would invest so much energy in getting
| a job at Amazon. It's absolutely a shit place to work that
| doesn't treat people like human beings.
| almost_usual wrote:
| 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.
| johnnyo wrote:
| Any way to access the assignments without a Caltech login?
| relyks wrote:
| I understand part of the point of posting this is to demonstrate
| the problems with the educational system for CS majors and the
| hiring practices of the industry, but what is the actual point of
| sharing it here if the resources aren't open for all of us?
| avl999 wrote:
| This is absolutely embarrassing for the industry.
| VirusNewbie wrote:
| Why is it not embarrassing for Caltech's admission department
| and algorithms courses?
| someelephant wrote:
| I'd argue it's pragmatic
| avl999 wrote:
| I agree it is embarrassing for Caltech as well. They are one
| of the biggest engineering schools in North America not
| Greendale Community College, this kind of class is beneath
| them. No major research university should be offering a
| course like this.
| mkl95 wrote:
| 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 riddled with dumb
| queries, questionable code quality, and very often the wrong
| stack for the problem at hand.
|
| I'd be OK with modern interviews if they reflected the job you
| will be doing to a reasonable degree. But knowing the state of
| the industry I feel that they fall somewhere between gatekeeping
| and a bait & switch scheme.
|
| If you haven't spent enough time practising those problems, you
| will look like an idiot. If you have spent enough time practising
| them, your expectations will be high, and you will feel scammed
| when you read the steaming shit your new employer wants you to
| improve.
| giantg2 wrote:
| 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 meetings or used the algorithms, but I didn't. Since
| it was internal, I already knew the answers would be that they
| didn't, and I didn't want to appear confrontational.
|
| I was internal, a high performer on my team at the time, and
| you're going to ask me this useless stuff?
| dionidium wrote:
| The reason this complaint never changes anything, despite being
| very popular, is that these interviews serve two purposes that
| it doesn't address: 1) they're an intelligence test; 2) they're
| a perseverance/conscientiousness test.
|
| Will you take the time and put in the work to pass one of these
| interviews? That measures perseverance and conscientiousness.
| Having put in the time, can you recall and adapt what you
| learned to perform complex tasks on a whiteboard in a stressful
| environment? That's an intelligence test.
|
| In combination, these criteria measure the famed, "smart and
| gets thing done" in a way that more practical lines of
| questioning might not. Or at least that's the theory.
|
| For the record, I've only interviewed at one FAANG company, got
| to the on-site interviews, did not get an offer (in case you
| think I'm secretly patting myself on the back here).
| syspec wrote:
| I really think you nailed it, will have to borrow this point
| in the future.
|
| A lot of it is about gauging the candidates aptitude, and of
| course their willingness to put in the work.
|
| It's like those kids in math class that say, "I'm never going
| to use this in real life."
| monkeybutton wrote:
| At least have empathy for your predecessors! How often have you
| chosen an architecture and stack to solve a problem only have
| the slow but constant shifting sands of managements'
| requirements completely undermine the foundation of what you've
| built, and been given no extra time to migrate and make it
| right instead of adding on another layer of shortsighted hacks?
| ramraj07 wrote:
| 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 coding challenges might not reflect
| the actual work you do, they might still be predictive of
| success in the job, as much as any other method can be when we
| look for unbiased markers.
|
| This is similar to how the entrance exams to the IITs in india
| are pretty much completely discordant to what you actually end
| up having to know, the rigor and preparation you need to do
| ends up reasonably selecting for well performing students
| anyway. Not perfect though. Any system can be gamed but it
| works alright.
| gwbas1c wrote:
| > 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 constructor for a simple object, and provide a SQL
| statement. Then you need to write the code that reads a few
| values from the data reader and constructs and object. After
| that we discuss edge cases and error handling, and if you
| should throw an exception or return null. Easy-peasy! (And if
| it's not easy-peasy, you really shouldn't be here.)
|
| Another example: I'll explain an older API for running a
| lambda in a background thread, and then an API for running a
| lambda in the main (UI) thread. (Mac, Windows, iOS, and
| Android all have the same threading model for their UI.)
| Easy-peasy if you understand basic scoping and threading.
| (And if it's not easy-peasy, you shouldn't be working in any
| job where you have to deal with threads.)
|
| In both cases, the candidate can ask any many questions as
| they want, and I'll happily steer a candidate.
|
| The point is, I'm not relying on memorized algorithms, or
| requiring prep. What I'm doing is relying on, and judging
| accumulated skill. Only a novice will have trouble with my
| questions; and I wouldn't use these questions when hiring
| interns or entry-level engineers. If you've programmed with a
| database before, you should understand the basic concept of a
| data reader. If you've programmed for awhile, you should
| understand scope. And, if you've programmed with threads, you
| should understand running a lambda on another thread. (You
| probably should understand lambdas, too.)
| game_the0ry wrote:
| > What's your suggested alternative?
|
| In my experience, any alternative to leetcode provides a
| better signal-to-noise ratio. You are better off asking
| trivia questions.
|
| Additionally, this is the common narrative among leetcode
| advocates - "If no leetcode, then what?" As a hiring manager,
| you think harder and do better, that's what.
|
| > 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.
|
| So does leetcode. And a candidate that is truly a good fit
| for the role would be more at ease with the interview than if
| they saw a leetcode question they haven't seen before.
|
| > Take home tests penalizes people with families and other
| responsibilities...
|
| So does studying for leetcode for hours.
|
| > ...and probably has a racial bias as well in countries
| where different races have different societal loads.
|
| Share some sources before making a claim this ridiculous.
|
| > In the end, even if these coding challenges might not
| reflect the actual work you do, they might still be
| predictive of success in the job, as much as any other method
| can be when we look for unbiased markers.
|
| In my 6-ish years of experience, this is false. I have
| actually tested this theory in practice, and through my
| anecdotal experience, leetcode is a poor signal for job
| performance.
|
| I can usually usually accurately screen a candidate for
| success in about 45 mins. And, unlike leetcode, you can't
| pretend like you haven't seen the question before, bc I can
| push the candidate to their limit, which is where you will
| find hire / no-hire signals. I love talking about this stuff,
| but I find that my peers engineering peers do not give a shit
| and would prefer to stay in leetcode hell.
| synthos wrote:
| grinding leetcode is just as bad, if not worse, than a take-
| home test
| majormajor wrote:
| Perhaps not everyone has to grind it so much. (I would
| wager they're the same people who do regularly find
| themselves thinking about computational and space
| complexity, and about using different datastructures and
| algorithms for problems, vs the ones who never see reason
| to!)
|
| A take home test requires spending free time for everyone.
| A whiteboard interview requires variable amounts of free
| time. I would wager that, on average, the people _inside_
| companies using these processes require less time to
| "grind leetcode" than the people _outside_ those companies
| do.
|
| You gotta be able to convince the folks on the inside, not
| the ones on the outside. To them, it being hard to "grind"
| might even seem like a good thing! "It's hard to cram for
| this compared to other sorts of tests!"
| mkl95 wrote:
| Take home OR coding challenges is a false dichotomy.
|
| > In the end, even if these coding challenges might not
| reflect the actual work you do, they might still be
| predictive of success in the job
|
| They are snake oil. You cannot predict success at some job by
| asking candidates to prove their ability at something that is
| only tangentially related to the actual job.
| barry-cotter wrote:
| General mental ability is general, that's the point.
|
| > The Validity and Utility of Selection Methods in
| Personnel Psychology: Practical and Theoretical
| Implications of 100 Years of Research Findings
|
| > On the basis of meta-analytic findings, this paper
| presents the validity of 31 procedures for predicting job
| performance and the validity of paired combinations of
| general mental ability (GMA) and the 29 other selection
| procedures. Similar analyses are presented for 16
| predictors of performance in job training programs.
| Overall, the two combinations with the highest multivariate
| validity and utility for predicting job performance were
| GMA plus an integrity test (mean validity of .78) and GMA
| plus a structured interview (mean validity of .76). Similar
| results were obtained for these two combinations in the
| prediction of performance in job training programs. A
| further advantage of these two combinations is that they
| can be used for both entry level hiring and selection of
| experienced job applicants. The practical utility
| implications of these summary findings are substantial. The
| implications of these research findings for the development
| of theories of job performance are discussed.
| cutenewt wrote:
| Do you have any insights on what kind of "integrity test"
| they used?
| mkl95 wrote:
| > General mental ability is general, that's the point
|
| I've seen PhDs melt under pressure at two different jobs.
| Which tells me that an exceptional IQ or work ethic
| doesn't necessarily equate with success in the industry.
| Those two people had something in common, and it was
| their poor communication skills, both input and output.
| If your brain cannot process some coworkers feedback
| efficiently and it cannot spit out feedback efficiently,
| the logical / mathematical side of your brain is not
| going to make up for it.
| rmbyrro wrote:
| > they might still be predictive of success in the job
|
| Basing an assumption out of thin air like this, we can throw
| the opposite argument: 'they might be predictive of _failure_
| in the job '.
|
| Writers of bad code and choices mentioned by OP were likely
| hired out of a fantastic hacker rank score, and yet failed to
| produce good output.
| samstave wrote:
| 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.
|
| Create various stack models to throw at teams based on team
| skill-set.
|
| Never hire individuals. Hire strong individuals who can work in
| a team.
| dmkirwan wrote:
| I totally agree with you. Some of the content there seems
| relevant to CS in general, but I hate the fact that you need to
| study content that you won't use on the job in order to pass an
| interview. It doesn't make sense to me. I've seen new grads
| perform as well as senior engineers with these Leetcode-style
| questions so I've stopped using them to assess engineers.
| Further, I know we're specifically trying to assess technical
| ability in an interview, but that's not the whole picture for
| an engineer. They need to be able to take feedback well and
| provide good mentorship also. I think we miss this.
|
| Inspired by some realistic interviews that I did recently, I've
| been working on something[1] that aims to equip companies to
| hire engineers using realistic assessment methods. It scales
| like Hackerrank, but I think it's fairer.
|
| [1] https://devscreen.io/
| WalterBright wrote:
| > I have had literally no opportunities of applying the stuff
| I've learnt on HackerRank
|
| I have. Many times.
| game_the0ry wrote:
| Yes, the opportunities are possible, but exceptional.
|
| For the most part, you will be wiring crud APIs or trying to
| figure out why your button is misaligned by 12 pixels. Those
| problems also pay better too, bc those are business problems.
| The hackerrank problems have mostly been solved.
|
| Think about that - you think Ed Dijkstra or Tony Hoare ever
| made more than a facebook swe?
| mkl95 wrote:
| If you are THE Walter Bright, I have no doubt you have.
| Respect
| adam_arthur wrote:
| The whole psychology around tech interviews tends not to be
| focused on the right things. At least in the general sense, a
| lot of it appears to be people copying others without
| understanding the motivations.
|
| The theory of interviewing should be to ask questions that are
| as predictive as possible e.g. success on the interview
| correlates as closely as possible with success on the job. The
| strengths needed will vary greatly by the role, company, and so
| on.
|
| But what you tend to see is, everybody has a handful of "pet"
| questions that they ask over and over, without applying strict
| rationale for why its predictive to success.
|
| Personally, any good interview question must both be iterative
| and highly correlated with actual work. Questions that have one
| "trick" and judging on that basis is a poor interview.
| Questions that focus on data structures or algorithms that
| aren't going to be relatively common are also poor. Questions
| which lack real world applications, also poor.
|
| At least for me, I have a handful of questions, but one of my
| basic ones is to implement a certain data structure. And
| honestly, I care more about seeing the naive solution than the
| highly optimized one... because I care first and foremost that
| the candidate can code proficiently. The naive solution is
| super easy and requires little theoretical strength... but it
| becomes very obvious how proficient of a coder they are by
| seeing them write out the solution. How quickly can they write
| it? Do they make syntax errors? How long to grasp the intention
| of the question?
|
| Some write the solution in 5 minutes, some take 40 minutes.
| That gap alone is probably the most strong predictor.
|
| There is a more theoretically optimal solution, but I just
| followup at the end and we'll talk through what it could be.
| But if somebody can hammer out a naive solution with good code
| quality, quickly I weight that about 90%.
|
| But my company also needs strong coders over particularly
| theoretical people. One of my best coworkers bombed on a tree
| interview questions I asked... but I could tell from all the
| supplemental details that he was very strong.
| game_the0ry wrote:
| Bingo.
|
| It should be telling that there are a number of, usually for-
| profit, resources for prepping for just the interview process:
|
| * leetcode
|
| * Cracking the Coding Interview
|
| * Elements of Programing Interviews
|
| * Interview Kickstart, which costs like $5500, is a bootcamp
| just for passing interviews
|
| * educative.io
|
| * algoexpert.io
|
| That being said, I might just play along with the DS / Algo
| interview game. Having an interview process that is
| artificially arduous and way outside the expectations of the
| job duties means that the job market will stay artificially
| inflated on the demand side. Hiring leetcode monkeys who can
| barely deploy and manage k8s cluster on AWS means the demand
| for my skills will be more valuable than if the interview
| process actually worked. I can complain all day to my bosses
| about how hard it is to hire (its not that hard) and meanwhile
| rip their HR budget to shreds when I threaten to leave unless I
| get paid more (I've done that before, I recently got a
| promotion and 50% raise on base alone).
|
| So yeah, I'll gatekeep as long as others play too. I hate the
| game, but I will play it to my advantage.
| majormajor wrote:
| What is that supposed to be telling? There are a quite a few
| industries where there are profitable neighbor industries
| around breaking in to it. Even ones with licensing and blah
| blah blah instead of whiteboards.
|
| Hell, the cynics would call the entire current university
| system one! And if not that, than it least the massive
| industries around _getting into_ better schools...
| mkl95 wrote:
| > I can complain all day to my bosses about how hard it is to
| hire (its not that hard) and meanwhile rip their HR budget to
| shreds when I threaten to leave unless I get paid more (I've
| done that before, I recently got a promotion and 50% raise on
| base alone).
|
| Kudos for that. I may be making a similar move soon.
| forum_ghost wrote:
| fermentation wrote:
| Sometime around my Junior year of college my goals shifted from
| "I'm here because I want to learn" to "I'm here because I want a
| job". I was surprised to find that doing well at learning
| (getting As) not only wasn't good enough for an entry level job,
| it wasn't even really correlated. The more time I spent on
| coursework the less time I had to grind through interview
| questions. I wonder if there are any other industries like this.
| jmchuster wrote:
| I was also CS undergrad. I see it more as a choice between
| industry or academia. Junior year i also had to make that
| decision. For industry, that then meant getting into
| internships, which then translated into job offers. You needed
| a minimum level of grades, say, 3.0, and needed to have classes
| on your transcript that looked more like industry software
| engineering, say, operating systems, databases, design.
| Companies cared more about clubs, extracurriculars, side
| projects, and of course you needed to be able to pass your
| interview questions.
|
| While, if i was going for grad school instead, then i'd need a
| 4.0, start taking grad school classes, start talking with
| professors, try to get a job as a research assistant, try to
| find a professor that i could latch onto and start working
| with. And that was a path i had considered at some point, when
| i really did enjoy taking hard classes, going in deep, and
| pushing the edges of my learning.
| analog31 wrote:
| Symphonic musician. The first stage is nailing a blind
| audition, perfectly.
| fortran77 wrote:
| Not anymore! Blind auditions are now a thing of the past:
|
| https://www.nytimes.com/2020/07/16/arts/music/blind-
| audition...
|
| However, since you can't choose your parents or where you
| were born, there's little you can do to prepare for the
| Diversity, Inclusion, and Equity goals. (I could probably get
| a lift by changing my religion. People with the exact same
| ethnicity and appearance as me but of a different faith are
| considered "people of color" by most DEI committees)
|
| I started out wanting a career in music but quickly switched
| to a math major. While I still perform at amateur recitals,
| I'm glad I didn't try to prusue a professional career.
| beepbeepnewnew wrote:
| Even though blind auditions are less and less, I do want to
| add to analog's point that orchestras don't care about
| anything except for how well you can nail a huge group of
| assorted excerpts and whether or not you suffer from
| anxiety that may affect your performance. Plenty of great
| musicians just never get a job because they get a lot of
| anxiety or don't have the patience to practice the same 12
| measures of music for 12 years hoping that the audition
| they takes asks them for that.
|
| Orchestra excerpts are just leetcode for musicians, and
| just as lacking in testing the real qualities of good
| workers, artists, and people.
| madengr wrote:
| gjm11 wrote:
| That article is behind the NYT paywall but the bit of it I
| could see appears to be saying _not_ that
|
| > blind auditions are now a thing of the past
|
| but that they _should become_ a thing of the past, so that
| orchestras can ensure that their makeup (race, gender,
| etc.) matches that of "the communities they serve".
|
| There's a big difference between "one person writing in the
| New York Times thinks orchestras should stop doing blind
| auditions" and "blind auditions are now a thing of the
| past".
| shagie wrote:
| Unlocked -
| https://www.nytimes.com/2020/07/16/arts/music/blind-
| audition...
| fortran77 wrote:
| It is already happening. For example:
| https://www.nationalreview.com/2021/09/buffalo-
| philharmonic-...
| turbinerneiter wrote:
| No clue if this is even remotely true, but here is what I think:
| the most successful companies can basically pick and chose from a
| really large set of applicants. Given this luxury, the can, in
| essence, filter by any kind of metric they want and still get
| loads of suitable people.
|
| I short: if you have a million applications you can sort by GPA
| and still have a hundred people to chose from. Sorting by GPA
| means you will overlook lots of raw talent, but who cares, there
| is still enough real talent in your funnel as well.
|
| For me, someone hiring for a way smaller and poorer company, this
| is actually good. These processes overlook lots of great people,
| which we can snag up.
|
| This observation is based on the behavior of big companies in
| Germany (think carmakers and similar), not sure how well it
| translates to the silicon valley situation, but seems similar.
| xiii1408 wrote:
| Yeah, I'd say this is exactly what's going on at big tech
| companies. Add to that the need for an interview process that
| is very standardized for (1) scalability in a large company and
| (2) legal protection against discrimination (at least
| nominally), and it makes a load of sense.
| wombat-man wrote:
| I feel that the interview format heavily already favors new grads
| who just spent an entire year or more focused on algorithms
| courses and learning a lot of the theory you might get pop
| quizzed on.
| [deleted]
| amznbyebyebye wrote:
| So wait you are smart enough to get into caltech, smart enough to
| graduate with a degree in CS. And yet the curriculum on its own
| does not do a good job enough on its own to prepare you for
| getting a job? Very hard to graduate with a decent GPA in CS at
| caltech and not be able to thrive as an entry level engineer. If
| you got B's in caltech CS I'd make you an offer for 200k+ without
| blinking or even asking you anything.
|
| I have a small friend circle, I would say they're all smarter
| than I am on raw problem solving and intellect capability. They
| came out with better degrees from better institutions. All have
| PhDs and yet they're all facing delays when landing a job. There
| is something definitely broken. I think the industry has created
| this problem and the industry should fix it.
| VirusNewbie wrote:
| Its possible that this is another sign interviewing for
| software jobs is broken, but it is equally possible that this
| shows the skills required to excel in high school and be
| accepted to college are easily gamed and Cal Tech isn't exactly
| filled with the most intelligent problem solvers.
| kolbe wrote:
| This is probably because interview questions are more often
| than not just brainteasers stacked on top of into-level
| content. Much in the same way that juniors in high school
| taking Calculus still need to study for SAT math: it's not
| really consistent with measuring the content of advanced
| courses at top places.
| ZephyrBlu wrote:
| > _If you got B's in caltech CS I'd make you an offer for 200k+
| without blinking or even asking you anything_
|
| Why? This is not necessarily a good signal for competence on
| the job and also doesn't cover people who have lied or cheated.
|
| Also, this wouldn't help create a less broken job market. You'd
| just be breaking it in a different way.
| NERD_ALERT wrote:
| Computer Science is not Software Engineering. A PhD does not
| translate to real world engineering skills. If you just go
| through a bachelors CS curriculum, designed to give a survey of
| all topics in academic computer science, that wouldn't make you
| a competent engineer. This is especially true now that through
| the internet, just about anyone with a laptop can get as good
| as they want at software engineering without ever stepping foot
| in an academic institution. Sites like Free Code Camp, Kaggle
| etc. have torn down all of the barriers preventing anyone from
| learning how to be an incredible engineer. Some of the most
| important software in industry is open source and anyone can
| take the time to learn how to contribute to it.
|
| If I had the choice between a Caltech grad who had all A's and
| no experience or a student from some random state school who
| had interned every summer and contributed to open source, I'd
| pick the latter. Many people are locked out from ever attending
| elite schools in the first place despite competence due to
| coming from poor backgrounds and underfunded highschool
| districts.
| closeparen wrote:
| That's a fair point but the kind of interview this course is
| preparing you for is a CS test, not a practical software
| engineering test.
| SteveDR wrote:
| Yes but the interviews are primarily used to screen
| candidates for SWE roles
| Firmwarrior wrote:
| > If I had the choice between a Caltech grad who had all A's
| and no experience or a student from some random state school
| who had interned every summer and contributed to open source,
| I'd pick the latter.
|
| I really wish someone had explained this to me while I was in
| college.. I had ONE professor who'd actually worked in the
| real world who explained it, but all the other professors
| were lifetime academics who just parroted the same idiotic
| stuff about how important it is to get good grades.
|
| Getting my first engineering job after I graduated was a
| nightmare.. I ended up having to go with a crappy internship
| that barely paid enough for me to live in a bedroom in a
| shared house, with a terrible boss who constantly threatened
| me and stressed me out. And that's with a 3.8 GPA.. When I
| told prospective employers that, they were like "What is
| that? Out of 4? 5? Is that good?"
| mettamage wrote:
| A lot of talent is wasted by young people doing their
| utmost best at uni only to find out that no one cared. I
| applied to FAANG after graduating CS and no one got back to
| me.
|
| A friend of mine in the HFT world told me "I know how hard
| some of your courses were. But you can't highlight them on
| your cv because no one will believe you that they were that
| hard. And even if they did, they wouldn't believe that
| those skills are transferable."
|
| Going to yet another job interview, I spoke to my
| interviewer who had a similar CS specalization but from
| another uni. He told me "my master was of baaad quality." I
| responded with: "mine wasn't, and my classmates all feel
| the same because we've learned practical skills and our
| teachers prided themselves in giving difficult yet
| practical courses." He looked at me with disbelief.
| gcheong wrote:
| The industry recreates the problem every so often with
| different variants. Previously it was the Microsoft/Google
| "thought problems" such as "Why are manhole covers round?" and
| "How would you estimate the number of gas stations in a city?".
| onion2k wrote:
| Thet change when they realise the current method doesn't
| actually work. They're not recreating the problem; they're
| looking for a solution.
| ivanamies wrote:
| >If you got B's in caltech CS I'd make you an offer for 200k+
| without blinking or even asking you anything.
|
| thanks, it means a lot you trust my ability so much :)
|
| >All have PhDs and yet they're all facing delays when landing a
| job. There is something definitely broken.
|
| Everyone agrees it's the leetcode interview format. I agree to
| some extent, but I wouldn't throw it out completely. For me, I
| give four problems, and the candidate must solve two of the
| four with full internet access in an hour. It seriously reduces
| interview day variation for good candidates. If they can't do
| graphs but can do text formatting, they get a pass. I'm sure
| there's still some better way of doing this.
| majormajor wrote:
| Here we see what the alternative to whiteboard interviews:
| credentialism. Get into the right school and muddle through and
| get a guaranteed 200k!
|
| Is there more to you than your high school performance? Push
| back against this if so!
|
| (Calling the interview Leetcode is misleading IME, since I've
| rarely been asked something that would be near the upper tiers
| of that site's difficulty).
|
| Top-tier tech companies face a LOT more competitive pressure
| than top-tier universities; why should I trust the university
| selection process more than those corporate hiring ones?
|
| Ask yourself why the rest of the industry isn't happy to simply
| hire every B student from CalTech/Stanford/MIT/Ivies without an
| interview?
| yodsanklai wrote:
| > 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 these few
| schools can provide, and they do so globally, from countries
| that may not have such elite schools.
| SteveDR wrote:
| > 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).
| majormajor wrote:
| Needing to hire more than just the top schools graduate is
| certainly a reason companies can't limit themselves to
| university selection processes.
|
| But that's not all that's going on here! CalTech is pretty
| selective as far as US schools go (6% acceptance rate).
| Slightly more than MIT, slightly less than Stanford. SAT
| score stats all in the same 1500+ range.
|
| But they're offering this course, and that makes me think
| that no, the worst student from these schools _in the US,
| at least_ cannot nail any algorithm interview with minimal
| prep!
|
| And that makes sense, from a US perspective! Getting into
| CalTech or Stanford or MIT is about doing well at _high
| school /early-college level material_ in high school, and
| about extracurricular activities, with a dash of being able
| to afford it and being told it's something you should try
| for. Most of that high school curriculum - even most
| college-level CS material - isn't super applicable to a
| software engineering job. It's heavier on memorization (we
| have google for that!) and it's heavier on theory than on
| creative application of things.
|
| I might argue that any test or course where the answers to
| the exams come straight out of the textbook isn't worth as
| much as it used to be, since we've got Google and SO and
| all the books too!
|
| That's a big part of why a lot of these whiteboard
| interviews aren't simply "write out Dijkstra's algorithm"
| (boring, textbook!) but are about seeing if you can figure
| out how to use apply CS in a situation where the way the
| problem maps to the algorithm isn't immediately obvious.
|
| Creative work has a long history of not aligning well with
| traditional US university admissions criteria and
| evaluations.
| [deleted]
| giantg2 wrote:
| "So wait you are smart enough to get into caltech, smart enough
| to graduate with a degree in CS. And yet the curriculum on its
| own does not do a good job enough on its own to prepare you for
| getting a job?"
|
| This was my first thought too. A course just for passing
| interviews seems odd. We had two small activities that were
| part of a business course (business administration minor), but
| after hours. One was a mock interview to give you feedback
| about professional appearance, not fidgeting, etc. The second
| was a mock business dinner to provide feedback about etiquette,
| customs, etc. These were valuable, but they focused on soft
| skills that aren't covered in the regular course content.
| dvt wrote:
| If you don't think modern interviewing practices are a problem,
| this should be proof enough. Not only do we have an entire
| programming book sub-genre dedicated to this nonsense, but now
| we're also wasting class time on memorizing sorting algorithms.
| Fantastic.
|
| Of course, we're going to see the inevitable arguments that "40%
| of the people I interview lie on resumes" or "I interviewed this
| guy once, and he couldn't even write one line of code"--let me
| pre-empt that by saying if you ever get to that stage, your
| screening process must absolutely suck and it's still your fault.
| I've interviewed dozens of people and never had that experience,
| because I check OSS contributions, professional history,
| published material, and ask for code samples before I even engage
| with a candidate in a technical discussion. It's not rocket
| science.
|
| I've told at least 5 or 6 companies that wanted to white-board me
| to suck it. It's honestly insulting that I'm forced to white-
| board when I have two books with my name on them (published by
| Apress), contributions to Golang (small commits, but they still
| got me in the AUTHORS file), and OSS projects with hundreds of
| stars on GitHub.
| ignoramous wrote:
| > _Not only do we have an entire programming book sub-genre
| dedicated to this nonsense..._
|
| Mate, wake up: ~billion dollar "interview prep" start-ups are a
| thing.
| giantg2 wrote:
| Sell shovels to the miners instead of mining for gold
| yourself.
| interview_anon wrote:
| santiagobasulto wrote:
| I agree with you; the whole interview process is broken.
|
| But looking at the bright sight, teaching young people how to
| "work the system" is not a bad thing. Again, we should fix
| interview. But in the meantime, a class specializes on "how to
| beat the man", looks like a fun class where you can learn more
| than just CS.
| barry-cotter wrote:
| > I've interviewed dozens of people and never had that
| experience, because I check OSS contributions, professional
| history, and ask for code samples before I even engage with a
| candidate in a technical discussion.
|
| How are you supposed to hire 50,000 people a year with a
| process like that? It seems unlikely there are much more than
| 100,000 people with significant OSS contributions in total.
| Published material isn't going to be much more than that if it
| b even gets that high. And most people who are good at
| programming will have nothing for either. If you're not going
| to spend at least ten, more likely 20 hours calling up
| references your going to be fishing from a pretty narrow pool
| there.
| dvt wrote:
| > 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 nonsense--
| there are entire companies that serve at the white-board
| interviewing altar (Triplebyte, Coderbyte, Hackerrank,
| Leetcode, Turing, Toptal).
| barry-cotter wrote:
| If it is completely trivial to fix the busted status quo
| you should be able to make a great deal of money doing so.
| Those companies you named exist to get people hired. If you
| have an alternative system that works you will be fishing
| from a different pool of candidates. That didn't work for
| starfighter.io. If you can make it work for you you'll get
| very rich.
| Apocryphon wrote:
| Did any company even take Starfighter seriously? The
| companies the previous comment mentioned are at least
| used in industry. Even Google or ex-Google employees have
| gotten into this with Byteboard:
|
| https://techcrunch.com/2022/01/26/byteboard-nabs-5m-seed-
| to-...
| jmchuster wrote:
| 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 25,000 engineers a year.
| lhorie wrote:
| I think the more important overarching point is that most
| candidates aren't prolific github people like you, and
| likewise most companies are not going to cater their
| interviewing practices to woo your preferred flavor of
| interview style.
|
| Most candidates don't have code samples laying around (e.g.
| they only write proprietary code for work), so asking for
| some is a non-starter in a lot of cases.
|
| Another point worth of reflecting, your accomplishments in
| OSS say nothing of interviewing expertise, they are
| completely different skillsets. Companies may not hire in
| the order of 50k people a year, but interviewer calibration
| in a large org is absolutely a problem that isn't easily
| solved by just following the opinion of some random 6-digit
| salary SWE.
|
| As someone who's interviewed in the order of a few hundred
| senior SWEs, I think there are good and bad ways to go
| about any interview format, including leetcode-style.
|
| Complaining about how companies don't just throw away their
| interview practices in favor of [insert pet format here]
| doesn't really help, since it isn't really actionable.
|
| We talk about the perils of full software rewrites, I think
| similar concerns exist for hiring as well.
| pthread_t wrote:
| > OSS projects with hundreds of stars on GitHub
|
| I'm in the same boat, yet most companies don't seem to care
| about OSS contributions, despite their rhetoric.
|
| They want us to solve a few leetcode medium/hard questions
| within the span of an interview.
| tuckerman wrote:
| The class is being taught in the Computer Science department,
| not the software engineering or programming department. I think
| the bigger issue is the conflation of CS and SWE.
|
| To your point about how you interview, unless there is an
| alternative I would never be able to apply to your company. I
| have no open source contributions or code samples to share and
| no interest in writing a book. I also have no interest in
| applying to places with take home exams where the company gets
| me to spend time interviewing without a commensurate investment
| of time on their part.
|
| Where does that leave us? I guess it's not ideal but, at least
| for me, the current process seems like it's at least a local
| maximum.
| pthread_t wrote:
| > without a commensurate investment of time on their part
|
| Doesn't grinding LeetCode apply here as well?
| paradygm wrote:
| > I've told at least 5 or 6 companies that wanted to white-
| board me to suck it. It's honestly insulting that I'm forced to
| white-board when I have two books with my name on them
| (published by Apress), contributions to Golang (small commits,
| but they still got me in the AUTHORS file), and OSS projects
| with hundreds of stars on GitHub
|
| That is all commendable but none of that tells me if I can work
| with you. When I interview candidates I use whiteboarding as a
| collaborative opportunity to see how the interviewee thinks. I
| treat it as a similar experience when I am the one being
| interviewed, which is why I have never understood the hostility
| toward whiteboarding. How else in the limited window of time
| that is the interview can I learn as much about the people I
| would be working with?
| literallyWTF wrote:
| This is the dumbest excuse for white boarding/l33t code that
| isn't even applied in real life.
|
| You can be the most pleasant person who's articulating their
| thoughts in simple and easy to understand ways and if you
| don't solve the bullshit problem in o(-1) time you'll get
| rejected.
| pthread_t wrote:
| > a collaborative opportunity to see how the interviewee
| thinks.
|
| In principle, this sounds great. In reality, if the
| interviewee fails to come up with the correct/optimal
| solution for the duration of the interview, they are going to
| be rejected.
| gedy wrote:
| > I have never understood the hostility toward whiteboarding
|
| Maybe you haven't been blown off and treated like an idiot by
| some interviewer when you couldn't answer their pet question?
| Even when you're more experienced and skilled than they were?
| carabiner wrote:
| Do you think companies would make more money if they altered
| their interview practices? Or is this way of interviewing
| somehow morally wrong ("insulting")?
| Swizec wrote:
| The problem with looking at OSS and publications is that this
| penalizes a lot of people with real lives outside of work.
| Especially problematic if you're into equitable hiring
| processes aiming to hire people who aren't in their 20's
| anymore.
|
| Looking at past work penalizes people who primarily have
| experience in large systems where their work is NDA'd,
| impossible to understand without a loooot of background, or
| simply unshareable for any number of reasons. Also really bad
| for new entrants into the industry. They don't have past work.
|
| The take-home exam penalizes people who have lives.
|
| The "do smol thing together so we can talk about it" interview
| penalizes people with performance anxiety.
|
| There is no silver bullet. But if I'd have to choose, I'd pick
| the least bad typical interview approach that judges everyone
| based on their performance on a small job-relevant task. At
| least you avoid a lot of bias.
|
| source: I've interviewed over 100 engineers over the past 18
| months as we scaled the engineering org roughly 3x. I honestly
| don't even look at candidates' resumes anymore (this is after
| initial screens have been made) because it always leads to
| bias.
| pthread_t wrote:
| > The "do smol thing together so we can talk about it"
| interview penalizes people with performance anxiety.
|
| Does this apply to the Leetcode style interviews?
| Swizec wrote:
| If they're any good.
|
| But really, it depends what people think of when they say
| "Leetcode style interview". There's a lot of coding
| interviews that superficially look like stupid leetcode,
| but the job really does benefit from that.
|
| A basic example: I ask you to model some toy problem as a
| state machine. Is that a stupid leetcode challenge? Maybe.
| But many if not most complex UI interactions really are
| state machines and if you're the kind of person who
| intuitively thinks in state machines, you're going to write
| more maintainable code.
|
| My personal blind spot is that thinking in graphs is
| difficult for me. I just fail to see _"Oh, this is a graph
| problem!"_. A lot of times the code I write would be much
| easier to maintain and write had I realized I'm solving a
| graph problem. Better performance too.
|
| edit: if you mean the performance anxiety party, yes.
| Several research papers have shown that anxiety induced by
| the interview context impacts people's performance.
___________________________________________________________________
(page generated 2022-02-27 23:00 UTC)