4,443 karma · joined October 20, 2010
kishore at typesense org https://calendly.com/kishorenc/30min
And, that's not very different from someone spending more than the expected 40 hours at work. One can't do much about that if that person genuinely loves coding all day and does not mind working 60 hours a week.
Finally, in the follow-up call, I do ask the candidate how long the assignment took and how she spent her time across multiple tasks. Obviously if someone spent 10x the expected time, then that's another data-point to the final decision.
Some think that code-while-on-the-phone interviews are bad (too much pressure for some candidates), while others think that take-home interviews bring all kinds of issues (e.g. candidates copy pasting code from Stackoverflow).
Some think that white-boarding is important (insights into the thinking process versus syntactic correctness), while others think that it's not a true evaluation of what the candidate will actually be doing at work.
Some think that asking pure algorithmic questions are bad (does anybody even implement their own hashmaps at work?) while others think that it's a reflection of how much a candidate explores the depth of a subject.
Some swear by HackerRank/Codility based automated tests to "filter" unqualified candidates, while others think that looking at Github for their code samples would be a better evaluation.
Some want generalists, while others want specialists.
Some people reject candidates on arbitrary "culture-fit" reasons.
Personally, here's my ideal interview process based on all these conversations and my own 100+ interviews in various places I have worked:
* Minimum reliance on resume - some people are just bad at writing about their achievements
* Have an initial 30-min call to learn about the projects that the candidate has worked on (especially if you are hiring a specialist). This should not be a filtering round unless you see something totally off target.
* Send the candidate a take-at-home coding assignment. This should ideally take only 2-3 hours and should be directly related to the kind of work she will be doing at work.
* Have another 30-60 min follow-up call to ask the candidate about the approach taken, alternate options, and possible extensions. This will help one ensure that the candidate had not merely copy pasted the code from the Internet.
* If everything looks good, bring the candidate onsite for face-to-face interviews.
* I prefer 2 rounds of face-to-face - the first round asking questions around the candidate's areas of strengths, and projects previously worked on by her. On the second round, I prefer asking questions that are from the domain I am working on. This will allow me to find out how the person attempts to understand a new domain, and whether the person listens/asks questions etc.
At the end of the day, interviews are subjective, and I have made peace with the fact that you're always going to miss out on people who might have just had a bad day.
Something to keep in mind when you're planning to raise money.
I have seen quite a few people move off AWS successfully onto bare-metal leased hardware. S3 is just about the only service that's difficult to find an alternative for. Personally, I find using something like DynamoDB no different than using an Oracle DB - it's a vendor lock-in. Unless you had enterprise-level support on AWS (which costs a lot) - if you run into issues with Amazon's proprietary services, then good luck to you.
AWS is great to get started, but once you know that you're going to need scale (and lots of infra), it's best to move.
I say all of this as someone who has extensive operating experience on AWS. YMMV.
Unfortunately I thought that this was exactly the problem starfighters was supposed to solve. I.e. qualified engineers getting dropped mysteriously due to various biases of a company's interview process.
https://code.google.com/archive/p/word2vec/
Recurrent neural networks:
Right now I basically run N architectures on N GPUs at the same time to speed things up. And that's a luxury.
However, last week I finally reversed my decision and started using ad blockers. Why? Frankly, many sites are just greedy. Banners were ugly enough (and I tolerated them) but many sites these days show ads that cover the content, and going as far as to hide the [x] button for a few seconds. And, I am not even talking about privacy and security issues.
Businesses have to come up with better monetization strategies. Shoving ads on my face and making me accidentally click them is a net loss for everyone.
Ironically, HackerRank itself is a part of this problem. All of those are true for HackerRank coding challenges.
As another commenter has pointed out here, HackerRank (and other coding test platforms) want to commoditize the hiring process, but in a way that ensures that candidates are the ones who are doing the all the work. The companies just don't want to spend any time in the interviewing process. It's no wonder that so many companies are struggling to hire good engineers.
If you as a company throw me an online coding challenge as the first interaction, you can be rest assured that you won't be hiring from me again (and many others).
By using such automated tests, companies want to identify top talent by taking a shortcut and not investing any time on their side.
My first 3-4 side projects were abject, miserable failures. It took me 5+ years of waking up to failures before I had something going that really gained traction. If I had just stuck with my first project, I am sure I would have gotten nowhere. So, have the guts to pull the plug on the project if you think it's the end of the road. It's okay - take a break, and you will bounce back even stronger.
> Seriously, I would never ever hire someone who wrote something like this.
The fact that nobody writes about these issues is the reason why some companies take their non-tech employees for granted.
There are also several gotchas around start-up options. You should read this: http://blog.samaltman.com/employee-equity
Here's what I would suggest. Reach out to a few people from these organizations and ask them for their general views on your project and what their major pain points are. I'm sure they will be more than happy to talk to you about it if they're indeed already deriving great value from it. Once you have established a good rapport (i.e. warming up the lead), set-up a call with them to pitch your vision for the paid product. A call is crucial because email and text can only communicate so much - you can get a far better idea of their domain and problems through a quick 45 min call. Scheduling this should not be a major problem once you have established a good email channel previously.
If you can get about 8-10 people interested in exploring your paid offering you have something that's promising. After that you can think about scaling the business with self-service etc.