Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> I've started grinding leetcode, reviewing system design, and behavioral questions. You MUST memorize perfect responses to regurgitate as fast as possible on the interview. Again, you cannot afford a single mistake in process right now or they will pass on you.

I'm not discounting that it is hard to find tech jobs right now, but have you considered that this attitude of "grinding leetcode" is possibly contributing to companies not biting? I would imagine the most important qualities to have in an interview are going to be charisma and an ability to reason through technical problems.



> I would imagine the most important qualities to have in an interview are going to be charisma and an ability to reason through technical problems.

As someone who has interviewed many software developers, I can assure you that charisma is not something that experienced hiring managers in tech are expecting in the candidate pool. For sales positions, sure. For coding, though, competence is often inversely correlated with charisma.

Reasoning through technical problems is a different story.

I think your first observation about grinding leetcode is interesting. I suspect that this is the approach people take when they're trying to get picked up by big companies (FAANG or whatever). Programming problems become a quick way of winnowing the field for companies that have a highly process-oriented approach to hiring. My own experience has been in small companies, where being able to get in the door and make progress through the interview process is often dependent on one's personal connections/network, creativity and so on.

So my advice to the OP would be to leverage your network and try to get inside companies connected to people you know. Maybe look at smaller companies that aren't necessarily tech companies, but have a strong need for tech?


> competence is often inversely correlated with charisma

Source needed. I've been working in tech for 15+ years, alongside highly charismatic and competent people, terrible engineers with less charisma than my coffee pot, and everything in between.

You do not need to be charismatic to be a good engineer, but also it certainly doesn't hurt, and friendly teammates make for a better team atmosphere. If I'm considering two candidates otherwise similar, I'm going to go with the one that's more pleasant to work with.


If we assume they are two normal distributed characteristics that aren't related, then it is a natural consequence once you select for those who are at the top of either distribution.

Someone in the top 10% of competency or charisma will have average distribution of the other. If you consider the full population, you'll find no relationship, but because you are only look at the top 10% of each, those in the top 10% of one will be average in the other and vice versa. While some (~10% of each top 10% group) will be represented in the other group, you'll still find that they are more likely to be at the bottom of the group in the second group.

The end result is that if you only plot the data for the top 10% of each group, there will be an inverse correlation.

This can hold true even if there is a positive relationship between the two characteristics depending upon the strength of the relationship and how selective you are in selecting the top of each group.

This leads to some interesting results, such as when fruits are grown for look and shelf life risk losing taste and flavor despite these factors being unrelated.


Of course you want to work with people who are "pleasant" and "friendly" but these are not synonyms for "charismatic", defined as having "special magnetic charm or appeal". [1]

Would you disagree that software development, as a profession, tends to have fewer charismatic people in it than other fields in which charisma is more valuable and/or essential? For instance, if I were to suggest that the average successful politician is more charismatic than the average successful software engineer, would you disagree with that statement?

If we think about it in purely economic terms, I'd suggest that people who are very good at getting other people to do things (i.e. they have charisma) have a powerful incentive to enter careers where they can leverage that special ability.

1: https://www.merriam-webster.com/dictionary/charisma


Maybe charisma is the wrong term. I've found pleasantness and willingness to communicate to be strongly correlated with engineering ability amongst those in the profession. Likewise, the worst engineers I've worked with all had major anti-social personality issues. The profession has always involved soft skills in my experience. When I've hired people I designed small tasks similar to the actual day-to-day work they would be doing, and that filtered out candidates who lacked coding ability quite easily.


>> competence is often inversely correlated with charisma

>Source needed

Experience and observation. When one is deeply involved in solving hard problems, one has less time for pleasantries, superfluous stuff ( but important to people in general) and subtle manipulations of relationships, that make up 'charisma'. Over time that becomes your personality. Not saying that this is the best thing to happen to an engineer, but it's the way things are IMO.


Hiring managers and interviewers are definitely looking for charisma in the sense that they want people who are competent and that _they wouldn't mind working with_. Call it charisma, or culture fit, or whatever, but when interviewing you definitely want to come across as friendly and easy to work with.


Charisma is one of those factors that bypass conscious mechanisms.

Experienced managers think they aren't screening for charisma but I would say 99 percent of managers who say this actually are, but they just don't know it. It's subconscious.

I can somewhat prove this to you because there's science on this. Charisma isn't very measurable or quantifiable but a physical attribute similar to charisma is, and that is physical beauty and height.

The more attractive you are and the more taller you are the more likely you are to be hired. It's absolutely true. There's so much studies around this it hurts. Just Google it.

There's even been a news segment in 60 minutes where they literally sent in a ugly dude with a shitload of Ivy league credentials and a handsome tall dude with nothing. And it was incredible. Ugly dude was grilled like a mofo and not hired. Handsome dude was a shoe in, didn't even get asked any hard questions.

The interesting thing is, the hiring manager wasn't even aware he was being biased. When asked in a subsequent interview on how he chose each candidate he stated credentials, but was completely unaware he wasn't even looking at credentials.

Now you yourself may be the exception just like how everyone thinks they're the exception and I'm sure you have examples to prove it too. But humans are inconsistent, I'm positive that at some point during your experience you mis-judged a person with rizz as being more technical.

Its human nature. We are wired to be biased this way. Nothing consciously immoral here. Just note that the first human bias being triggered by any reader reading this post is that they think they themselves are clearly above this bias. That should be the first thing the reader is thinking, and if I guessed correctly on that... Likely I guessed correctly on everything else.


Honestly as a senior if I only focused on my ability to ”grind leetcode” I would probably be laughed out of interviews instead of having more work than I can handle. Your milage may vary but don’t underestimate team play and personality/charisma. Few team managers want the team to be more disfunctional after hiring you.


Sorry to revive an old thread, but I just wanted to add that I did not interview with any FAANGs. All were either startups or at most mid-tier companies. I think the well-funded startups do copy FAANG style interviewing.


> I would imagine the most important qualities to have in an interview are going to be charisma and an ability to reason through technical problems.

My guess, as someone who has occasionally been the hiring manager, is that this is true, but so is the leetcode crap. It's leetcode that gets you far enough to meet someone who matters. It's charisma and reasoning ability that will get you an offer.

I've met plenty of applicants who could give me superficially correct answers, but with any kind of detailed conversation it became clear that this was basically all they could do. When I hire someone for my team, I don't want leetcode answers, I want someone who can solve problems. I want someone that seems like they'll work well on the team. I want someone low maintenance and at least adequately productive.

But this is just a medium sized software company and not a FAANG.


No, the first round is usually a timed coding interview where the goal is to get an optimal solution as fast as possible. You should not be talking much with the interviewer. The intro (if there is one) is a quick exchange of names and last job worked at, then immediately diving into coding problem. You cannot start with a naive solution, interviewer will ask you to skip and go straight to optimal (this happened to me more than once). If you solve that, they ask followup questions to probe your knowledge, and if you beat that, you get a second problem.

After that might be more rounds of coding, system design, and hiring manager interview.

The part where you can be charismatic is once you pass the initial technical bar(s). The talking/behavior is a later point in time and is relatively easy IMO.

Examples of questions I've been asked:

1) https://leetcode.com/problems/non-overlapping-intervals/

2) https://leetcode.com/problems/design-add-and-search-words-da...

3) https://leetcode.com/problems/detect-cycles-in-2d-grid/

4) https://leetcode.com/problems/evaluate-reverse-polish-notati...

5) https://leetcode.com/problems/word-search/

So nothing too hard but you have to instantly solve it, and optimally. The hardest one I got was some type of AI search problem, where you have to find a way to navigate obstacles in a 2d grid, and another geometry problem I've not seen before.

Along with this questions like: what pitfalls arise in concurrency? Explain how you would design a pointer type that can be shared between threads, what is epoll? How do you debug a distributed system? etc.


This would be funny if it wasn't so sad.

When people started asking these questions, the whole point was to see how people reason about a new problem they haven't solved before. There are almost no work problems that require you to regurgitate something verbatim you saw on leetcode before.

It's seriously making me question the intelligence of these interviewers. Although at the same time I realize it's mainly just to arbitrarily whittle down the applicant pool to a smaller number you can interview in person.


Yup. It's absolutely crazy to me to see the amount of people who are apparently doing hiring telling others here in the comments (and elsewhere on HN, etc) that they should "grind leetcode" while also NOT admitting that this is absolutely stupid. Like I'll give you a pass as an interviewer / hiring manager if your hands are unfortunately tied and you can't change your companies hiring processes.

But if you're an interviewer or hiring manager who is telling people to "grind leetcode" because you legitimately believe this is a good way to find good talent ... you need your head examined. All you're doing is filtering for people who've grinded leetcode long enough to memorize solutions. This has ZERO correlation to software development ability.


Appreciate you putting these words together. More employers need to hear it.


it is very sad. i personally would much rather someone walks through their problem solving approach and identifies shortcomings/edge cases than to regurgitate a memorized algorithm.

it's really easy to identify code that is not optimal at code review time. it is far more challenging to have a conversation with a algorithm-regurgitating robot that their entire approach was wrong because they misunderstood the abstraction or that their code wasn't needed because Larry is refactoring that part of the system to a separate service already.


There are so many leetcode problems most people can't fully memorize them all and many people just don't.

I actually think interview questions that are more qualitative are worse. I have to freaking guess the "design philosophy" of the interviewer and cater to his viewpoint which is often pointless or just flat out wrong.


Especially today with Copilot and GPT-4, if I need to merge two sorted lists with optimal time complexity, I'll just ask GPT-4 and it'll give me the leetcode-optimal solution adapted to my language and variable names. Leetcode is less relevant than it has ever been.


Jesus Christ: Where are you interviewing? This sounds more like Stephen King's The Long Walk, than a job interview! Do they hold a gun to your head while you regurtitate the optimal solution?


Have you interviewed recently? The vast majority of companies won't even have a conversation with you until after you've jumped through this.


I have but haven't had anyone ask me leetcode questions yet. Everyone's just been asking about my precious jobs. I also have an ok amount of public projects, maybe that's why?

If someone asked my to do a leetcode style problem I'd politely refuse, and likely end the interview. I went through that kind of job hunt at the expense of my mental health and confidence in myself as an engineer once. It was one of the most degrading experiences of my life (so in all not a bad life to be fair). I'll never do it again.


Previous jobs*


fwiw in my experience it's entirely possible to avoid this if you don't submit an application "cold" (i.e. through the careers page), but through a recruiter or referral _IF_ you have a strong portfolio of open source work and/or exposure in technical spaces.

i'm more than happy to do take-home assignments or complete reasonable timed assessments, but i have (politely) refused to complete leetcode-style gotcha screens when they have been presented to me as "just another part of the application process".

idk, though. maybe that's a privileged statement based on my position, but from what i can tell grinding leetcode seems to be much less reliable these days & the toll it takes on a lot of folks is pretty significant.


That is fascinating. I wouldn't even show up for an interview if they told me to prepare for that kind of exam. What kinds of companies are these and where are they located? Sounds like an interview designed by an omega nerd nightmare boss.


Have you been interviewing recently? The qualitative interviews that test design are actually the ones that are unreasonably challenging now. You have to cater to the interviewers design philosophy.

For example I tend not to prefer putting data into a class if it's not needed, but we had one interviewer who wanted all my logic as methods on a class even though it's fine to have functions operating on a data structure. Not a big deal either way right? But there it is... With the influx of candidates they measure this bs.


If you view the list here: https://leetcode.com/problemset/all/ you will see the questions tagged by company (there is a paid option as well). If they have a name you know, they probably do this style of interview.


I don't understand what I'm looking at. Who is tagging companies? Why would leetcode know the specific questions people are being asked to whiteboard?


People who interview at these companies report on their interview experience. It's true, these leetcode style questions do get asked and not just by the FAANG companies but lots of much smaller, no-name companies as well.

Yes, you can certainly find companies out there that don't interview in this way, but leetcode interviews are extremely common.


Strange. Not something I've seen, but I'm also very picky about the companies that I have applied to in the past–to the point of picking specific people I want to work with–and never ever go after mega orgs (I've contracted with some of them, and that's enough to know to stay away). Seems like a practice that would actually bias in favor of more junior developers, because of the emphasis on speed and familiarity to CS classwork. Obviously some programming jobs are heavy on algorithms, but that's neither the case for most roles nor what typically sets apart senior developers from juniors.


> would imagine the most important qualities to have in an interview are going to be charisma and an ability to reason through technical problems.

No, they want the code to match their expectations. I interviewed last year, and breezed through the early and behavioral stuff, occasionally being up leveled or oddly positive feedback in the process. They'd often quickly move from interviewing to selling me, talking openly about (relatively good) salary, etc. Then I'd do the leet code* part and lol, bye bye. And after about 10+ rejections, as I got better (and similar) coding questions, suddenly that all changed. Rejections became offers, "not good enough" became "one of the best ever" -- same person, same(ish) questions. They all just care a LOT about the quality and speed of the coding part (along with the level of style and communication they expect). Its not unreasonable, I guess. Its odd, its frustrating. Maybe its accurate. But its best to accept what it is, get REALLY good at the coding part, and you'll get a lot more wiggle room if you're bad at the other parts. And if like me, you are great at the other parts, expect to do a lot of interviews to get the offers, and / or a lot of practice (but I strongly recommend interviewing first, as demoralizing as it is, because the companies you like tend to all ask same style of questions, I practiced tons of stuff I didnt end up using).

*They were rarely leet code, usually more realistic coding questions. But same vibe.


Thank you for this anecdote. This is where I am currently at, but I don't feel discouraged at all, I feel up to the challenge! I am finding the process of learning fun and I am in fact improving a ton at the fundamentals. My speed is improving quickly and pattern recognition is developing. I can glance at a problem at now have an intuition for what shape of solution it has.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: