Photo by Cyndi Caviedes

It’s been a couple of months since I was fired from my job as a Backend Developer at GitLab. At the moment, I didn’t make a big fuss about it, I focused on learning from that experience, and switched straight into job hunting mode. But as time has passed I was able to reflect on my time at GitLab, everything I learned, everything I contributed, and how I helped the company become what it is today. Then a couple of days ago I received an email from eShares that my stock options were about to expire.

This led me to really meditate and reflect on the question: Do I want to invest my money in this company? What follows is a brief review of my time at GitLab, what led to me being fired, and how I came to my decision.

Some background

The first few months

I joined GitLab as a Service Engineer in October, 2014 as its 9th employee. The first few months were great! I learned a lot, I got to know my colleagues, and really enjoyed doing what I was doing. In January, 2015 GitLab was accepted to YCombinator. Since the company was small enough, the CEO decided to take us all to Mountain View, rent a house, and spend a couple of months together. These were really the best months of my entire tenure at GitLab. We worked a lot, more than 10 hours a day, and sometimes weekends also, but we also had a lot of fun. Everyone was really open, friendly, direct, and we accomplished a lot.

A few months after YC is when trouble started brewing. A lot of people were hired, and fired, after this period. I was personally surprised by the turnover. GitLab was on a hiring spree, it felt like a grow or die moment.

The first summit

By the time the company got together again, we were already at ~30 employees. The summit took place in Amsterdam in October, 2015. At this point some growing pains were already apparent. I heard from different people that they were having problems with one of the recently minted C-level execs. They felt he didn’t quite fit the culture of the company. I felt the same way, but it was not my place to say anything. I thought that our CEO would feel the same way and make a change. That didn’t happen. In hindsight, this should have been the first clue that the culture of the company was changing.

The months went by, more people joined the company, some of them left almost as fast as they joined. To me, this seemed unsustainable.

The second summit

By the time the second summit came around, the company was already at over 90 employees, and this was just 7 months later (May 2016). At this point I already had had some run-ins with the CEO. Let me elaborate.

Even though the company was growing fast, my department, the Service Engineers, consisted of only 3 people at the start of 2016, and for a long time it was just me holding down the fort. Luckily by the time of the summit we were up to 5. I was in charge of hiring them, so I went to great lengths to make sure my team consisted of the best possible people, with great engineering skills. You would imagine my concern and indignation when the CEO decided that the Service Engineers were to handle not just our increasingly demanding enterprise customers, but also every single GitLab related question posted on the internet, not just Twitter and/or Facebook, the entire internet!

I, of course, opposed this measure and went on to make my point as to why that was the case. I also suggested hiring specialized people, like Community Managers, to handle this task, which to me sounded reasonable, but management saw this as me going against the company’s best interests. To me, this clearly meant that it was no longer OK to voice your opinions, like it was in the past. In hindsight, this should have been the second clue.

My time as Backend Developer

After the run-in happened, I decided to lay low and focus on the job. I even stopped posting on Twitter, because the CEO already had questioned me about what I was writing.

Why are you monitoring my private Twitter?

After a year and a half of being a Service Engineer, I was able to transfer to the Development Team. I really wasn’t happy as a Service Engineer any more. In total, I spent around 8 months as a developer before being fired. I would say that my time as Developer was relatively quiet. I delivered my work always on time and without complaints from the more senior developers, or from my manager.

The last task with which I was involved was the outlier, though. This was a very complicated task regarding disaster recovery for GitLab EE. It should have had more of the Senior Developers involved and the infrastructure team as well, given that they wanted to use this feature to make GitLab.com more reliable. They weren’t really involved. All the feedback I received from them was to dismiss my proposals or to say what wouldn’t work. I never heard constructive feedback or concrete guidance. In the end we spent more than 2 months without any work actually being done. And now it has been postponed even further with even more disagreement within the team.

The cherry on top of this disastrous situation was that throughout the entire process I only heard good things from my manager. In total I had 3 1-on-1's with him, and even though we discussed the situation and what was wrong multiple times, he never, for one moment, gave me the impression that my job could be in jeopardy. A few weeks later I was fired.

And to add insult to injury, my firing came 3 days before the third company summit, which was in Cancún, for which I had already bought a flight ticket for my wife, and made arrangements for my dog to stay at a doggie hotel. Everything was already paid for.

They could have fired me in person, but they didn’t have the decency to do so. They lacked the emotional maturity to do this, and the guts to look me in the eye and tell me exactly why they didn’t want me at the company anymore.

They also robbed me of the chance to personally say goodbye to the friends I had made there.

Oh, and by the way, the company size was now at over 150.

Why was I fired?

Your guess is as good as mine, but one of the reasons mentioned for my firing was that, again, I didn’t have the company’s best interests at heart. Sounds familiar?

In hindsight, it seems I was already out the door after my run-in with the CEO.

Reasons behind my decision

As you might see, I have somewhat personal reasons to not want to invest in GitLab, so take what I’m about to say with a grain of salt.

I love GitLab, the product. It is an amazing tool that really helps with your development process. I think it has an amazing future, specially because it is open source, so it is not tied to whatever happens to GitLab, the company. I am so thankful for that, because GitLab, the company, is not on a good path.

The culture

I mentioned this already, the culture of the company changed dramatically from what it was when I joined, to what it was when I left. When I first joined the company, it was alright, and even encouraged, to be open, direct, voice opinions, and have productive discussions.

You might think, though, isn’t GitLab supposed to be this champion of openness? That, my friend, is what they want you to think.

They portray this utopian image of an open company where your voice will be heard and you can have an impact. This isn’t actually true. All they want is another automaton that will follow their rules and never questions them.

Cartoon by Dave Coverly

This is why I feel that my opinions on the social media matter would not have had the same effect if they would have happened closer to when I joined, more specifically, before YC.

External factors

Whenever a company takes on VC investment, there are certain expectations attached to it. It depends a lot on which fund invests on the company, but more often than not, with this investment comes the expectation that you have to spend the money as quickly as possible in order to grow, and once you have spent it, you’ll have to ask for more money again so that you can keep on spending it, and so on and so forth. All this is necessary to create this illusion of value, importance, and relevance needed to maintain outrageous valuations.

“The Unicorn factory” — Taken from RECONSIDER, by DHH

Once you get that money, you ask yourself: What is the quickest way to spend it? You hire more people!

As mentioned before, GitLab went into this hiring spree, which was exacerbated after the A round of funding. They didn’t really take particular care of the people they hired, because of one thing VCs teach you: hire fast, fire faster. This led to people being hired without really fitting into the original culture of the company, or so I thought. Probably they fitted the new, VC friendly culture.

This exponential growth of employees had, as is to be expected, a significant impact on the culture of the company, a negative impact in my opinion. And a company with a bad culture is not a company in which you want to invest.

Also, if the former Chief Marketing Officer joins GitHub shortly after an abrupt departure, it speaks volumes.

The market

GitLab’s market share has been slowly increasing and it has good traction. But it is still nowhere near GitHub.

GitHub is probably one of the most widely-adopted developer tools in the world — serving as a go-to resource for not only managing code repositories, but also a vital part of the whole open source ecosystem. — TechCrunch

GitHub is the go-to place for developers to show off their coding skills. It’s not by chance that companies ask you for your GitHub profile when you apply for a job as a developer.

I mention this as base for my next point. Even though GitHub has been really successful, it is still far from an IPO. An IPO, or a liquidation event, are the only moments someone with stock options can actually benefit from their investment (I left out acquisitions on purpose because GitLab is not really suited for an acquisition, due to the remote-only work model).

The only other company that is the same market space and has already had and IPO is Atlassian. The big differentiator here is that they have a whole suite of widely used enterprise products to justify their valuation. Have you heard of JIRA? It doesn’t matter if you like it or not, it is everywhere. They now have a market cap of $6.35 billion, and it’s one of the few tech companies that has managed to steadily increase its stock value after its IPO.

BitBucket, Atlassian’s source code management platform and direct GitLab competitor, might still be lagging behind GitLab and GitHub in terms of features and design, but if a company has the resources to catch up and overtake them, it’s Atlassian.

GitHub has already been on the market for over 8 years, and has a valuation north of the $1.5 billion. That a company like this is still not considering an IPO says a lot about what the future can hold for GitLab. GitLab has barely been 3 years on the market, which means if the market stays like it is, it still has 5 more years to be in a similar position.

The thing is, the market will not stay like it is now. Word around the grapevine is that there is a bubble in Silicon Valley. Snap’s IPO is tanking. To be fair, Snap is not in the same business space, but the performance of its IPO will have an impact on how stock markets see tech IPOs from now on, hurting everyone that is on the VC bandwagon.

Conclusion

As most stock options grants do, my grant of 45,000 shares had a vesting period of 4 years with no cliff. This means that from the time I signed the grant to the moment I was fired only 15,000 of those were actually vested. This sucks! Let me elaborate on why it sucks.

YC recommends founders divide 10% equity between the first 10 employees. My 45,000 only represent 0.25%, as supposed to the 1% I should have gotten according to YC!

I only have 90 days to exercise my stock options, or I will lose them. (Since I was not an employee, but a contractor, I received NSOs and not ISOs)

The grant was given when I was already over a year into my tenure at GitLab, but this time was not taken into account for the vesting schedule. We did not get a cliff, but at least 25% of the grant should have been already vested from the get-go.

Since I’m not a US resident and I don’t have a US bank account, I would have to send the money via wire transfer, which has extra costs associated with it.

TAXES!! Even though the stock has no real world value, the government will tax you on the imaginary earnings you have made from the preferred stock price on which the grant is based, and the current valuation of the stock. So to exercise your options, you not only need the money to buy the options, you also need to have the money to pay taxes on money you haven’t even seen!

So right from the get-go, conditions are not great for me to do something with my stock options. Without even looking at the whole culture debacle, and market state, it makes little sense for me to exercise my options.

My grant allows me to buy the stock at $0.27 per share, which means that I need $4,050 to buy my 15,000 vested options. I really don’t know how much taxes I would have to pay, but regardless of how much it is, it just doesn’t make sense.

I would never invest in a company that:

It’s just starting to grow in its market

Treats its employees the way GitLab treated me

Has the culture that GitLab currently has

Tries to sell an image of openness to the world, when facts point to the contrary

Can be so disorganized on its development process

Hires and fires people with little regard for the consequences

Even if I only had to pay the $4,050 to buy the stock options, I would not do it. I would rather invest this money on myself, and my family. I would even prefer to buy Bitcoins for that amount, than to invest it in GitLab.

I think I’ll take my wife to Japan with the money, that sounds like a better investment.