Quixey might be a great place to work for, but their site certainly does not make it clear how they intend to beat Google in the app search area (presumably that is what they are trying to do?). And their "About" section is a hodge-podge of buzzwords and slogans like " forms partnerships", "invented a new type of search" and "is the future".
I have tried searching for a couple of apps for different platforms, and Google search shows what I wanted in the top 5, whereas Quixey found nothing of relevance at all. Seems like a Yet Another Inferior Search Engine. Then again, it gets some positive reviews, so I might have been unlucky.
Just beware that your career with Quixey might well be, while fulfilling, likely not a very long one.
http://www.uquery.com/ would probably be closer to home. I'm a bit curious about "powering custom app search" model - is there anyone well-known you're powering you're willing to mention?
In what sense are you using the term "engineering" here? I work as an engineer, though almost certainly of a different kind (mechanical/structural/aerospace). Edit: Reading your history (or just the context of the accouncement), it's clear you mean, "software" engineer. What I mean is, do you regard anyone in engineering as potentially having the skillset you want, even if it's not specifically software? I also see your previous test although surely you'd want to use a different one that hasn't been out for a year.
This is definitely somewhere I'd want to work, but I don't think I have as much software experience as would be wanted right off the bat. I've downloaded the LW site hacking package and am still getting accustomed to git and Python, though I write code as part of my everyday work.
/me looks up the job description on the website
I suspect I'm not qualified. I don't know Python (the only languages I'd consider myself competent in are C++ and Perl) and am basically at the "fresh out of college" level of competency at programming.
On the other hand... I think I can solve those screening questions!
A client connects to a server which will stream it N 32-bit integers and then disconnect, where N is a-priori unknown to the client. Describe an O(log N)-space algorithm you could run on the client that would return any of the N integers with probability 1/N. (The algorithm only gets run once.)
I think you can do this in O(1) space, actually. Would it be inappropriate to post a solution here?
Edit: Actually, I guess my solution does technically use O(log(n)) space, because it takes O(log(n)) space to store an unsigned integer that can grow arbitrarily large...
Write a (stateless) function nextPermutation that takes a permutation (as a list) on the elements of the set {1, …, n} and returns the “next” permutation, so that chaining n! calls to nextPermutation([1, …, n]) results in the generation of every permutation on the set {1, …, n}.
I'm not sure I understand the question properly. Is the list you're given as input literally a permutation of the first N integers, or is it an arbitrary list of N things? If you're not allowed to "look at" the N items in the list and have to use an implementation that always performs the same transformation of the input, this is impossible. If N equals 3, there are six possible output cycles you can produce...
{a,b,c} -> {a,b,c} {a,b,c} -> {a,c,b} -> {a,b,c} {a,b,c} -> {b,a,c} -> {a,b,c} {a,b,c} -> {b,c,a} -> {c,a,b} -> {a,b,c} {a,b,c} -> {c,a,b} -> {b,c,a} -> {a,b,c} {a,b,c} -> {c,b,a} -> {a,b,c}
none of which include all 3! permutations of {a,b,c}. So you have to "cheat"... which should be possible, because everything is stored as just bits (integers) anyway...
"1 out of 100" wouldn't tell me much because I have no idea what a representative sample of developers looks like. Maybe it would be more clear to anchor to some skill level that people can roughly understand, e.g. "ThoughtWorks", "Google" or "quant finance". Such a scale also has the bonus of setting salary expectations appropriately :-)
Quixey is a 2-year-old startup with a lot of ties to the rationalist community. Our product is an all-platform "functional search" engine for apps. Our main engineering task is to build the most accurate possible map of all software on all platforms (the "functional web"), and write search algorithms that let users find apps to do what they need.
We're hiring top-notch engineers for full time positions in our Palo Alto, CA office. If your overall engineering skill level is "Google+", we have a lot to offer: