9 ms·
> So let me put it plainly: the CTO/VPE/Engineering Director candidate should pass your coding interview. In fact, they should excel. People who work full-time
by arnvald 4y ago
> So let me put it plainly: the CTO/VPE/Engineering Director candidate should pass your coding interview. In fact, they should excel.
People who work full-time as developers spend hundreds of hours practicing leetcode and hackerrank so that they can pass the interview, but a CTO who's 5 levels above and hasn't logged to Github for 3 years should excel at it? Come on.
I agree with the premise of the article, CTO should be technical, but I don't think that "technical" and "great at coding" are the same. One of the best CTOs I've had came from a product background. He was technical enough to understand the technical discussions and he was able to support his directors in hiring plans, technical decisions etc. but he wouldn't pass any coding test more complex than FizzBuzz. Still, he was great at his job.
- tinco 4y agoDevelopers spend hundreds of hours practicing leetcode and hackerrank? Are they actually good coders? And that's required to pass an interview? I feel so out of touch. I haven't interviewed very many candidates, just a couple dozen maybe, but I've never heard anyone mentioning leetcode or hackerrank. If they'd admitted they'd admitted they spent that much time on there, I'd be seriously questioning why they didn't spend that time on making their github awesome. What sort of person do these exercises? Is it fresh college graduates?
- jon-wood 4y agoLeetcode and Hackerrank I think, if they're used anywhere, are very much a Silicon Valley kind of thing. I've certainly never been asked to go near them when interviewing for startup jobs in the UK, and never used them when hiring myself. They feel very much like the sort of thing you use in an environment where you've got way more qualified candidates than you have open positions, so you're optimising for screening people out. Certainly not a place I've ever been in over here, where the norm is to be desperately looking for even one qualified candidate.
- mianos 4y agoI think it may be a policy for some larger firms, even if there is little available talent in the local market. Here in Sydney there are next to no C++ experienced developers (I am hiring), yet some firms insist agencies make candidates do leetcode tests even before someone actually from the firm will even talk to them.
- ravenstine 4y agoIf they're gonna make you do Leetcode anyway, I actually would want to do it as early as possible. An initial phone screening would be good, but as much as I don't like Leetcode, it's less exhausting than multiple rounds of interviews before getting a challenge that you mess up on. Fail fast, fail early, as they say.
- ibejoeb 4y agoIt should be prominently listed in the req as a hard requirement: "Must complete leetcode, no exceptions." Then we all know what's what. It's up to management to make decisions about how hard it wants to make recruiting for itself.
- finikytou 4y agothats the norm for faang. fresh college graduate but any kind of IC will be expected to know how to do white boarding LC hard.
- ravenstine 4y agoThough I much prefer Leetcode to waterboarding (whoops I meant *whiteboarding), but I know more than one 10x developer who has failed at Leetcode/Hackerrank type exercises. Any system will have false negatives, and at least Leetcode is more fair than whiteboarding, but I wager that Leetcode will be gamed if it hasn't been already. Coding is being seen less as an intellectually stimulating career and more as a gold mine to be prospected by career transitioners and those who can't or won't get an education. Enough people will eventually figure out that all they have to do is memorize jargon, brute force their way through enough Leetcode, and fill out hundreds of applications to get a highly paid job. The Leetcode approach simply isn't sustainable for that reason. If we face a recession, you'll see tons more people who can Leetcode but are terrible programmers.
- viridian 4y agoMy current job, during the interview, didn't ask me to write a single line of code, but instead asked me to walk through (in great detail) how I'd go about building a GPS related feature for an application that they own. The application is well known and the problem space was well defined. This was a real (low priority) problem that they did eventually plan to tackle as a team. I also at the same time, interviewed with the fastest growing startup in the area, who had way better comp, slightly better benefits, etc. They asked me to do a take home homework assignment that would've taken like 20 hours, so they could see how I work. I ghosted the second contact, and after another round of interviews, accepted with the first company, and I'm by far happier with my work and the respect given to my input at this job than any previous one I've had. I'm certain that wouldn't have been the case at the latter company. I truly believe that once you are beyond the junior level, interviews really are a two way street, and you should jump with the utmost caution unless you already dislike where you are.
- jjice 4y agoSystem design problems are much better and more realistic than leetcode style IMO. Let's be real, most developers don't need to have leetcode T9 solutions memorized because it with either never come up, or they can do some research when it does. Knowing more about an entire system and architecting it requires a lot of variety of experience and it's just a more fun interview for everyone involved. When I interview people, I also hope I'm assigned to conduct our architecture one because it really makes you learn a lot about an engineer.
- bko 4y agoCould someone post a good answer (outline) about how you would build out a GPS related feature for an application?
- antisol 4y ago1. Agree on terms and accept your consulting offer 2. Listen to / read up on your requirements for what you're trying to accomplish 3. Build out gps related system according to requirements and future plans
- greyhair 4y agoI have been asked exactly one contrived coding question over the forty years of my career. It happened during an interview with a startup in late 2003. I was able to answer the question. Many did not, but the process was more about how you handled yourself through the process, how you communicated with the interviewer as you walked through the problem, than it was about reaching the actual solution. I know several people, bright people, that were hired there even though they never solved the puzzle. After I got the proper solution, I asked the person that administered the quiz "Is this an indication of what kind of code gets written here?" He just started laughing and saying "no, no no". Because I would not take a job at any company that actually wrote code like that. That interviewer ended up being my first manager, and we had a good work relationship. It was a great few years of my career.
- romankolpak 4y agoLarger and more well-known companies do leet-code style programming challenges. I recently interviewed for a job in a ride hailing app company and they directly recommended practicing leetcode problems, even sent me examples of leetcode problems to practice solving. My sample is not big (it's 2 companies I iterviewed with recently), but it definitely feels like the industry is converging on this practice of testing leetcode-style problem solving in interviews. Community even built "workout plans" like this: https://www.grind75.com/ https://www.grind75.com/ I'm 11 years into the profession. Solving leetcode is somewhat different from the problems I solve at work, so I struggled at first and had to practice, and practice a lot. I have yet to find out how useful this is outside of job interviews, but my brain started to forget some topics from CS after doing so much web stuff and it was a good way to remember these and practice problem solving.
- robswc 4y agoOver a decade of experience shouldn't have to prove competence via leetcode, honestly. I fully believe it helps you become a better programmer... but its over-hyped. Shouldn't expect interviewing/preparing to interview to be a part-time job. Too busy in the day to day for that...
- justanorherhack 4y agoMaybe you should interview and find out why people do this. I have been coding for 10 years professionally, started coding in middle school and high school competitively. I live and breathe tech because I love it. Yet to work at all the nice companies I have to be able to identify an a problem pattern and implement an ‘optimal’ algorithm twice in an hour or it doesn’t matter. Also what constitutes an awesome GitHub? Because unless you run a project with > 100 stars it’s little more than academic and doesn’t matter.
- tinco 4y agoOne to three passion projects, doesn't matter what amount of stars. Some practice projects in new technologies. Some contributions to large open source projects. If you tick all three boxes there, in my opinion your GitHub account is awesome. Instead of me having to come up with questions to gauge your competence, we'll instead be talking about what's on your github, making you more at ease, and giving me a better sense of your real world interests and competences. It's a win for both of us. At my current company I'll probably pay less than half as what you'd make at a "nice" company though, so maybe you won't interview with me anyway.
- rsaarsoo 4y agoI've got multiple >1000 star projects on GitHub, and I feel like it hardly matters at all. I'm still being asked to do lots of trivial coding exercises during the interviews. A large percentage of code I've ever written is out there in the open, but somehow it's still not enough to verify that I'm able to reverse a string. Thankfully, where I live, most companies don't really ask for hard-core algorithm questions - if they did, I would never get a job, as I really suck at these.
- arnvald 4y agoThey didn’t spend time on making their GitHub awesome because the companies they apply to don’t care. GitHub can get you an interview at a big tech company, but you have to go through some Leetcode-type questions to get an offer. It started with big tech companies, but I’ve also seen smaller or less prestigious companies doing that, too. There’s a whole small industry around the big tech interview preparation. And it’s not only for fresh grads - a year ago I interviewed with some SV companies for senior positions (including EM) and I had to go through Leetcode interview as well
- robswc 4y agoI also hate leetcode as a measure of "coding competence." I don't think they're "worthless" but totally depends on your job. I notice that if I'm rusty at leetcode, it takes about a week to get ramp back up... but we're talking 10x better. I don't at all believe I magically got 10x better at coding though... just 10x better at recognizing and remembering patterns. I think the best type of interview for everyone is the "walk me through X" type. You can almost always spot BS in those and if you can't... should you even be interviewing? I would 100% rather have someone that knows how to glue pieces together vs someone that is good at leetcode... don't get me wrong, I'm amazed at how awesome people are at it and I've met people who excel at both... but I feel its just too weighted in interviews.
- tinco 4y agoThanks, that's it exactly. I wonder if leetcode programmers are actually faster or something, surely someone at these faang companies has some sort of metrics backing up their use of those tests? Or is it just a slightly advanced version of FizzBuzz helping to sort out not just those who can't code, but also those who can't apply themselves and grind through some code challenges without complaining.
- thadcastle99 4y agoIt has to be a function of company size here. If your company employs 100s of engineers the value-add of any CTO/VPE shifts from hands on technical to a more strategic view. If your company is in that 20-50 engineer range, having a CTO who is deeply and personally vested helps the entire team ship features to those critical first few customers.
- wjnc 4y agoThe director of marketing in my firm has a PhD in Physics. Every technical talk with him is a breeze. He gets data, complexity, the fact that sometimes easy problems are hard and that tech needs proper support. Point being: management skills are not technical skills, but technical skills or affinity sure help. Perhaps smaller firms the CTO should be a good programmer, but in any firm the CTO should be the one standing for tech and building bridges between tech and non-tech.
- drunkenmagician 4y agoI think it depends on the size and makeup of the development team. Smaller startups / teams need a CTO with strong coding and especially architecture skills. Larger orgs probably benefit from a CTO that has a strong product background and management skillset.
- jmull 4y agoWouldn't any half-decent CTO put a stop to using leetcode exercises for interviewing job candidates?
- deepGem 4y agoIf you can't code LC medium, then the odds of you being a good programmer are pretty low. That's the conventional wisdom. Everyone is playing safe and adhering to conventional wisdom.
- Alex3917 4y ago> the odds of you being a good programmer are pretty low You're a good programmer if you've made something good. Most people who are good at leetcode have never made anything significant. When is the last time you saw someone who is well-known for some successful product linking to their leetcode account?
- deepGem 4y agoThis is unconventional and in fact real wisdom.
- jmull 4y ago> Everyone is playing safe and adhering to conventional wisdom. That's not playing is safe, though, that's playing it wrong. If the cost of interviewing candidates were zero and the was an infinite supply of actually good programmers, then it would be fine to err on the side of many false negatives for the sake of avoiding false positives, especially since the cost of false positives is high. But that's not true. You pay a price for every interview, and pay a further price for every day without the qualified help you need. And you're probably in a competitive market -- a relatively small delta between you and your competitors' hiring efficiency might mean they get almost all the good candidates while you get almost none. Anyway, like I said, any half-decent CTO should be able to fix such an obvious mistake. Hiring is a high-stakes move and it pays to be picky, but it really doesn't pay to be dumb about it. Just based on my personal experience, I doubt very many people beyond junior or entry-level are going to study leetcode exercises, so you're walking away from almost everyone useful past that level. Maybe you could give people a choice of problems only good programmers could solve, but of different types, and let them choose the one they want. Leetcode, sure. Or: here's a windows system and windbg, tell me what's wrong. You've doubled your chances. Spend some effort to come up with five or six or seven different ones and you might have something.
- qudat 4y agoI think this just demonstrates a fundamental flaw with our interview process more than anything else. We are modeling interviews based on companies with insane hiring demands (FAANG). At our little 20 person company we have removed most of the BS leetcode style questions and have shifted towards a more discussion based interview process. Effectively we have switched from quantitative to qualitative where the questions are similar to start but because of the fluid nature of conversation, drift further from other candidates.
- jbverschoor 4y agoNot only that.. a lot of developers, and “management” that wants to be involved with the tech side think they’re big tech in terms of: amount of data to be stored. Amount of traffic / users. Amount of servers and services you need. Architecture, scalability, infra, etc etc. Where is 99% of the cases a small group of people would suffice, no micro services, and in terms of infra, a cheap VPS is more than capable enough. People just don’t have a clue, bc they don’t understand what actual work needs to be done.
- giancarlostoro 4y agoYou can program beautiful classes but can you actually architect or direct a team? Can you adapt with new information and find actionable solutions to roadblocks for your team and so on? Can you get along with your technical team and command the ship? I dont care about your skill if nobody gets along with you. You will be the reason top tier talent leaves. A good engineering team is the one where everyone gets along. Everyone has memories of working with toxic people. Imagine if you replaced all those toxic people in former jobs with people you got along with. Would you have left at all? It makes a huge difference.
- f1shy 4y agoA CTO has so many things under him, which are not coding... There are architecture decision, in the company where I work, also HW, for example. He cannot excel at every technical interview in the company. Of course has to be technical, hast to have a huge background in development, and been in many of the areas he will oversee... but you cannot ask him to excel at every one.