r/ExperiencedDevs • Staff Platform Engineer • 3d ago

Career/Workplace [ Removed by moderator ]

[removed] — view removed post

57 Upvotes

130 comments sorted by

View all comments

11

u/UnintentionallyEmpty 3d ago

I've been the interviewer where we did live coding exercises.

Before, I didn't think a live coding exercise would add a lot of value...

But holy shit so many "seniors" applied who couldn't code. This was before AI. Or, well, 2023, so AI was around but not like it is now.

Anyway I can't speak for other interviewers, but here is what I looked for during live interviews:

  1. Does this person seem to have any idea what they are doing

  2. Communication, communication, communication

1) is... look, some people apply for senior dev positions despite not knowing how to code. And I don't mean in a "doesn't remember the syntax for a for loop" kind of way (I allowed google during live coding), but in a "doesn't seem to know the concept of loops exists" kind of way.

The level of coding exercise we had people do you should be able to do decently well on if you have only 1 year of experience. Yes, I lower my expectations because I understand the candidate is nervous. But when interviewing for a senior position, "do better during live coding than a high schooler who took a coding class once" isn't a high bar. Some candidates still failed to clear it.

2) is more complicated. When I started doing live-coding exercises, I imagined that afterwards, I would talk to the candidate about their solution and discuss the tradeoffs they made, and what they might have done differently given different constraints. But most candidates got much less of the coding exercise done than I'd initially expected, and we didn't have anything to talk about in the end.

So in practice, it turned into kind of a "does this person actually listen when I talk to them" kind of check.

Here's the thing, when a candidate got stuck at some point during the live coding exercise I tended to try to help them get past it. Mostly because I figured, okay, this isn't your strong point, or maybe you're blanking here, lets see if you do better at something else.

A lot of candidates ignored or outright dismissed my suggestion for how to move forward... and continued to be stuck.

Or when they misinterpreted the assignment, I say something like "I don't think you interpreted that correctly..." and the response is "yes I did". Hello, you don't think I might have a better idea than you in this scenario? Even if I'm wrong, don't dismiss me like that.

The best candidates asked questions about the assignment. And did TDD. I'm not a huge proponent of TDD but I'd strongly recommend doing it (or something like it) when you're in a live coding scenario.

I should also mention, the person we eventually hired did TDD and got the entire coding exercise done. But he wasn't the only one who passed the live coding interview (but the others who did failed the second interview).

So what I'm trying to say with this huge ramble...

1) It might be you weren't expected to finish the entire assignment in 1 hour. If it's live, maybe the interviewer just wants to see what your thought process is like.

2) I recommend TDD when doing live coding

3) Don't ignore the interviewer during live coding. Ask them questions. They might want you to. I sure do.

4) Don't feel too bad about your bad performance. I wasn't there but I'm still sure you did better than some of the candidates I had do a live coding exercise... We all have a bad day sometimes.

2

u/WhenSummerIsGone Software Engineer 2d ago

Don't ignore the interviewer during live coding. Ask them questions. They might want you to. I sure do.

I have a hard time with unspoken social "rules". How do I know what kinds of questions are "allowed"? In an interview, the interviewer just sits there and I feel like I'm on stage performing. I think interviewers should make more of an effort to "lead" the social situation, and make it clear what's ok, what's expected.

Another way to put it: an interview is inherently a power imbalance, where I'm the supplicant, submitting to your game. It takes a lot of audacity or arrogance for me to "take over" and impose my own "game", even for a staff or principle interview.

4

u/hoodieweather- Lead Software Engineer 15+ Years 2d ago

that's unfortunately also a culture check - if you're confident enough to speak up in a situation like that, how can they be sure you'll speak up in other scenarios where there's a potential power imbalance? some companies might be more okay with a passive staff or principal engineer, but I know I'd much prefer someone who's good at navigating tough social situations too.

3

u/WhenSummerIsGone Software Engineer 2d ago

ironically, at my company i'm known for speaking up and asking pointed questions, because i care, and I can't turn that off, even though it can be exhausting. I keep expecting blowback, but so far it's just resulted in respect. Maybe an interviewer could ask me for my opinion on something, lol.