Dropbox is making the transition from a startup to a real company.
And they're doing it in an audacious way: make something people want, charge them for it, and sell it to millions of people.
There's no "capture a fraction of the transaction cost" or "throw ads at people to extract value from something they'd like to get for free" here. It's a very clear, "make something people want enough that they'll pay you for it" business model.
And as a maker, that's an exciting place to be.
The level of vertical integration (buy electricity, server components, and dark fiber/sell to mom and pop consumers) is the kind of thing you only expect to see from the phone company, or maybe Google or Amazon. Certainly not from a company with a couple hundred engineers.
On a day-to-day basis, that means that the impact any particular engineer can have is HIGH.
The overall philosophy at Dropbox seems to be, "hire the best people you can find, and give them the freedom to do their thing."
On the engineering side, this means the team is friendly, smart, and eager to help each other, making it a great place to learn.
That same philosophy applies outside of engineering, as well.
Take the tuck shop (cafe), for example: Chef Brian and Chef Danny have hired great talent and given them the latitude to be creative, and as a result Dropbox has the best company food I've come across.
My friends at Google love coming to Dropbox for lunch because the food is such a treat.
Dropbox is making the transition from a startup to a real company.
And that means having the downsides of both a startup and a real company.
The real company downsides are pretty familiar:
The small company downsides are also real:
My biggest concern personally is that leveling and career progression seems fairly haphazard.
Reviews have happened about twice a year since 2014, and every single review cycle has used a different set of criteria. And they're developing a new one for this fall's reviews.
On some level, the things that make you a good engineer are universal across evaluation frameworks, but on another (e.g. does the system emphasize how well you facilitate other teams' work or how well your team executes its own tasks) it can make a pretty substantial difference.
The current management framework puts managers in a position of having to choose between company values and their team's OKRs. Different managers will err in different directions when it comes to that tension. Consider how values and OKRs map to each other.
Well over half the company has joined within the past two years. Spend more time with those people; they are who will be driving the company forward.
The interview process was a coding assessment and a phone screen. The coding assessment was a design question consisting of four parts. It increased in difficulty and involved designing a system to do a certain task.
Phone interview: The question was to find all duplicate files in a file system. Follow-up questions included: * What if files are large? * What if files are small? The interviewer was kind of indifferent.
After the resume screen, the second stage was a coding interview. I was asked one question related to recursion, specifically to find a duplicate file in a filesystem. This was conducted in a browser-based text editor.
The interview process was a coding assessment and a phone screen. The coding assessment was a design question consisting of four parts. It increased in difficulty and involved designing a system to do a certain task.
Phone interview: The question was to find all duplicate files in a file system. Follow-up questions included: * What if files are large? * What if files are small? The interviewer was kind of indifferent.
After the resume screen, the second stage was a coding interview. I was asked one question related to recursion, specifically to find a duplicate file in a filesystem. This was conducted in a browser-based text editor.