8 ms·
The illegible nature of software development talent
- nyeah 1y ago[flagged]
- hackthemack 1y agoThe content of the article about how do you measure software talent hit home with me. I am not saying I am some x10 developer, but all the metrics used at the companies I worked at just do not capture what makes a good software developer employee. Today's hiring process feels like you have to go memorize algorithms instead of valuing things an employee actually has done in the past. And if the thing that was done in the past is something older, like Ruby on Rails, or an old PHP project it actually has a negative connotations in respect to hire-ability.
- bartread 1y agoA nit, but Ruby on Rails isn’t “old”. It’s mature. It still receives regular updates and release, even major version releases. What it isn’t any more is new or trendy. Still pretty widely used though, and with good reason.
- fragmede 1y agoNot pick on Ruby, but is it a good reason? You've got 1 million lines of code and they’re written in Ruby and rewriting it would be, ah, untenable. But would ruby be the best choice today if you were starting from scratch? Maybe! But sheer inertia isn't a good reason in and of itself.
- dasil003 1y agoHe didn't say inertia, he said mature. It take a while for a language/platform to develop a solid ecosystem and stabilize. That absolutely has value, and is something you can't get out of a new system no matter what novel problems it solves. As far as new apps go, yeah I think it's still pretty optimal for a huge swath of web apps, especially for early incubation when you have <20 engineers and you need to move quick. Not if you need web sockets, or other concurrency / performance critical applications though.
- fgonzag 1y agoYes, I'd also think it's a great idea to build new apps in a language currently undergoing a distribution & supply chain war between the interested parties.
- fgonzag 1y agoIsn't the ruby gems community currently imploding and in the middle of a hostile takeover? Also I've read about quite a few recent politically aligned actions in the community. I don't know if I'd call that "mature".
- tdeck 1y agoThe same could be said about WordPress but it's hard to argue that isn't mature in the sense that your parent comment was referring to.
- NoMoreNicksLeft 1y agoIt's not just the metrics. Over the years I've come to realize that in many cases these companies just sabotage the talent they do have. My own performance when I have my own office vs. when I didn't is night and day. The possession of an uninterruptible space for a few hours a day, of perceived privacy (a cubicle is little better than a dog crate)... And in many of the places where I did not have an office, it wasn't because none were available. In most of the jobs I've worked, there have been multiple vacant offices going unused or becoming junk rooms where they stash old equipment to keep it out of the hallways. Autonomy to solve problems... I don't know how many places I've been where it was tacitly supported for people to goof off for 20-30 hours a week, but god forbid you put effort into work that hadn't been directed from above. And on and on and on.
- rglover 1y agoThis is what happens when you let people other than the ones doing the work do the hiring. Everybody leans on leet code and chasing the bleeding edge (buzzwords) because that's as far as the HR department's understanding of the technology that pays their salary goes.
- jrowen 1y agoIs it just me or is [il]legible the word of the month somewhere? I suddenly keep seeing this word pop up in contexts I would not normally associate it with.
- hackthemack 1y agoI find the use of "illegible" in the title weird myself. To my mind, the word they should use is Intangible.
- deleted 1y ago[deleted]
- xbar 1y agoHe is leaning into this month's denotative abuse word: illegible. I prefer "inscrutable" in this context.
- jakewins 1y agoWe live in a small echo chamber :) It seems extremely likely the author of this post wrote it after reading the other post from the other day.
- jrowen 1y agoTo this point, it is actually wild how we each see a different projection of the chamber depending on which articles and threads we dive into. As much as I feel like I "know" HN, I do marvel at the entire subsections of the discourse I'm completely oblivious to, and this is an interesting cross-pollination.
- Cyphase 1y agoThis usage originates from Seeing Like a State. There was an HN thread the other day as well: https://news.ycombinator.com/item?id=45505539 https://news.ycombinator.com/item?id=45505539
- tikhonj 1y agoIt's used here as a specific term from Seeing like a State[1][2], which is one of those books that got popular with a specific set of online tech folks. "Legibitility" in that particular sense is a very useful concept with no other convenient word, so I'm not too surprised it caught on. [1]: https://en.wikipedia.org/wiki/Seeing_Like_a_State https://en.wikipedia.org/wiki/Seeing_Like_a_State [2]: available free to read online: https://files.libcom.org/files/Seeing%20Like%20a%20State%20-%20James%20C.%20Scott.pdf https://files.libcom.org/files/Seeing%20Like%20a%20State%20-...
- TrackerFF 1y agoIt is interesting, the two best developers I know are on the polar opposite of each other, from the outside. A: Started coding when he was 6 years old, was making 3D games from scratch at 12, and sold his first software at 15. Never went to college, as he was right in time for the dotcom boom. The man just loves coding, and always works on his side projects in his spare time, mostly software he finds interesting. At work, he's the closest I've seen to a mythical 10x B: Hadn't written a line code before he switched majors in college. Went from having zero experience with programming, to being a straight A computer science student, finishing one year faster. Best student prize at university for masters, and then a Ph.D in record time. Writes flawless code, is a top tier architect, and just a machine. Doesn't write a line of code when he comes home (at least according to him), basically severs himself from work as soon as he leaves work.
- laidoffamazon 1y ago> Hadn't written a code before he switched majors in college. Went from having zero experience with programming, to being a straight A computer science student I’ve met these people before, they’re almost always undergrads from elite schools that could pick and succeed at anything they choose
- fnicfnac 1y agoI don't think elite school has much to do with talent just with how visible the things they are trusted with are.. From community college I've met some building things for companies too out of the mainstream to understand how unusual their IT worker was.
- aDyslecticCrow 1y agoPretty much all universes are first and fore-most strong people filters from my experience. The prestigious schools filter up-front based on merit, and filter a 2nd time based on the ability to keep up and remain diligent to pass the courses. Less famous schools only have the 2nd filter, and have more people drop in the process that could not keep up. The quality of education can be very similar, or even favor small schools in some subjects based on luck and school staff interests. The vast majority of learning at this level is made by the student anyway; there is only so much a good teacher or expensive teaching resources can do to help. I've talked with interviewers that seemed completely uninterested in what courses or major was taken, just the fact that someone got through a difficult major as a stamp of quality.
- jaggederest 1y agoBy analogy, I'm reminded of a skit that we did in school: A man, on his hands and knees, searching diligently for something on the ground. Another man, walking by, stops to help search. After a few moments he asks "what are we searching for?" The first man replies "My contact lens" After a minute or two the second man, frustrated, asks "Where did you lose it?" The first man replies "Way over there, but the light is better under this streetlamp." Coding interviews kinda feel like that to me. We can't measure what's important, so we'd better measure what we can measure extremely rigorously.
- moron4hire 1y agoIt's keys, not contact lenses, and it's an old joke.
- tanseydavid 1y agoContact lens is the way I have always heard the joke.
- nimish 1y agoOver a century old! https://en.wikipedia.org/wiki/Streetlight_effect https://en.wikipedia.org/wiki/Streetlight_effect
- loverofhumanz 1y agoIn the oldest reliable references from the 1920s, it was a $2 bill, $1 bill, a watch, and a dime. So keys and contacts are both modern revisions.
- dang 1y agoI thought I sensed the implicit presence of the Quote Investigator! https://quoteinvestigator.com/2013/04/11/better-light/ https://quoteinvestigator.com/2013/04/11/better-light/
- loverofhumanz 1y ago
- sdjcse1 1y agoI hate performing, but I don't know if there is a framework for me or for managers to identify and track such things. The irony is that these things would be visible only when they bite us and when the work is done in such situation the reward is high, I strongly believe it should be other way around because preventing something is far greater than fixing something after it goes wrong, the sad fact is that it is hard to realize the impact of the failure unless it happens and even if highlighted in reviews it is overlooked often.
- hackthemack 1y agoI remember a Doctor Who episode where he said, paraphrasing, "You never get credit for the crisis you prevented before it happened". Sort of https://en.wikipedia.org/wiki/Preparedness_paradox https://en.wikipedia.org/wiki/Preparedness_paradox
- danjl 1y ago[flagged]
- androng 1y agoI think the title of the article should be "invisible" not "illegible"
- d-us-vb 1y agoIt was a deliberate word choice by the author. "Illegible" conveys that it's difficult to track from the outside. It's a clever analogy: illegible hand writing can be read by those who are familiar with the scribe. It's not invisible though: those who work with these kinds of engineers easily see how valuable they are.
- Jtsummers 1y agoIt's not invisible, it's incomprehensible to most would-be employers because the information is not in a form that they can understand. That's not the same as invisible. Passing some leetcode challenges is legible to employers, it puts applicants in the same buckets and measures them in (roughly) the same way. But it's not a good measure of actual talent. The real measures, as discussed in the article are out there but illegible to those employers.
- lkrubner 1y agoIt's not invisible, because some people can see it. It is illegible because the leadership of a large company won't know how to interpret it. This particular usage of "illegible" has been around for awhile, but is probably best known from the book, "Seeing Like A State": https://www.amazon.com/dp/B07D2HZXB4/ https://www.amazon.com/dp/B07D2HZXB4/
- dredmorbius 1y ago"Legibility" is a distinct reference to Tom C. Scott's Seeing Like a State, and the tendency of states (or other large institutions) to attempt to impose legibility on complex problems, domains, or systems, usually in an attempt to manage or govern them, but often destroying that which makes them valuable in the first place: <https://en.wikipedia.org/wiki/Seeing_Like_a_State https://en.wikipedia.org/wiki/Seeing_Like_a_State>.
- porridgeraisin 1y agoI think the number of approaches you can take to reach the same goal/standard increases with how abstract the work you're doing is. SWE is quite abstract. I don't have the greatest work ethic, I waste time sometimes, forget things, am not too organized, etc. It's mostly the fact that 1) I do SWE as a hobby and 2) learn obsessively without BSing myself that gets me into jobs. However my teammate at my last job. He probably didnt have the same level of intimate knowledge of systems as me. But his work ethic was just breathtaking. Mine simply wouldn't compare in a million years. Averaged over a large enough period, we both ended up doing the same amount of useful work. Similarly there were others with different "approaches", just included the above 2 cases as an example. Now. It wasn't the best experiment since we helped each other a lot. But I came away feeling it's true. My hypothesis is that in less abstract work, the number of approaches is limited, and hiring practices in SWE have just been made the same as those jobs. I don't really complain since I really can't think of a framework for hiring for abstract jobs that will yield better results than the current one. But who knows, maybe we'll find one. FWIW, I think leetcode, just one round to bring down the applicant count to a number that's possible to interview {hard if there are too many, medium if there are few, or just Two Sum to weed out folks that can't write a for loop if you have just tens of applicants}, and then system design as the main interview, is a good system. For system design I would skip the common ones like "design a rate limiter/load balancer" stuff that people memorize. IMO it's easily possible to create unique system/API design questions that match the job somewhat.
- gxs 1y agoIt’s almost like the best engineers are, like, people who come in all shapes and sizes Super nice guys, complete assholes, showmen, wallflowers - what they have in common is that they are great at making software There are for sure personally types that are typical in certain traits, but we lose site of the fact that these do not tell you everything about who a person is I likewise can give you stories of the best developers I’ve worked with - from Devry graduates, to high school dropouts, to HYPE wunderkinds - they come from all walks of life
- deleted 1y ago[deleted]
- OutOfHere 1y agoThe problem here is clearly the one doing the evaluation. Why do they even have a job themselves if they're so incapable of evaluating correctly? There exists a quantitative method to correctly evaluate workers: 1. Collect each worker's work outputs and construct a training dataset. 2. Train an AI model with all work outputs combined. 3. For each worker, train a model with their respective work outputs deleted. 4. Construct a comprehensive evaluation benchmark over the full combined dataset. 5. For each worker, measure the change in the benchmark's performance with the worker's specific model relative to the full global model. 6. Fire the workers that lead to an unexpected improvement in the benchmark with their respective worker's model. This means that these workers were not contributing in a meaningful way to improving the performance over the benchmark. Keep the rest.
- tehjoker 1y agoThis is magical thinking with trendy AI mixed in. Every step here has massive assumptions that are just baked in, like can their output be quantified in principle? How expensive is it? Will the model even be predictive? Can you gain the cooperation of workers or even the companies that they work for?
- OutOfHere 1y agoEvery invention is considered magical thinking by some until it is made possible. Nothing I noted is actually magical or prohibited. As for its feasibility, that's an engineering task. No cooperation is necessary from workers. It is in fact much more feasible than developing a modern LLM. As for its cost, various optimizations are possible as with LLMs. Also, there are high costs to incorrect classifications currently made by management, so high that they can result in the disposal of the firm.
- tehjoker 1y ago> No cooperation is necessary from workers. I'm not sure this is ethical tbh.
- StopDisinfo910 1y agoPromotion processes favour people who want to play the promotion game. These are rarely if ever the best people but from a certain point, the ranks are field with this kind of people anyway so they are happy playing together. You can still do a very meaningful and satisfying career playing by your rule if you don’t care about striking your ego so much.
- mathattack 1y agoThis is also why talent marketplaces don’t work so well. We can know who is good for our last situation, but it comes with bias and is very hard to measure. This is true even for jobs that are easier to measure like Sales or Support.
- bironran 1y agoHeh. That's me. The "no presence" part. About the 10x part, ask my colleagues. I want to believe I'm doing some good work but who knows. But the no presence... I've got a kid, a house, a mortgage. I've been in software since I was a teenager. Am I still fascinated by it? Sure. Will I still spend hours and hours of free time? Nop. It long since stopped being a hobby. Right now I like reading and listening to audio books, when I have a break from house chores and child rearing. I like to cook and experiment in the kitchen. The endorphin feedback cycle is so much faster (hours) than large scale software (weeks to years). I like to watch interesting shows on TV. Write. Coding-wise, I'm invisible outside the company I work at. Not strictly a 9-5, but with a kid I do try to have quality family time, so I condense as much as possible to my working day, leaving time to be with my loved ones. If there's something important I'll participate. If there's a pagerduty alarm I'll jump. But otherwise, I'll deal with it tomorrow. I've long since learned to identify real emergencies from artificial urgency "because there's a milestone deadline!". Sure there is. Like the old saying goes "I love deadlines. I love the wooshing sound they make when they go by". Is it a customer commitment? No? Then I'll work on it Monday morning, right now I'm out. I value people like that. Being a hero is a young-people game. You can't be a hero for years and years and not burn out. I've seen that happen. Working every weekend? Then something is wrong with the estimation. Or the design. Or whoever is in charge of priorities. God helps me when I look for a job again. I guess I'll have to rely on references and hope to hell I'll pass the filtering software to actually get someone to look at my application. So far I've been lucky. Last time I actually sent CVs was at the beginning of my career, as a new grad, 20 years ago. Ever since then I was picked out, carried over, invited in by people who knew me. Really, really hoping that'll keep being the case.
- Dan42 1y agoWow. You are me.
- bironran 1y agoI bet "I'm a lot of people". That's the point of the post. We exist, we contribute, some of us are critical. We just don't chase fame, don't care about (much) about recognition (beyond peer I guess) and have interests and ways to occupy our time other than software. :shrug:. I accepted that I won't be a "name". Yet I have made suggestions that were adopted into Spring, I have commented on JCPs, I have talked with antirez (though not much contributed there, I'm still in awe of Redis' internal design). I just... don't care much about other people knowing me beyond what I need to pay the bills and make my immediate peers, manager chain and customers happy.
- binary132 1y agoIf anything I tend to think that the people who promote themselves the most aggressively are the ones who should be looked at with the most skepticism.
- neilv 1y agoEven when companies know they need something more than a normal senior developer, they don't necessarily know how to interview for that. This afternoon, I'm leaning towards bowing out of a supposed more-than-normal engineering role. If I wanted a battery of commodity techbro interview performance art hoop-jumping, just to be allowed to work at a place... then I would've gone to Google 1-2 decades ago, for 2-5 times what this place is offering, gotten rich, and then retired... so that I could then spend all my time making useful and trustworthy software. I know what it's like to have a good interview "loop" for this level of impact role. Both sides of the table seem to value each other, ask good questions, focus on getting a sense of what it would be like to work together on the products/projects, with the team(s), and within the company culture. And see if that's something everyone feels really good about doing. No "I need to haze you to 'understand how you think'". No BS performances of Coding Interview, System Design Interview, and Behavioral Interview, like every techbro is told they must "prep" for. No feeling like the other person might somehow be cheating (because you get the impression that they might be lying trash). No battery of rituals (in some cases) to the exclusion of people who'd be working together actually meeting each other before everyone has to decide whether to offer/join.
- s1mon 1y agoThis isn’t a unique issue with software developers. In many fields, there’s a distinction between show horses vs work horses. A lot of people who spend time tooting their own horn are not necessarily the best at what they do. Finding the best people often involves word of mouth, not measuring git commits, IMDB rankings, design awards, or whatever.
- creer 1y agoPlease maintain your professional social contacts! It's fine not to have a native interest in that. But it's part of the job. No blog or bragging needed. No Linkedin needed even, if you really don't want that one. Catalog and maintain some minimal contact with these people who have seen your work: bosses, colleagues, juniors, vendors, consultants, anyone. Expose a few EXTRA people now and then, so they can see your work. This way, when you need to find a new job after many years hidden in just one department, you will have all these people who moved - sometimes frequently - and only wished they could have taken you with them at the time. And that has nothing to do with "10x" - no matter the skill level you think you have, you'll be better off with a wide set of people who know you. "Know you" to any degree - often people will prefer you to going through the circus of interviewing for pretty random results.
- deleted 1y ago[deleted]
- creer 1y agoSomeone followed up and then deleted - but good questions: We fear imposing on the others. We don't know what to message about. How often? What do we have in common? And I expect most of us have the same concerns. Anyone has interesting recipes on this? I feel that more or less we all have these concerns. One of the solutions is to recognize that both sides of the message will have the same concerns. The other person is then grateful that you did it - instead of bothered. They may well decline - but not angry at you - and accept the next time around 2 years later. What we have in common? We work in the same industry - that's what we have in common. It's enough. And you want to stay in touch with the ones who understand that this matters anyway, the others... less so. Someone posted on HN ages ago about fishing for lunch dates. I have used this one. Having lunch once every few years with an ex-colleague works well. And applies to all kinds of other people that we didn't think of doing that with. Of course many people have no time for lunch with you. Especially if you want it "this week" - but if you are completely open ended as to when, that's will work easier. One I have used is "I'm headed to XXX trade show. Any chance I'll see you there? What are you up to these days?" Same for local interest group meetings. If you notice someone changed job or went to another company (from checking their Linkedin) - sure that's a message right there with an easy topic. How often? 2 years too often? 5 years too little? Something like that. Any other ideas?
- zeckalpha 1y agoRelated classic about information asymmetry: https://danluu.com/hiring-lemons/ https://danluu.com/hiring-lemons/
- jakub_g 1y agoI started my first full time job out of college a bit over a decade ago, in an old-school boring EU "midtech" company. I didn't know this back then, but I was very lucky to have landed in a damn strong team. Fast-forward to today, most of the team members now work for FAANG and other bigtechs... except the guy who was IMO the best of all of us. Still same team, same company, no LinkedIn account etc.
- samrus 1y agoThis is one reason startups can be so successfull. A founder who knows that they're doing will have a team of such illegible (and so undervalued) talent scouted out ahead of time and poach them for their venture. Basically talent arbitrage But talent arbitrage, like any arbitrage closes as its utilized. Basically these people can be rescued by their former coworkers so as long as you make sure to work with people who know talent when they see it in action daily, you will be good
- imron 1y agoI have no linked in and no recent GitHub commits. Who’s hiring ;-)
- ozgrakkurt 1y agoIt is not a legibility problem as much as a risk problem. You can’t bee the guy that hires quirky people to take chances, just hire the “proper” people and move on. It is just not possible to see who is “really” going to be more value anyway.
- commandersaki 1y agoAh what I would give to say that is the best software engineer I've worked with, alas I've been working in a sea of mediocre.
- dredmorbius 1y agoRelated concept: the Market for Lemons: <https://en.wikipedia.org/wiki/The_Market_for_Lemons https://en.wikipedia.org/wiki/The_Market_for_Lemons>. In markets where information on quality is difficult to acquire, assess, and/or trust, you tend to get two results: - Low-quality products flood the market. This leads buyers to assume lower-value products, and hence ... - High-quality products are consistently under-priced. This leads those offering higher-value products to withdraw from the market, or to offer those products (or services) only in limited sub-markets where full value is more likely to be obtained. The problem is a broad one, and long-predates used-car sales. There was a popular late-19th century book David Harum (1898) by Edward Noyes Westcott. All but forgotten today, it was a bestseller at the time and spun off several related franchises, including a 1934 film and 1936 radio serial. The title character was a horse trader, the profession which previously held a similar status to used-car salesman. <https://en.wikipedia.org/wiki/David_Harum https://en.wikipedia.org/wiki/David_Harum>
- SNosTrAnDbLe 1y agoIn my 20 years of engineering, all my distributed systems knowledge was learnt in a period of two years under two amazing engineers working in two failed startups One was like those legendary OG dogmatic distributed systems software engineer that you can meet and the other was an OG data platform person. They have zero social media presence but they have guaranteed jobs whomever they call. I learnt my transactions and services from engineer 1 and my analytic/data platform fundamentals from engineer 2 I have made more money in the enterprise land but I think the two failed startups did 10x more to help me grow as an engineer I am rather confident that an AI cannot come close to what I do and my management knows that
- tangjm 1y agoWhat would a perfect hiring selection process look like? If we think there exists a perfect hiring process, then it would suggest there is a truth concerning who should be hired in each role. Our imperfect real world hiring processes can then be seen as trying to approximate these truths.
- alganet 1y agoThis seems like a romantization of what good developers are supposed to be. Most likely it is an exagerated take on what these individuals were able to achieve, and it downplays the role of HR. Instead of HR being to blame for missing talent, it portrays that missing talent as "inherently stealthy", which might not be as true as reported. Overall, we need less of this kind of mythology.
- wglb 1y agoIts not who you know, it is who knows you.