The Incubation Engineering Department within the Engineering Division focuses on projects that are pre-Product/Market fit. The projects they work on align with the term "new markets" from one of our product investment types. They are ideas that may contribute to our revenue in 3-5 years time. Their focus should be to move fast, ship, get feedback, and iterate. But first they've got to get from 0 to 1 and get something shipped.
We utilize Single-engineer Groups to draw benefits, but not distractions, from within the larger company and GitLab project to maintain that focus. The Single-engineer group encompasses all of product development (product management, engineering, design, and quality) at the smallest scale. They are free to learn from, and collaborate with, those larger departments at GitLab but not at the expense of slowing down unnecessarily.
The Department Head is the VP of Incubation Engineering.
Our focus for FY23 in the Incubation Engineering Department is to contine to grow the department and ensure that we have a level of organisational maturity that allows us to repeatedly assess, validate, and deliver on ideas.
We should be able to demonstrate whether the ideas that we have been working on have met product/market fit in FY23 and look to graduate or reassign these groups. Our success is tied to the community of developers and users that can benefit from our features, and strong collaboration and engagement with those groups is a key focus for this year.
As our team grows and matures, we need to be mindful of setting a culture of innovation and results. We do this through encouraging experimentation and autonomy, whilst being collaborative and transparent to internal teams and external stakeholders. The Incubation Engineering team is unique within GitLab in that the team members are not working on shared problems, but have the same challenges and shared experiences. We should ensure that successes and failures are documented and shared amongst team members to help each other grow and to minimise the inherent isolation and stress that can be part of this role.
In addition to the quarterly OKR's, our goals for the year are to:
The aim of the SEG's in the Incubation Engineering Department is to get ideas for new markets into the Viable category from our maturity framework. Ideas that we successfully incubate will become a stage or feature within the relevant areas of our product, with full Product, Engineering, UX and Infrastructure support for future development.
In some cases we may invest in an SEG and then decide to acquire an existing product or team in the same area. These situations are disruptive, but unavoidable, and we will work closely with the affected SEG to adapt.
In order to determine our investment into an SEG, we use the following assumptions:
Reference:
A new market in our product roadmap is a long-term bet to help us expand our Serviceable Addressable Market (SAM) over a 3-5 year time horizon.
We look at areas that fit within our company mission that we currently do not service and have one or more competitors that have validated the customer need. Our criteria for entering these markets is that there is at least one competitor that is attaining over $100M annual recurring revenue, or at least 3 venture capital funded startups that have taken over $5M in funding. We track our understanding of these markets via this internal document.
We also manage projects that may not fit the above definition, but are well suited to the SEG model that we use as they require a degree of experimentation with significant risk of failure. These are significant defensive roadmap items that are important to work on to maintain our market share and competitive advantage in an area, but we cannot yet justify funding a larger R&D effort.
The Incubation Engineering Department is not suited to deliver regular roadmap items as they are typically smaller in effort, have less risk of failure, and have less scope for experimentation to determine product/user fit.
Our key focus is to ship software, we do this Iteratively and Transparently in an Agile way, concentrating on having something that works as soon as possible that we can build upon.
For each of our Investment areas, we aim to showcase our progress on a weekly basis using the Engineering Demo Process. On the tracking issue for each area, each SEG should provide a status update and a link to a video of the current functionality by the end of each week. We should aim to develop a scorecard to help grade our progress against each of the key features we are trying to develop, and include this in our weekly update.
We do this in order to ensure alignment with impacted teams at GitLab, to provide opportunties for Collaboration from interested GitLab team members, community members, and users, and finally to demonstrate Results.
The key points to cover in each of our weekly updates are:
When uploading a video to our YouTube channel, we should:
YouTube Playlists
AI Assist
Cloud Seed
DevOps for Mobile
Jamstack
MLOps
The Incubation Engineering department commits to and tracks quarterly Objectives and Key Results (OKRs).
We use the RICE Framework for prioritization of ideas.
Reach |
Impact |
Confidence |
---|---|---|
How many of our users, prospects, or customers will benefit from this feature. | Revenue, risk, or cost benefits to GitLab and our customers. | How well we understand the customer problem and our proposed solution. |
|
|
|
Effort |
||
How many months before we can launch an MVP to gather feedback (1 - 3). |
The total score is calculated by (Reach x Impact x Confidence) / Effort
The following table is driven by the relevant RICE labels on the issues themselves.
If you would like to propose a Single Engineer Group please reach to our VP of Incubation Engineering.
Incubation Engineering Key Performance Indicators
You can also reach us on Slack at #incubation-eng
in Slack (GitLab internal)
incubation
or experimental
feature without distracting / taking away from the GitLab user experience?incubation
feature.In order to maintain consistency, the process below should be followed when starting a new SEG from an incubation backlog project:
meta
project within that new group. For example: mlops/metameta
project. This issue will replace the existing backlog project issue and be used to post weekly demo recordings from the new SEG. For example: jamstackAdd all labels from the original backlog issue to the issue you just created. For example: original issue | new issue |
seg_issues_list
in the handbook direction generator module in the handbook. See this MR for an example.An internal discussion in the Incubation Engineering team revealed that team members would benefit from shadowing customer / prospect events. This is aligned with the FY22-Q4 Engineering OKR "Increase focus on customer results..".
Field marketing has welcomed all Incubation Engineering team members to shadow upcoming field marketing events. These events are conducted with new prospects, existing customers and individual GitLab / DevOps enthusiasts.
Incubation Engineering team members may discover issues for upcoming events, and may request an invitation by commenting in the event's issue.
The following issue boards are to be used to discover upcoming events:
Highlighting EMEA because majority of Incubation Engineers reside here. Other regions can be discovered in the Boards dropdown by searching for "Field & Corporate {region_name}".
Additionally, Field Marketing has active Slack channels where events are planned and prepped for. If useful, please consider joining:
β¦on Slack. Other relevant channels may be discovered via Slack search.
If the Incubation Engineering team member is not familiar with external conversations, the golden princple to remember is that the only thing that is expected from us is to shadow the call. It is perfectly okay to say nothing and stay muted throughout the call. Introduce yourself if invited to. And help GitLab team members by keeping notes.
For those comfortable with external interactions, they may offer their services to the Field Marketing event lead by means of answering questions and interacting with the participants when the GitLab speaker requests support.