nice work. one of the biggest problems with external tracking services (mixpanel/kissmetrics/google analytics) is reconciling the data with what's present in your database. this solves that problem really well. great start
Most of these analytics providers also allow you send data from your server that you can then correlate with your visit data. While I think solutions like this works initially, in my experience you will spend a lot more time building the capabilities that an analytics package could provide out of the box with little work. For eg., being able to visualize tracking live as it happens is something I have really gotten used to.
I'm not familiar with the other analytics providers, but can't you track certain events (like orders and charges) and bind properties to them using Mixpanel? This could help you reconcile the data in your database.
You are right - 8 hours of uninterrupted time is excessive. And, our approach specifically does not ask for that.
If you see the constraints defined in the post - the goal is to have the interview be remote so that the candidate can do this wherever and whenever they want. And, the tests are specifically designed to be not longer than 4 hours long each. Perhaps what wasn't clear is that this is not in a single session.
Interviews can go for as long as a week - really depends on the candidate's schedule.
Our process 'weeds out' candidates as soon as we know that its not a good fit. This in reality saves the candidate ( who may be interviewing at other places as well as working like you mentioned ) as well as our time. The 7 hour number keeps coming up, and seems like a lot, but very few candidates actually spend that much time. And, most of those are actually hired.
We've tried conversations as well, but unfortunately, it is very difficult to objectively measure them into what will make the candidate successful at the company (interested to learn how you do it).
Why not 2 days, then? Maybe he should complete an entire project for free - why not, for a "several year investment?"
Personally, I think it's great when companies not only advertise these kind of practices with pride, but then send staff out onto the net to defend them against a veritable tide of criticism. It will certainly help you narrow your pool of applicants, and that is clearly what you are after - it says so in your "how to hire a human" flowchart! Haha.
Strictly-speaking, there are probably more people that know Rails then there are jobs requiring it. Even given that, the balance of power in the labor market is still supply-side. A Rails engineer can easily get jobs in just about any other platform fairly easily, and probably already has on occasion. But a company can't magically turn a need for a Rails coder into a need for a Java one.
Fully agreed. We look at code cleanliness as part of the review. And, the algorithmic questions are not problems that you'd normally find online. They are custom problem that we've had to solve at Instacart