HN user

devplusplus

19 karma
Posts1
Comments6
View on HN

Just for your notes, I did not get a "good approaches" discussion. We just jumped straight into it. So much for consistency?

I don't really want to go any further in public. I already sent you my feedback (and received no response, for whatever that's worth). Good luck in your future endeavors, and thanks for your reply.

The ASCII spiral one was from Triplebyte as well.

The problem with the task is that you can demonstrate decrementing counters, recursive functions, and familiarity with the language, but if you don't solve the specified problem in a constrained timeframe, you fail. (My feedback was basically "You clearly know how to code, but you didn't solve the problem.")

One of the problems with the Tic-Tac-Toe AI scenario is that you have to figure out an algorithm to win at Tic-Tac-Toe. (If I recall correctly, one of the requirements is that it beats you.) I know how to play -- but to win every time? I'd have to formalize an algorithm, then convert it into working code, within a strict time limit with someone watching over my shoulder. I can do it, but probably not in 30 minutes. It'd take me 30 minutes to set up my 2D array and accept input to populate the board.

That's not how my day job works. That's not how any programming job works.

When I get a problem at my day job, I know the entire domain. I know who my customers are, I know the problems they have. If my day job were Tic-Tac-Toe, I'd know everything there is to know about how to play and win, and then it's a formality to convert that into code.

If you really want to go with the coding exercise thing, you can't focus on the "right answer." Whether their tic-tac-toe program wins every time is irrelevant. What's relevant is that they jump straight to the notion of a 2D array, that they know how to do recursion or for-loops. What's relevant is that they can write code without too many syntax errors, that they're comfortable, and that they make progress throughout the time alotted. Whether they actually cross the finish line is irrelevant at best. It's a red herring.

In the end, do you want to know if I can code, or do you want to know if I can write a winning Tic-Tac-Toe algorithm in 30 minutes? Those are two different answers -- just because I can't do the latter doesn't mean I'm not qualified. I just means I didn't pass your test.

I think we're both on the same page that the standard "tech interview" model is broken. I don't have a problem with doing work sample tests. I have a problem with contrived samples that aren't representative of my coding abilities.

My justification is that I have oodles of experience. I'm happy to prove it -- I just don't think generating an ASCII spiral is a good test of whether I am qualified or not.

My experience re: startups is similar. However, what if (hypothetically) I don't want to work for a startup? If I want to work for, say, Amazon, in a senior/lead/managerial capacity? Assuming they have a more rigid structure, how do you leap-frog the programming exercise and jump a little further up the chain and demonstrate more advanced skills?

The coding exercises are fine for junior roles, but I think the farther up the seniority ladder you get, the less relevant those tests become. And like many others, I think there's gotta be a better way.

(As an aside, recently I had an interview regarding a tech manager role that was mostly management, less development, and they barely even asked me about technical skills. I wound up passing on the job since it would require moving, but I thought that was interesting. If I apply for a Lead Engineer position in San Francisco, I have to reverse a string or something, but if I apply to be that guy's boss, there's little to no code screening. Very interesting...)

Yes. I don't disagree. Hiring someone is super important, and paying me is very expensive. I don't disagree that they need to be as certain as possible regarding my technical skills. I just need to figure out a way, when asked to reverse a string or what-not, to say "Look, this is Programming 101 stuff, and if you really want to know what I'm capable of, let's look at some projects I've worked on in the past" without coming across as arrogant. (I don't think it's arrogance -- I just think it's not representative of my skill level and experience.)

I tend to try to talk to the Hiring Manager first, but occasionally I get in touch with a recruiter first, and they stubbornly refuse to connect with a hiring manager, and instead go through their rigid process of screening. Any tips on convincing a recruiter to set me up with a phone call to the hiring manager first, rather than to a low-level HR flunky?