7 ms·
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 st
by Apocryphon 5y ago
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.
- closeparen 5y ago“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 5y agoYou'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 5y agoThere 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 5y agoYou 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 5y agoI'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.
- Apocryphon 5y agoLeetcode is the new fizzbuzz, I meant.
- interview_anon 5y ago
- giantg2 5y agoI'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 5y agoSure, 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.
- erik_seaberg 5y agoA cert provides formal evidence, but a license grants permission you wouldn’t otherwise have.
- mherdeg 5y agoIs this the Triplebyte model?
- Apocryphon 5y agoI 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 5y agoThat’s more the way employers treat Triplebyte in practice, and it is probably how they would treat any similar attempt.
- 10000truths 5y agoWhy 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 5y agoBy 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 5y agoYea, 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.
- erosenbe0 5y agoIt is already a massive waste of human potential to overstress leetcodes. I'd rather have candidates studying unit test design, debugging, security hardening, technical writing, localization, or pretty much anything else that comes up more often in practical development.
- naiwenwt 5y ago> 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.
- honksillet 5y agoAs 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.
- gaoshan 5y agoI 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 5y agoSure, 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.
- shagie 5y agoWe tried that once. https://ncees.org/engineering/pe/software/ https://ncees.org/engineering/pe/software/ But nobody was interested. https://ncees.org/ncees-discontinuing-pe-software-engineering-exam/ 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.
- SeanLuke 5y agoThis is a test on software engineering, not computer science.
- shagie 5y agoI would contend that it makes it more applicable to the general "what do you do professionally" for most people outside of academia.
- Apocryphon 5y agoIt's interesting how this mirrors the Computer Science GRE subject test being discontinued.
- ThrowawayR2 5y ago> "But nobody was interested." No, no one took the PE exam for software engineering because it was effectively impossible. To become a PE, first the candidate has to pass one of the Fundamentals of Engineering exam to become an engineer-in-training. Except, whoops, there wasn't ever a software specific FE exam; the most relevant one is the EE/Comp. E. exam. Take a look at the list of topics: https://ncees.org/wp-content/uploads/FE-Ele-CBT-specs.pdf https://ncees.org/wp-content/uploads/FE-Ele-CBT-specs.pdf. Most developers aren't going to pass that even with a CS degree. Secondly, you need 4-8 years of job experience while supervised by a licensed engineer. Again, whoops, there are barely any software developers with a PE license, so who would they get to supervise them? Only then do you get to take the PE exam for software engineering and become a licensed professional engineer. Frankly, the situation was so absurd that one has to suspect that NSPE didn't want to certify software developers as PEs.
- someelephant 5y agoFor 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.
- barry-cotter 5y ago> 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-accredited-a-level-gce-computer-science-h446.pdf 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-data-structures https://www.edx.org/micromasters/ucsandiegox-algorithms-and-...
- aiisjustanif 5y agoFor 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.
- qiskit 5y agoOne 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.
- tjpnz 5y ago>One way to bypass these interview tests is networking. Has that ever worked at a FAANG?
- saagarjha 5y agoNetworking will often get you past a phone screen, to be fair. (But not the offsite which is usually algorithms-heavy.)
- jrjarrett 5y agoThat’s not always true. I’ve recommended 3 engineers from my previous company to apply at my current company. All of them I deeply respected for their skills and thought they were smarter than I was. 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.
- singron 5y agoAn 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 5y agoMore 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.
- dilyevsky 5y ago> But people from those places still perform really poorly in interviews at about the same rate as everyone else This doesn’t match my experience at all at least wrt to coding sessions. I don’t think I ever had someone from goog/fb bomb a coding part but I regularly had tenured engs from other well known shops not being able to code 2 nested for-loops // I did 200+ of interviews not counting when I worked for goog myself
- ipaddr 5y agoA successful engineer at well known shops will fail a pressured evaluation where a google engineer will pass the interview. It make sense because google's interview process is harder. That says nothing to what happens after they get hired. It also doesn't tell you tenured eng can't do two for-loops. It probably tells you that this person hasn't been interviewing for years. You are a part of their process and are a practice interview. Each time this candidate interviews they will get better and hired. If a person is really good at interviewing that probably means they do it a lot and are probably looking at moving more often. If you want to hire someone who will stay you need I would give tenured engineer a chance they will probably blow you away.
- dilyevsky 5y ago> A successful engineer at well known shops will fail a pressured evaluation where a google engineer will pass the interview. It make sense because google's interview process is harder. Nonsense. Googlers will pass bc they on average ship more code than an average eng at all other companies i worked for combined together. More code written -> more practice -> better outcome in coding sessions. It’s not really a great mystery. I can only assume same is true for fb based on the outcomes I’ve seen personally > If a person is really good at interviewing that probably means they do it a lot and are probably looking at moving more often No it doesn’t mean that. It’s also really obvious from the resume
- shahbaby 5y agoReminder, 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 5y agoThe 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 5y agoThe curse of a field which is both competitive yet difficult to measure. A meritocracy where your true status is opaque.
- bluedino 5y agoThe 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.
- erosenbe0 5y agoA license exam would ask practical engineering questions adjacent to safety otherwise it would not be warranted as field needing a license -- control systems, finite state machines, power consumption, queueing theory, poisson processes, etc.