As of about three weeks ago, I no longer work at Facebook. I am now at a start-up called Flexport, which I doubt many people have heard of yet. We are working on fixing the inefficiencies in international trade with the ultimate goal of making global trade frictionless. Clearly we have more down to earth plans which we are starting with, but that is the vision that helped me make my decision to join. I was not going to write a post about why I left Facebook in much detail, but I think it is worthwhile to get some thoughts out there in the open.
Let me start out by saying, that my time working on the iOS product infrastructure team at Facebook was both challenging and rewarding. I think everyone who is involved with product infrastructure, both engineers and management, and across the different technology stacks: web, iOS, and Android, are incredibly talented. I was thoroughly pleased with the fact that I got to work along side them. So I just want to be clear that I didn't leave because I was pissed off at my team or my manager, or anything petty like that. The reasons I left, in no particular order, are:
I guess it would make sense to address each of these because they certainly can be misinterpreted. I also want to be clear from the outset that I understand that there are many facets to every seemingly obvious fact and so my opinion about how something is/was might not match that of another person even though we both thought we were looking at the same thing. I will justify what I am saying to some extent, but in a lot of ways these are just my feelings about how things were and I don't want to get into a long winded discussion of the minutiae.
Facebook is a product company first, the collection of products that define the site/app begin with Newsfeed, continue with things like Photos and Chat, and then keep going through a long tail of things like Gifts and Groups. Because of the size of the user base, nearly every feature is used by millions of people, but real usage is measured in the tens to hundreds of millions. Facebook is an engineering company second. The culture is very much driven by the engineering organization and the engineers within, but they are primarily focused on getting iterations on the product out the door. Contrast this with a place like Google which is an engineering company first. The product is the result of engineering effort. They are focused on solving a challenging problem, and then presenting that solution to the world wrapped in a product. I have never heard anyone disagree with this sentiment at a high level, although you can certainly disagree if you are one of the guys working on the Linux kernel at Facebook. But at the end of the day, Facebook is about the product.
I have no qualms with that in principle, but I have felt that Facebook has not actually meaningfully innovated on the product in a way that people actually use in a long time. You could point to Timeline, Graph Search, Home, Paper, but I would remind you that only one of those has meaningful usage numbers and that is only because it was forced (Timeline). As a user, Facebook hit a product peak for me near the advent of feed. A thousand small improvements and tweaks have made the site not look and feel like geocities like it used to, but everything has felt incremental to me.
Now, where is all of this going? Will Facebook innovate drastically, or will it continue to do things incrementally? I think the potential to innovate is there, but I don't see it really taking off inside of Facebook. I think the people with the most potential are going to strike out on their own and take a flier on their idea. Facebook is trying to capture this with the Creative Labs effort, but I didn't feel that was working in a way that would ultimately prove successful. Combine this with the seemingly random series of acquisitions and plans for free internet for the whole world via drones, I just don't see the company going in a direction that I am interested in.
I have a strange personality combined with quite a bit of Asperger's apparently. However, I know myself very well, even if what I am is odd. One thing I have learned through observation is how I go through cycles of extreme productivity and mild unproductivity. The cycles are both large, on the order of years, and small, on the order of days. During my less productive years I get into states of boredom where I start to question my entire past and future path through life. For instance, while studying for my qualifying exam after the first year of my PhD at Princeton, I pondered the idea of dropping out and enrolling in college again to get a degree in Physics so that I could go in to a Physics PhD program and study cosmology. I was just at a bit of a crossroads, and I think subconsciously I was a bit uneasy about the exam I had coming up because I had heard some horror stories about people being forced out if they failed. My confidence is typically irrationally high, but sometimes my subconscious is more rational. That combined with a bit of uncertainty about what the hell I was going to do even if I finished my PhD resulted in me getting into a bored state where I was not productive for a few weeks and was looking at every possibility. I forced myself to suck it up and told myself that if I couldn't pass the exam then I wasn't actually smart, and if I passed then I could revisit these thoughts. So naturally I studied and got through it, and by that time my boredom had blown over into a year of more productivity. I rode that productivity through the end of my PhD, but by the end it was starting to taper out and I was getting back into some unproductive times.
Caltech was very unproductive for me in terms of actual work output, but it was actually quite productive at understanding myself. That is the trade-off I usually encounter, I can either be internally productive or externally productive, but rarely both. Long story short, this last year at Facebook started out very productive, I had a bit of productivity that I rode out of data science and carried me for a while. However, the past few months I think I started to enter into a more bored and contemplative phase. Based on my past I can get out either by punching myself or changing what I am doing, or just waiting some time. I decided to consider the possibility of leaving and to think about some other factors to see if it made sense. In the end I didn't leave just because I was bored, because clearly I could have gone to a different team or whatever, but the bored state of being that I find myself from time to time opened up the door for me to entertain the possibility.
Okay all that talk about boredom has made me realize that I put too many bullet points for me to actually want to write about them all. I will try to shorten these up a bit.
One nice quality of a large company is the ability to ruthlessly focus on the one thing that interests you and get really good at that. You don't have to worry if the servers are working or if payroll is getting down, you just have to focus on that new piece of infrastructure or feature that you and your team are building. You can build a new language and migrate millions of lines of code to use it, you can build a virtual machine for a language because the transpiled C++ is too slow, you can build a unit that shows up in the iOS news feed for particular types of stories that your friend's share that have multiple photos attached so that they look and feel nicer. At a startup, sometimes you have to ssh into your production servers and manually run queries against the single db because some client can't figure out how to log in and you haven't built a robust password reset system yet, you sometimes have to do things you have no idea how to simply because they need to get done, now. It is these opportunities to do anything and everything it takes that I was looking for. I love going deep on a single problem, I know what it feels like, trust me. I don't really fully know what it is like to figuratively live or die based on how well you can do a ton of different things. I want that. I don't think I could truly get that at Facebook, nor do I think it should even be possible. The entire point of a well established and well run company is to abstract those things and allow people to use their comparative advantages to help you win. I hope I can make my new company one that people say it is too easy to work here, but I want to be part of building that.
I don't have much to say here other than I think Facebook, no matter how much some people try and no matter how much people claim to want to change this, has an unhealthy obsession with quantity at the cost of quality. There are exceptions you could point out, and you could even make a case that there are reasons to believe this is changing, but I don't think it is. From the top down and from the bottom up, most people there can only think in terms of quantity.
I want to talk here purely about money. Ignore everything else, let's just focus purely on money and leave all other "oh but what about this experience" stuff to the other sections. Also I am going to talk purely within the world that is Silicon Valley in the early half of the 2010s for a person with my background and experience. That means for instance that I would call certain salaries small even though they would put me in the top 10% of earners in the US.
If the startup I have gone to is unsuccessful, I will stand to have traded off whatever potential salary I would have made at Facebook plus whatever stock I would have vested over the time period from now until said failure versus my salary at this new company. Let's just say that the difference in salary is really not all that much, they both meet my needs and I only recently was promoted at Facebook to a point where my salary was actually a decent amount of money. I don't want to get into it too much here, but I made a poor decision and I think Facebook took advantage of my ignorance when I started to the point that I did get some stock but not enough to keep me interested in staying as if it was something that would be too much to lose in the aforementioned trade-off. If the startup I have gone to is even moderately successful I will stand to make more from equity than I would have gotten from Facebook over the same time period and the salary difference again will be marginal to non-existent.
Let's consider the worst case scenario for me, something ridiculous happens where I work for several years on this startup and then it fails spectacularly rendering all of my equity worthless. In that situation, I go get a job at Facebook, Google, Twitter, some different small startup, or I start my own company, or even still I could go into finance if we are talking purely about money. The only thing lost is then a few years of negligible Facebook stock and some time value. I am young enough where that isn't the end of the world.
Hence, from a purely monetary perspective, it makes absolutely no sense to stay at Facebook. Even if I absolutely killed it, and did "better" than every single engineer there for multiple years in a row, you can compute how much money that would be worth, and it just isn't worth it, from an expected value perspective. (I understand my built-in positive bias for my new company, which is not justified based on historical data, but such is life).
I want a smaller environment, Facebook always felt way too big to me, and when I left I had been there longer than 68% of the current employees.
I was hired at Facebook into the Finance org as a Quantitative Business Analyst, which is funny on many levels. Within a few months of my joining, Facebook hired Ken Rudin from Zynga to become the head of a new org known as Analytics. Well not exactly, but that is what eventually happened, I forget exactly the organization structure at the beginning, I went from Finance to Growth and then to Analytics, and my title changed rather quickly to Data Scientist, which I will get back to. Nevertheless, my team had a meeting with my manager's manager's new manager, Ken, within his first week there. The result of this meeting was that I realized a few things: I was going to leave Facebook immediately or change to engineering, and Facebook was going to fail miserably because of this guy they hired. I was wrong about both, for the time being. I was reassured that I did not need to leave, that nothing would actually change, because I had a manager insulating me from any real changes and he was determined to keep operating the same way. So I stopped looking for jobs and kept working. But slowly, things did change, it was always minor, I always complained about it, but the changes were never enough to really rage quit over so I kept going.
Eventually, I took a step back and looked at where Facebook stood in terms of the group of people looking at data and the goals/purpose of those teams. There has been a Data Science team for a long time, which consisted of a small set of people with PhDs that spent most of their time working on social science research with the intention of publishing a fair amount of their work. They also built some tools that are used across different teams in addition to spinning out a few teams dedicated to things like ensuring the systems used for measuring events was correct and scalable. At some point after the analytics org was formed, there was some political maneuvering and some bickering which led to a new group of people getting the title Data Scientist. These were the people in the analytics org who had also gone through the engineering bootcamp when they joined. It was deemed that data scientists were just analysts who could also code. However, going through bootcamp and being able to code are not actually synonymous. The people at the top of analytics, being ignorant of what both data scientists and analysts do, made this decision mostly as a recruiting tool. People at other companies were being called data scientists and were turning down Facebook offers for roles as analysts. So let them have the title. Well, this seriously offended the team formerly known as Data Science, but the reason was not understood by those who made this decision. The reason this is offensive has to do with guilt by association, roughly. If I interact with only one person with a particular title, say as an engineer working with a data scientist, and that person is terrible, I will naturally view the next data scientist I come across in a slightly negative light. Now that is generalizing, but everyone does it. I got this same type of stereotype applied to me when people found out I was in the analytics org because of the interactions they had had with analysts.
I was not on the Data Science team, I didn't know there was a distinction before I joined Facebook. I was sold on the concept that it was all the same thing, just that I would mostly be working on problems related to the product rather than writing papers. This was fine with me because if I wanted to be writing papers I would have stayed in academics. However, I was misled, and things only got worse. The analytics org at Facebook has so many problems that I don't really want to go into all of them here. One major consequence of these problems though is that all of the good people either move to engineering or leave the company. I know of at least 8 people who have left the analytics org because of these problems. That might not sound like a lot, but those are the ones I can think of off the top of my head who I have sat down and had a conversation about these things with. I know there are even more than that.
I should say that there are a ton of really smart people in the analytics org, a lot of them who I would say are there due to a bait and switch. There are many who are quite happy with what they are doing because things are actually highly product specific. However, the vast majority are not happy with the way things are being run and are looking to leave. Before leaving this too negative, I do want to point out that I had a really good manager when I was in analytics which made my time there actually pretty enjoyable because he isolated me from much of the day to day annoyance of these problems. But my issues were larger than just my day to day, they had more to do with a broken incentive structure and with a misguided value system. I also worked with a ton of people who are still there doing great work. And I should also note that the core Data Science team is still there and have mostly been unaffected by these issues. Everyone on that team that I have come across is very good, so I find it is an additional insult to them that they are associated with the problems of the analytics org that stem from that org calling everyone the same title as them.
I am excited about the role Flexport plays in the world. Facebook as a product has always cut two ways for me. On the one hand I think connecting the world and making it more open is one of the great achievements of the past 100 years. On the other hand, when I see how people actually use the product and the concepts being worked on internally, I am underwhelmed. I am more interested in fixing something that is broken and has real value, rather than making it marginally easier to show people pictures of my dogs.