That's quite an undertaking. Is this a white-label thing? I'd imagine there's quite a lot of management that goes into being a registrar on top of a blog platform!
946 karma · joined July 8, 2013
That's quite an undertaking. Is this a white-label thing? I'd imagine there's quite a lot of management that goes into being a registrar on top of a blog platform!
Loyalty program? Upselling? Competitor advertising or intelligence?
Congrats on your success.
In my 15+ year career I've not met a single person who could do this. Not even close.
I'm not doubting your abilities as a developer, just pointing out the typical oversimplification of scope and underestimation of effort that happens in software development. This is why software projects are always 'late' and 'over-budget'
I think what makes this example so confusing (as well as the other common hadoop example where you do a partial count in the mapper "hello":3, "goodbye":2) is that the keys mean nothing to the final result (unless you really wanted to know the frequency of each word) - they are only used to shard the work.
Sorry I don't have a real-world example (crunching log files as you mentioned is a common one, but it's really just the same thing: counting frequencies)
http://abcnews.go.com/ThisWeek/week-transcript-rep-peter-kin...
"KERLEY: The prime minister confirming the report by ABC News the communications gear was deliberately shut down. Now we have learned from a source close to the investigation that whoever was controlling the plane preprogrammed that sharp left turn right off of the flight path, convincing investigators that someone was in control of the jetliner, either a rogue pilot or a hijackers."
-typical HN libertarian. They'll show up, just wait.
I really wonder if those places ever find people that can do this. I never get offers from the places that ask this. I always get offers from the ones that have a similar process to the one in the article. I don't think I've ever even met someone who could answer these questions on-the-spot, with a marker on a whiteboard.
> Hashing passwords is CPU intensive if you're doing computationally expensive stuff (bcrypt, scrypt).
If you are continually logging-in so many accounts that hashing the supplied password is becoming a performance problem, you are either doing something terribly wrong, or you are so big that no SaaS could possibly support you anyway (FB?, Google?).
> If your site has user accounts, it's likely that every single page on your site requires some sort of user data
This, in fact, IS a scaling problem, but I don't see how it's related to authentication. It's a content/caching problem. And even if the problem here was related to auth - are you suggesting that whichever DB/IO operation is causing it can be made faster by a HTTP request going out of the datacenter? Not really sure that's how I'd fix it...
which is why the talent pool is larger and salaries lower.
My brain, right now, is working on a way to pop messages off of a RabbitMQ queue onto a clustered pool of Akka workers while minimizing the duplication of work and avoiding race conditions in the output.
My career experience is in Java with a sprinkling of Python. I honestly cannot recall off the top of my head the I/O Api to do that task. Let alone on a whiteboard or in some shared google doc.
Hm, I need to open a file. OK, no problem - new java.io.File(path). Er, wait, I remember there's a FileReader. Probably should use that. Do I need a File first? Or can I just give FileReader the path? Ah, shit - I need to read each line. I think that's a BufferedReader. How do I get from a FileReader to a BufferedReader? Is it constructor param? Wait, maybe FileReader _IS_A_ BufferedReader.
So, I 'fail' the interview with you. Maybe your company has a need for someone who can write a 10 line script that can read a file line by line without having to look at the API while being timed. In that case, yes, you probably have weeded out a bad candidate.
Represent those numbers as integers in your program
Replace each number with that number times its line number
Write the file out elsewhere
And complete the task right now at your computer as fast as possible, you’re being timed
Think—what language would you immediately reach for? Do you start your experimentation with ipython, or irb? Do you pop open Eclipse and write some Java? Or create a new .cpp file?
I have 13 years of experience leading teams in building and designing web applications in a wide variety of languages and platforms - some pretty big ones, too.
I would not be able to do this in any language without looking at the API.
And they wonder why "It's so hard to find good people!"
Location is everything, I suppose.