7 ms·
Once upon a time, the best way to get a software job was to demonstrate your ability to build useful open source projects. 10 years ago the Principal Engineers
by lumost 5y ago
Once upon a time, the best way to get a software job was to demonstrate your ability to build useful open source projects. 10 years ago the Principal Engineers I would work with had super sized open source portfolio's which leant them both credibility and experience building products people liked. Junior devs would search (sometimes in vain) for issues where they could contribute a few PRs
Now the best way to get a job is leet code, leet code, and more leet code. Rather than spending <5 hours a week working with real code and producing real value on open source projects - most career minded engineers will simply focus on leetcode.
Not many people patch esoteric software that's been around for 10+ years because it's particularly fun or because there is specific business value in it.
- ogogmad 5y ago> Now the best way to get a job is leet code, leet code, and more leet code. Rather than spending <5 hours a week working with real code and producing real value on open source projects - most career minded engineers will simply focus on leetcode. Maybe more broadly: The only way to prove that you're good at X, is to do X well. An artist is only as good as his portfolio. The same is true for all creative jobs. I'm thinking that these proxies (see all attempts at standardised testing) are a disease of our time.
- didibus 5y agoI'm not sure I fully agree. Doing open source doesn't mean you do it well. You have no sense of how quickly, efficiently and independently they managed to achieve it. I'd much rather hear from prior experience, and probe about situations and scenarios they were in, projects and problems they contributed too, and hear the story of how they went about it, how long it took them, what they did in the face of setbacks and pressure, etc. I have seen first hand developer that are just okay or below average successfully deliver on open source, because you have infinite time, no constraints, no stress and get to choose exactly what you do or contribute. But in a work environment they struggle, given ambiguous problems they struggle, given time constraints they struggle, given changing needs and demands they struggle, working within a team they struggle, given something outside their area of knowledge they struggle, etc.
- ignoramous 5y agoNeither of those make for good filters; though they are decent enough indicators. Most engs can't be bothered with leetcode, let alone F/OSS.
- watwut 5y agoI don't think there was ever such time. Only a tiny minority of developers ever has open source projects and some companies even actively discouraged that. Moreover, with industry moving towards agile, having project and developing in a company are massively different kind of work.
- jeffbee 5y agoI don't know if that is objectively true. There are numerous small companies who will leetcode every candidate. Then there are Google and Microsoft and the other bigs who hire thousands of people every week, where the best way to get hired is to have a Ph.D and get referred by insiders. Mediocre candidates getting leetcoded by mediocre companies may be a highly visible pattern but on industry scale I am not convinced it is the dominant mode.
- pcwalton 5y agoHaving a Ph.D. and getting referred by insiders in no way reduces the amount of LeetCode you have to grind for Google interviews.
- didibus 5y agoThis might sound weird, but I find every time someone publishes or contributes open source, they are stealing value from me, because it is one less thing that a company will need me to implement, build and maintain for them, instead they'll now expect me to simply use the existing free of charge open source one. Not only does it feel like I'm stolen value, open source work tends to be the most interesting, and as more and more is done and offered for free, my work becomes less and less interesting, and the job becomes more about connecting and configuring all these open source systems together. Needing to contribute free work in open source before getting a job therefore sounds like the biggest of scams to me.
- Scarblac 5y agoThat's a good point. We as developers trying to make a living doing it are competing with an ever-expanding sea of OSS. And therefore we'd be mad to contribute to it, for free even. On the other hand, from the viewpoint of all of humanity, it is great that there exists a huge amount of software that is useable by everyone for free.
- loudmax 5y agoI guess in the same way that public libraries steal value from book publishers and public education steals value from private tutors. Also, how rainwater steals value from bottled water companies, fresh air steals value from air filter vendors, and sunlight steals value from the electric company.
- didibus 5y agoLibraries still pay for each copy of a book, and in some countries royalties are paid out each time the book is borrowed. The library is not allowed to make additional copies of a book and borrow them either. Public education pays its teachers. But overall I'm not in disagreement with you, you could say open source is done as part of the greater good and advancement of technology and computer science, and not for personal capital gain. That also means that it isn't meant to be a sustainable career path, or job that you can do full time though.
- 5y ago
- another_story 5y agoI'd wager companies hire based on leetcode because it's efficient from an administerial perspective. It can be easily automated and helps weed out a greater number of poor candidates than good ones. It's easier for an interviewer to pull out a set of pre-written questions than look through a github repo and ask pointed questions. Too much of what we do, from education (standardized tests) to banning of users in places like YouTube, is centered on efficiency or administration. Aim for the center of the bell curve, ignore the collateral damage and reach those target metrics, as the mantra goes. It'll get much worse before it gets better, if it ever does.
- urthor 5y agoThat's a rather negative view, considering that much of software by and large is about replicating paper based processes with far less human effort involved. It's fair to describe software engineers as a profession of the professionally lazy. "This takes too long to do, therefore I code." I think it's better to reinterpret the problem based on what Leetcode does well, and try to invent something that does it better. The old world of make some giant Github project a company might appreciate, or might ignore entirely, holds little attraction to me at this point.
- colinmhayes 5y agoCompanies use Leetcode because it tests for the 2 things that are required to become a successful developer, above average critical thinking skills and willingness to spend hundreds of hours improving. Companies figure if you have those two things they can make you into a decent developer, figuring out if someone is already a good developer is much harder.
- another_story 5y agoOr does it test for someone who in the hope of passing these tests will spend hundreds of hours dedicated to pointless exercises that produce no real value? If by harder, you mean sitting down and having a real conversation, then yes, I suppose it's harder. Edit: Value is a poor word here, now that I think about it. Let's say mostly pointless activities that generally don't apply to work they'll be doing with that skill. It's like playing baseball to practice for tennis.