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 (…
Dear Startups: stop asking me math puzzles to figure out if I can code
221–230 of 354 posts
Re: Dear Startups: stop asking me math puzzles to figure out if I can code
#222Earlier 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.
Re: Dear Startups: stop asking me math puzzles to figure out if I can code
#223Earlier 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…
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
#224Earlier 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.
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
#225Earlier 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?
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
#226Earlier 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 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
#227Earlier 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.
Re: Dear Startups: stop asking me math puzzles to figure out if I can code
#228Here'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.
Re: Dear Startups: stop asking me math puzzles to figure out if I can code
#229Earlier 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.
Re: Dear Startups: stop asking me math puzzles to figure out if I can code
#230Earlier 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.