Live data from Hacker News

Dear Startups: stop asking me math puzzles to figure out if I can code

countaleph.wordpress.com

221–230 of 354 posts

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#221

Here's the test I've used in the past: Before the interview, I ask them to write some code to access an HTTP endpoint that contains exchange rate data (USD, EUR, GBP, JPY etc.) in XML and to parse and load said data into a relational database. Then to build a very simple HTML form based front-end that lets you input a currency and convert it into another currency. I ask them to send me either a link to a repository (…

No bullshit and to the point, this is my ideal interview

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#222
post #179

Earlier quoted context omitted.

FYI: the author is a she. I find it fascinating that most posters assumed that the author was male.

Thanks for pointing that out, for English pronoun usage at the very least. My eyes blazed right past the blog heading that uses (as I suppose) the author's given name. I didn't see any other author information on the post or on the about page for the blog.

I read the domain ("count aleph") and associated "count" with male nobility -- when in reality, now that I look more carefully, it must instead be a very clever pun on math, which makes lots of sense given that she (the author) likes math puzzles.

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#223
post #188

Earlier quoted context omitted.

Did you read the OP? The point of the article was that one can be great at that sort of thing and yet quite terrible as a production programmer. You are not measuring the skill you want with math problems, you are measuring a proxy. Furthermore, I've known plenty of smart math people that just never seemed to be able to program (well). I think they are different skill sets, certainly with plenty of overlap, but plent…

> Did you read the OP? Did you read my post? May I quote myself: > Certainly, asking only math questions is stupid as well So what I actually advocate is asking questions about the field that the person is going to work in. I still like to ask some math questions - a lot of the stuff that programs deal with basically fall back to math. Heck, all relational database stuff falls back to set theory, so knowledge in that…

Yes, I did read your post. The point is whether asking math questions at all is valuable compared to the other questions you asked. I do not believe you particularly addressed that in your post or in this one. It is a proxy for what you are actually trying to measure - why not measure what you want to measure?

Your first asterisked point does not at all square with my experience. It depends on the program of study; I've certainly come across kids with no real pragmatic ability, and other programs that turned out, as much as you can in that environment, very pragmatic and skilled programmers. Certainly this is a skill set that improves over time. But let's not quibble over that; you raise a larger, valid point about interviewing recent grads vs more experienced people.

As far as that goes, I try to question them about school projects. "So, if I was to try to take that and do Y with it, what would be the consequences" type questions. Like you w/ the math questions, I do not expect any particular expertise and experience in actually solving the problem. But, I can start to see how they think about things. If they aren't thinking that clearly, throw them a bone and see what they do with it. Does it give them an 'aha' moment that then leads them to a better answer (I infer, perhaps incorrectly, that they can learn and be mentored), or do they just stonewall, not make the connection, or what have you. My suggestion is pretty simple. Measure what you want measured, not some proxy. I will point out that recent data suggests I am right. Google has admitted that all of their algorithm type questions are not good predictors of on the job performance, but questions about experience and "how would you X" are. I don't consider their data the last word on the subject (their hiring is quite narrow after all), but certainly suggestive.

I absolutely agree with asterisk 2, so I didn't address it.

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#224
post #190

Earlier quoted context omitted.

But thinking has the side effect of storing lots of stuff in your memory. So you can end up with encyclopedic knowledge of subjects that you've spent a lot of time thinking about. It just isn't knowledge that got stored by explicitly trying to "memorize" things (which means it's more reliable anyway, since it's knowledge that's connected to other things you know).

I store a lot of "I've read the solution for that problem somewhere while researching something else." I still can't recite the stdlib doc for any of the programming languages I work with. There's only so much stuff I can cram in my head and reference docs are fairly easy to look up.

I store a lot of "I've read the solution for that problem somewhere while researching something else."

Yes, this is more what I was thinking of as "encyclopedic knowledge" (which may not be what the parent post to mine meant by the term).

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#225
post #218

Earlier quoted context omitted.

Except that being poor taxes intelligence: http://articles.washingtonpost.com/2013-08-29/national/41584... So in fact, it is more likely that people from wealthy backgrounds are able to better utilize their intelligence, and thus retain their wealth and status, whereas people from poor backgrounds are at a disadvantage when it comes to escaping their position in life.

Whereas the wealthy are more advantaged to "escape?" Where do they escape to?

Did you read more than half of one sentence that I wrote? The poor are at a disadvantage when it comes to escaping their position in life; if you need this spelled out for you, the poor are disadvantaged when it comes to making decisions about saving money that could help them improve their financial situation. Wealthy people are better able to make rational decisions about their money, which helps in retaining wealth.

Maybe you should actually read the article I linked to, if it would help you understand what I wrote.

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#226
post #223

Earlier quoted context omitted.

> Did you read the OP? Did you read my post? May I quote myself: > Certainly, asking only math questions is stupid as well So what I actually advocate is asking questions about the field that the person is going to work in. I still like to ask some math questions - a lot of the stuff that programs deal with basically fall back to math. Heck, all relational database stuff falls back to set theory, so knowledge in that…

Yes, I did read your post. The point is whether asking math questions at all is valuable compared to the other questions you asked. I do not believe you particularly addressed that in your post or in this one. It is a proxy for what you are actually trying to measure - why not measure what you want to measure? Your first asterisked point does not at all square with my experience. It depends on the program of study; I…

> The point is whether asking math questions at all is valuable compared to the other questions you asked.

The author uses a graph search problem as an example - which is a very typical problem in IT. How do you approach such a problem? This is a valid math question that certainly adds value compared to other questions I might ask. It actually checks for multiple things: Does the candidate have a grasp of the underlying mathematical concepts. How does the candidate approach a problem decoupled of the actual real-world constraints of a programing language? Can the candidate describe a problem in clear, concise terms? Same for set theory: intersection, union, functions mapping input to output. Complexity analysis of algorithms - all of that is valuable knowledge and it's absolutely valid to ask people for that. How does binary AND/OR/XOR work? How does an exponential decay curve look like compared to a gauss or linear curve? This GH issue https://github.com/elasticsearch/elasticsearch/issues/3423 was posted on HN as example of a great feature description and it's full of formulas describing how it works. Vectors, matrix multiplication is a fundamental thing when you're doing natural language processing. Statistical problems are not exactly uncommon in programming either. Map/reduce are mathematical concept. What's wrong asking for that? Failing the answer does not mean that the interview is over, but to assert a candidate I need to know what she knows. As annoying as it sometimes is, math is _the_ _fundamental_ underpinning of what we do every day.

> As far as that goes, I try to question them about school projects.

Totally fine and I agree. Still - what's wrong with asking math questions?

> Google has admitted that all of their algorithm type questions are not good predictors of on the job performance

You're running into a problem if you hire only for math knowledge. But -repeat- that's not what I've been advocating.

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#227

Earlier quoted context omitted.

Did you just say that education requirements are legally risky? That is brand new to me. I would love it to be true, but I've never encountered it in reality.

They're only risky to the point where you can't make a case for them. In the Duke Power case, there was little reason whatsoever to require a high school diploma. Using education requirements for exempt job with more autonomous decision-making and reliance on knowledge wouldn't be a problem.

That sounds closer to reality. I'll be most software companies could defend such a requirement if it ever went to court.

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#228

Here's the test I've used in the past: Before the interview, I ask them to write some code to access an HTTP endpoint that contains exchange rate data (USD, EUR, GBP, JPY etc.) in XML and to parse and load said data into a relational database. Then to build a very simple HTML form based front-end that lets you input a currency and convert it into another currency. I ask them to send me either a link to a repository (…

Hey, that seems like an awesome hiring process. Personally, I think that if you want a brilliant mathematician/problem solver, then that's what you should put in the job listing. Then asking the kind of questions exemplified in the article is likely merited. On the other hand, if you want a good programmer you should mainly look at the quality of the code they produce.

I concur. Even in software engineering job positions a lot of times people advertise for X but end up asking Y and judging according to Y.

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#229

Earlier quoted context omitted.

OP would still blow you away by using the Nested set model: https://en.wikipedia.org/wiki/Nested_set_model Although if you've been doing this interview for a while, you're bound to have come across someone who mentioned it, so I'm sure you're familiar.

And even better - knowing that quite a few database engines have extensions to help handling hierarchical data and it probably depends on the details as to which is actually better in a particular circumstance.

Definitely. Nested sets have a lot of weaknesses, and any decent modern database will have CTEs so you can just use an adjacency list with a recursive query, or materialize out the closure table.

Re: Dear Startups: stop asking me math puzzles to figure out if I can code

#230
post #196

Earlier quoted context omitted.

What I like about your method is it also allows you to catch folks who fudge the work product.

And let's people through who fudge the work product, but can explain it. Which is a good skill.

I think it's only good if they fess up to it. Leveraging other people's work is fantastic, and underdeveloped in our educational system. Taking credit for other people's work, well.... :-)
Post reply on HN