9 ms·
Well argued, but you didn't address the need for tests and/or certifications to prevent companies from being overwhelmed by a flood of unqualified candidates.
by Jistern 4y ago
Well argued, but you didn't address the need for tests and/or certifications to prevent companies from being overwhelmed by a flood of unqualified candidates.
A doctor, lawyer, public accountant, and, well, many types of engineers obtain public or private certifications. As a result, it is much, much, much easier for hiring companies to find and interview qualified candidates.
I suppose, in the "old days" universities kind of, sort of, filled this role. A hiring manager looking at a resume might have said, "Oh, he's got an EE/CS from Berkeley, there's a good chance he's qualified.
- eikenberry 4y agoThat's because programming is nothing like any of those professions. How many certificates do you see for musicians, painters, photographers? Programming as at least as much an art as it is anything else and art is very hard to quantify in the types of tests that most certificate systems use. It requires a project based certificate which needs more organization that exists today. IMO it'd require a guild like setup that I don't see happening anytime soon.
- hughesjj 4y agoThe worst part is we often can't share our artistic work with future employers due to IP concerns.
- Quikinterp 4y agoWhen so much of my resume is NDA'd it really starts to feel like "I'm a great painter, I promise, I'm just not allowed to show you any art I've made"
- hughesjj 4y ago100%. On the other hand, open source culture is vastly different from proprietary culture. So many times in proprietary culture I've churned out craptastic code to meet a deadline that didn't matter for a project whose customers were straw-persons. There's definitely some projects or features I've coded which I'm glad to hide from public view. That said, artists can curate their portfolio, and unless they're presenting to a public forum, their turds won't have to see the light of day again.
- MaxBarraclough 4y agoVarious non-software engineering disciplines implement chartered engineer schemes. I imagine there's an element of artistry there too, but they seem to cope.
- eikenberry 4y agoCurious if you'd consider this Wikipedia article on the topic to be a decent representation? https://en.wikipedia.org/wiki/Chartered_Engineer_(UK) https://en.wikipedia.org/wiki/Chartered_Engineer_(UK)
- MaxBarraclough 4y agoThat's the stuff I was thinking of, yes. As a software person I don't know enough about the scheme to comment on the quality of the article, but knowing Wikipedia I imagine it's on point. edit For a broader context than just the UK, see https://en.wikipedia.org/wiki/Regulation_and_licensure_in_engineering https://en.wikipedia.org/wiki/Regulation_and_licensure_in_en...
- eikenberry 4y agoThanks!
- AstralStorm 4y agoBig difference is that there are standards and accepted practices in the fields in detail. Nothing like that exists in programming, not even languages or platforms. Which is why there exist multiple proprietary certifications instead focusing on specific details.
- Jistern 4y ago>> Big difference is that there are standards and accepted practices in the fields in detail. I agree. After enough bridges fell down causing massive human fatalities, standards and accepted practices almost certainly "emerged." Standards and accepted practices in software engineering will emerge, as if by magic, once enough "bridges fall down."
- neuronic 4y agoEspecially since the entire industry is constantly hiking on the St. James to find its inner self. Philosophies change and we notice tidbits that are good, tidbits that are bad and keep changing and renewing... Almost like fashion. At least in Europe, young people dress like a Stranger Things inspired mashup of 70s, 80s and 90s nowadays picking the best parts of those decades while leaving the 2000s and 2010s fashion in the dust. Are you gonna do a certificate on microservices? And what's that gonna help when suddenly everyone starts building some shape of monoliths again because people keep running into the "no free lunch" issues?
- philwelch 4y agoIf programming is an art, then the programmer should have an audition instead of an interview. Which is approximately what leetcode is.
- AstralStorm 4y agoExcept that would be like asking say a piano performer to run Liszt etudes mechanically, when you're hiring someone to play at your wedding. Completely different skills. Sometimes, you do need someone with these skills. These times are few. Often, a person forced to train to this test will neglect other skills or be unable to match top tier performance in the weird test. Wrong audition can be worse than no audition.
- trashtester 4y agoSome programmers are like wedding singers, some play for a global audience. If you hire a piano player for large symphonic orchestra, or a famous band, and they are not already famous, you want to hear them play. Maybe one piece they chose themselves, but maybe also a piece everyone in the genre is expected to know. And if they have to improvize a bit, that may tell you a lot, too: https://www.youtube.com/watch?v=HtI3IMlGRMY https://www.youtube.com/watch?v=HtI3IMlGRMY Sometime you meet programmer like this, than you can jam with on almost any topic. Those that can repeatedly improvize their way to "leetcode" solutions, while you observe their thinking process. The "problem" with "leetcode" is that it has become too common and formalized. When people start to practice leetcode just to land the job, it suck the fun out of it, and it becomes harder to tell if the candidate is able to solve similar, but novel problems.
- 331c8c71 4y agoNah. There is a longstanding tradition of competitions in classical music, especially for piano players. The vast majority of concert pianists got some notoriety through such competitions. And no, improvisation skills are not something classical pianists are judged upon. Orchestra musicians indeed are routinely hired via a process that involves auditions, but my understanding is that applies only to those at the beginnings of their careers. Popular/rock/jazz band formation process IMO is indeed similar to how start-ups are created (i.e. rather informal process generally based on networking, though audition jams also happen to fill a specific position). I fail to see how corporate staffing is similar.
- Jistern 4y ago>> That's because programming is nothing like any of those professions. That assertion is blatantly wrong. Software engineers are like civil engineers and mechanical engineers because, ummm, yeah, of that word engineer. See? I found the following on The Internets... "California licenses Professional Engineers in the following engineering disciplines: Agricultural, Chemical, Civil, Control System, Electrical, Fire Protection, Industrial, Mechanical, Metallurgical, Nuclear, Petroleum, and Traffic." It's almost certain that software engineers will be licensed... just like many other engineers. Why? Because certification helps to ensure people who call themselves "software engineers" meet certain standards. Just like blind people normally aren't able to obtain a driver's license, people who can't solve FizzBuzz shouldn't receive a license to be software engineers. You are always free to launch a revolution in the hopes of overthrowing your national government so that you can make the regulations and laws you would like. In the meantime, when the jurisdiction you are in creates a requirement for certain software engineers to become certified (not "if" but "when"), even if the law were to apply to software engineers like you (the arrogant artistic types, you know what I mean, right?), I suppose you'll probably be grandfathered in because governments usually don't want to fight too hard to initiate new regulations and laws. Grandfathering the "crusy old-timers" like you keeps you off their collective back because, at the end of the day, you probably don't really care about the issue generally. You probably simply don't want to be bothered to spend the time and energy to become certified.
- gautamdivgi 4y agoAgreed. That's what LC is filling these days. It's a kind of "qualification" in an unregulated industry. The doctor has the MD, the lawyer a JD, public accountant CPA, etc. There is no base minimum that a software engineer is required to have. Even tradesmen are required to be licensed which follows some certification. The other aspect I would mention is that the LC style interview has made it possible for a candidate not to bother about their relationships with their existing employer. It is not so for other professions. A doctors career can be nuked by unfavorable recommendations by their existing employer. This is what every "I don't like LC / LC is harmful" post doesn't address. - How do you certify? (and no, a profile of github projects doesn't count) - How do you make the candidate free of any obligation to his current employer? LC interviews are the symptom, not the cause.
- yieldcrv 4y agoI think everyone gets that, and are still saying go get some more inspiration. for example, go back to training people on the job. If the company really thinks they need someone that can hit the ground running they could have trained someone that demonstrated other experience far faster than the same 7 months the job opening was there for.
- erik_seaberg 4y agoBefore the Web, we were paid like accountants and job hopping was frowned on, so nobody was highly motivated to scam his way into a brief stint he wasn’t qualified for.
- hughesjj 4y agoLeetcode was created in part to be more equitable and objective. Before leetcode, we had people asking puzzles which had nothing to do with your coding abilities, like "How many balls could fit on a Boeing 747" or "If you have 9 balls, a see-saw, and one ball weighs more/less than the others, what is the minimum number of weighings to find said ball". Alma matter also used to matter a bunch more, and non-traditional schooling devs were much harder to come by. Leetcode isn't perfect, but it's better than what we had before. That said, I don't think it's the "final form" or optimal template for interviewing. What I would love to see are more constructive suggestions for objectively evaluating candidates that don't devolve into things easily bullshitable or biased. I don't think the certificate days would be much use today, given how fast frameworks change and just how many different technologies are involved with modern development.
- AstralStorm 4y agoHow many times have you been asked to solve a leetcode-like problem at work? Ever?
- Kim_Bruning 4y agoHow many times have you been asked to solve fizzbuzz at work? ;-) And yet you can probably fluently juggle for loops and if statements to your heart's content; and can figure ways to bend them to your will (and to the problems at hand). Similar goes for algorithms (the things leetcode questions ask about.) You'll probably never encounter the exact toy problems that get asked in an interview. The real world is always messy, you you need to be creative and imaginative. Knowing algorithms helps with that because you've already practiced, and have a head start in knowing what works and what not.
- throw34 4y agoMe personally, all the time. In fact, I am taking a short break from a problem that reduces to graph coloring with 2 colors. [1] If you interview with our team we will absolutely ask LC style algorithmic problems because one will definitely use that knowledge with us, a lot. The problem is not LC style interviews per se. The problem is not enough companies tailoring their interview to the role they're trying to fill. [1] https://en.wikipedia.org/wiki/Graph_coloring https://en.wikipedia.org/wiki/Graph_coloring
- mrjin 4y agoThis might actually be much worse than just looking at the academical credentials. Most if not all those tests are utterly useless, at best can only tell how familiar the candidates with the test subject but nothing else. Let the team to review the resumes and do phone screening would be much better than those tests.
- unqualifiedRat 4y agoHonestly, what we define as a flood of unqualified candidates is kind of ridiculous, nowadays it refers to anyone who didn't got to a top state school or top 1% equivalent. The reality is that there are too many qualified people at the lower end of the pipeline and this is because we don't hire enough people as it is for our current positions, why this happens is really simple. It's to save money. There's a reason why we have terms like rockstar developer and heavily advertise the idea of a developer doing 1000x work of another one, which simply put is not true. Most improvements to software and technology occur over time with experience and expertise what we see nowadays is an extremely self destructive behavior, at most top companies it results in heavy loss in expertise as most individuals will leave once their stock options can be sold. In order to maximize their profit while providing little to nothing of value to said companies. The idea we pay developers six figure salaries is inflated and has been a net negative. Resulting in inflated egos and an elitist environment which it is debatable to which provides anything of value or close to little at all. We don't really need certification programs as they're typically used to stop minorities from gaining access to fields due to barriers of entry and the fact they are systemically flawed as it results in people just chasing after their next certification as the "logical" next step instead of actually learning anything of value. Honestly, companies just need to be comfortable with hiring someone with a credible degree and taking a chance on them, it's basically the same thing as hiring with leetcode anyways according to google there is very little positive correlation. Anything else is ripe with corruption. But even this process can easily be corrupted, e.g. hiring only people from elite universities or select ones you have deals with in the area which already occurs in many places.
- 331c8c71 4y ago> Honestly, companies just need to be comfortable with hiring someone with a credible degree and taking a chance on them. I'd be all for it and I have seen some international non-profits hiring like that for junior roles. But its a hard sell for googol and the likes who 1) have excess supply of qualified candidates 2) are so used to perpetuating the narrative of absolute exclusivity among their staff.