Pros
* Good compensation. * Developers are very skilled and clever, there are no juniors or retards. (See negative reviews for some people that were fired on this basis after, like, 2 days worth of employment — and rightfully so.) * You learn a lot of stuff on a daily basis, and get to work on wildly different tasks. * There are no long hours, and no rigid timetable to adhere to. * Can work either in-office or remotely. * There's a cook at the office, making healthy food. * Company's CEO and CTO are probably the best senior managers I've ever worked with, very intelligent and rational.
Cons
* Middle management blows... badly. This is obviously subject to change, the description is accurate as of now (2015). * They (used to) lie about the choice of hardware to work on. In practice, they pretty much dictate this aspect, and you're forced to use a fugly Thinkpad. No MacBook for you, unless you're willing to bring your own (and even then that's questionable). * There are late-night calls sometimes, when things go south. This is true for any startup, but still.