"Strategy is a commodity, execution is an art." — Peter Drucker
GitLab was created because Dmitriy needed an affordable tool to collaborate with his team. He wanted something efficient and enjoyable so he could focus on his work, not the tools. He worked on it from home, a house in Ukraine without running water.
We think that it is logical that our collaboration tools are a collaborative work themselves. More than 1000 people have contributed to GitLab to make that a reality. We believe in a world where everyone can contribute. Allowing everyone to make a proposal is the core of what a DVCS (Distributed Version Control System) such as Git enables. No invite needed: if you can see it, you can contribute.
In summary, our vision is as follows:
We believe that all digital products should be open to contributions, from legal documents to movie scripts and from websites to chip designs. GitLab Inc. develops great open source software to enable people to collaborate in this way. GitLab is integrated and opinionated collaboration software that everyone should be able to afford and adapt. With GitLab, everyone can contribute.
Change all creative work from read-only to read-write so that everyone can contribute.
Everyone can contribute to digital products with GitLab, to GitLab itself, and to our organization.
To ensure that everyone can contribute to digital products we make GitLab joyful to use. It is integrated and opinionated collaboration software. Because there is no need to string together multiple tools you spend less time, have less frustration, there is less bikeshedding, and you get more results.
To ensure that everyone can contribute with GitLab every person in the world should be able to afford it and adapt it. GitLab CE and GitLab.com are both free as in beer so everyone can afford it. GitLab.com comes with free private repos and CI runners, so you don't even have to host it yourself. People should be able to adapt GitLab to fit their needs. That is why GitLab CE is also free as in speech; we distribute the source and use MIT Expat license. But open source is more than a license, that is why we actively help our competitor Perforce to ship GitLab as part of Perforce Helix, and are a good steward of GitLab CE. And we keep all our software open to inspection, modifications, enhancements, and suggestions.
To ensure that everyone can contribute to GitLab itself we actively welcome contributors. We do this by having quality code, tests, documentation, using popular frameworks, offering a comprehensive GitLab Development Kit, and a dedicated GitLab Design Kit. We use GitLab at GitLab Inc., to drink our own wine and make it a tool we continue to love. We celebrate contributions by recognizing a Most Valuable Person (MVP) every month. We allow everyone to anticipate, propose, discuss, and contribute features by having everything on a public issue tracker. We ship a new version every month so contributions and feedback are visible fast. To contribute to open source software people must be empowered to learn programming. That is why we sponsor initiatives such as Rails Girls and Lean Poker.
To ensure that everyone can contribute to our organization we have open business processes that allow all team members to suggest improvements to our handbook. We hire remotely so everyone with an internet connection can come work for us and be judged on results, not presence in the office. We offer equal opportunity for every nationality. We are agnostic to location and create more equality of opportunity in the world. We engage on Hacker News, Twitter, and our blog post comments. And we strive to take decisions guided by our values.
Ensure that everyone can contribute in the 4 ways outlined above.
Become most used software for the software development lifecycle and collaboration on all digital content by following the sequence below.
Complete our product vision of an opinionated and integrated set of tools based on convention over configuration that offers superior user experience.
Offer a sense of progress in a supportive environment with smart colleagues.
Stay independent so we can preserve our values. Since we took external investment we need a liquidity event. To stay independent we want that to be an IPO instead of being aquired. We want to triple ARR (Annual Recurring Revenue) in 2016&17, and double it in 2018&19&20 (T2D3), in order to IPO in 2020.
We want to achieve our goals in the following order:
In 2015 we became the most popular on-premises software development lifecycle solution and we want to continue that.
We want to become the most revenue generating on-premises software development lifecycle solution
After on-premises we want to become the most popular SaaS solution for private repositories (a complete product that is free forever is competitive since network effects are smaller for private repositories than for public ones)
After private repositories we want to become the most popular SaaS solution for public repositories. This market has a strong network effect since more people will participate if you host your public project on a site with more people. It is easier to overcome this network effect if many people already use GitLab.com for hosting private repositories.
Our BHAG is to become the most popular collaboration tool for knowledge workers in any industry. For this we need to make the git workflow much more user friendly. The great thing is that sites like Penflip are already building on GitLab to make it
While we achieve our goals one by one this doesn't mean we will focus on only one goal at the time. Simultaneously we'll grow our userbase, get more subscribers for EE, grow GitLab.com, develop options, realize our scope, and make version control usable for more types of work.
Founder control: vote & board majority so we can keep making long term decisions.
Independence: since we took financing we need to have a liquidity event; to maintain independence this needs to be an IPO rather than an acquisition.
Low burn: spend seed money like it is the last we’ll raise, maintain 2 years of runway.
First time right: last to market so we get it right the first time, a fast follower with taste.
Values: make decisions based on our values, even if it is inconvenient.
Free SaaS: to make GitLab.com the most popular SaaS in 2020 it should be largely free.
Reach: go for a broad reach, no focus on business verticals or certain programming languages.
Speed: ship every change in the next release to maximize responsiveness and learning.
Life balance: we want people to stay with us for a long time, so it is important to take time off, work on life balance, and being remote-only is a large part of the solution.
Open source user benefits: significant advantages over proprietary software because of its faster innovation, higher quality, freedom from vendor lock-in, greater security, and lower total cost of ownership.
Open Source stewardship: community comes first, and share the pie with competitors.
Innersourcing is needed and will force companies to choose one solution top-down.
Git will dominate the version control market in 2020.
An integrated tool is superior to a collection of tools or a network of tools. Even so, good integrations are important for network effects and making it possible to integrate GitLab into an organization.
To be sustainable we need an open core model that includes a proprietary GitLab EE.
EE needs a low base price that is publicly available to compete for reach with CE, established competitors, and new entrants to the market.
The low base price for EE is supplemented by a large set of options aimed at larger organizations that get a lot of value from GitLab.
Work with our strategic alliances to increase awareness and sales.
Publish our processes and plans in the handbook or link from there.
Keep hiring self-directed people that experience the freedom to suggest changes.
To preserve culture we should over communicate and regularly discuss our values.
Drop minimum basic subscription user count to 1 user. DONE
Foster leadership that stresses radiating knowledge in code, documentation, and blog articles. Work on leadership development to promote from within where possible.
Spread monthly version cadence to operations and maybe marketing by setting monthly goals within these teams.
Make something people want: merging community contributions is the priority and at least one person will work on that fulltime.
Ship the features in our direction https://about.gitlab.com/direction/
Ship with the full scope before the year ends.
Improve code quality, look and feel, usability, and performance.
Implement effective development processes and leadership.
Enable sales to provide more effective product demonstrations, share use case stories and create custom solutions and proposals.
Increase revenue globally, with a focus on APAC, by developing channel sales program (value-added reseller and OEM).
Increase our average deal size through upsell to higher plans, selling multi-year deals and increasing seats sold.
Increase adoption and revenue within accounts through the creation of a Customer Success organization
Increase salesperson capacity and productivity by creating specialized roles, in sales we'll have account executives, senior accounts executives, and regional sales directors. In Customer Success we'll have account managers (on quota and work with named accounts) and success engineers (not on quota, work with named accounts, will not do product support, work primarily via email/web-conferencing, provide pre-sales support, guide their accounts through our features, installation, implementation, integrations, roadmap, and best practices).
Account Executives specialize in upsell EE from CE, competitive sell against GitHub or Atlassian and educational sell from SVN/Clearcase or top-down sell to CTO.
Intense one month onboarding program (GLU, GitLab, Udacity, TrainTool) to prepare new salespeople to add value faster to the buying process.
Automation: automation will bring predictable, growing, and well-prioritized leads.
Needs to win hearts and minds with excellent developer advocacy.
Show that we can test big projects (Rails, etc.) faster than Travis CI.
Announce we'll sponsor every diversity in tech event with at least $500. DONE
Introduce 'everyone can contribute' as our why and tagline. DONE
Hire partner marketing and product marketing people (release posts, website, and sales enablement).
Globally integrated finance with NetSuite.
A great subscription system that is loved by sales.
Need enough cash, raise if terms are great.
Efficient finance that enables team, sales, etc.
Efficient legal counsel with expert people and short cycles.
Within 2016 we'll switch from TCV to ARR as the metric for bonuses.
Monthly incentive for the whole company ($100 dinner) if we make our sales goal. DONE
Maintain company in compliance and adopt / adapt policies as the company scales with a globally distributed team.
To support our great culture, institutionalize feedback as being near-continuous and mostly informal.
Adopt a coherent approach to OKR's, performance management, and compensation management.
Develop job levels with promotion criteria, including criteria on team and company collaboration.
Sponsor initiatives and hire in countries that have low opportunity.
Provide a great support experience with reliable and fast response times for customers.
Respond to all community communication and recognize community members who provide a lot of support to others in the community.
Make service engineering onboarding and training a mostly self-guided experience that scales.
Empower users through improved documentation, training, tutorials, and community engagement.
A highly available GitLab.com that feels fast and has little downtime.
Free CI runners for everyone for at least as long as our credits last. DONE
Solutions for performance measurement, logs, including tools for alerting when something goes wrong, that ship with EE.
Most partnerships are not public but people working at GitLab Inc. can find them in the 'Partnerships' Google Doc.
We'll hire a Director of Strategic Partnerships. DONE
The reseller partnerships are especially important here.
We also want to get shipped as official Debian package. DONE