Support Engineer Resources
A Day in the Life of a Support Engineer
As a Support Engineer at GitLab, the majority of your time will be focused on helping customers solve problems. This happens mostly through tickets, but can also happen through issues, screen sharing calls, and emergencies.
Getting Help
While working through various customer problems, you may need help. We have a wide and talented team that can help you at many levels:
- Managers: If your problem is related to process, or understanding direction, or cross-team collaboration, consider talking to your direct manager, or another manager whom may be working more directly on that problem. Managers in Support Engineering should be able to point you in the right direction and enable you to find the right help.
- Senior/Staff Support engineers: If your problem is debugging related, consider reaching out to a Senior+ Engineer. At the Senior+ level, engineers are expected to be acting as mentors, and technical experts. See our Mentoring page for more information about how Senior+ Engineers are expected to help
Zendesk Instances
At GitLab, the Support Team currently manages 2 different Zendesk Instances:
- GitLab Support Instance: gitlab.zendesk.com
- GitLab US Federal Support Instance: gitlab-federal-support.zendesk.com
- Customer URL: federal-support.gitlab.com, CNAME for full link (above).
- Only Support Engineers who are US Citizens inside of the US have access.
Ticketing Style Guide
We recommend reviewing the best practices and suggestions for styling and responding to Zendesk tickets.
What if I feel that a customer is not following our Code of Conduct?
Just as Support team members are expected to adhere to GitLab’s Code of Conduct, we also expect customers to treat the Support Team with the same level of respect. The GitLab Community Code of Conduct outlines the standards to which we hold the wider GitLab Community.
If you notice a ticket where you believe the customer to be violating the Code of Conduct, please tag the Manager On-Call to respond with the following guidelines in our Statement of Support.
Support Team Contributions
We encourage all engineers to contribute to the product to help improve the customer experience directly.
When you are creating merge requests (in the gitlab-org group) for code or for documentation, the
Support Team Contributions
label is applied automatically so that we can track product contributions by support team
members.
Additionally, if the code change is specifically to improve the team’s efficiency
(such as changes to admin for faster support), then add the ~"Support Efficiency"
label.
We also recommend using weight labels (frontend, backend, docs) to track the effort required for MRs. While you can look at how others have labeled their MRs, the most important thing is that you are consistent in applying the labels to your own MRs so that you can see which MRs required the most effort and your overall progress. The number of MRs and their total weight are included in the 1:1 generator reports.
An issue is created in the support-team-meta
issue tracker at the
end of each week with a list of support team contributions merged in the past week. View the
list of summary issues here.
Internal tools
- Support Toolbox - Includes tools such as
json_stats
(analyze JSON logs),strace_parser
(analyzestrace
output),gitlabsos
(get all logs and other data from customers), etc. - Support Resources - Create test instances
- GitLab Development Kit
- CustomersDot admin - Where to manage Self-Managed licenses and where customers manage their subscriptions.
- GitLab Regressions
External tools
- ExplainShell - Break down a terminal command
- Espanso - Versatile text expander (a.k.a. text replacer or canned response tool)
- Be sure to check out the GitLab Support Espanso package for a bunch of ready-to-use expansions!
- Insomnia - Build, debug, and test API queries, and generate the code for them
- iTerm2 (macOS) - Terminal emulator with robust theming and customization options
- Itsycal (macOS) - Menu bar calendar with more flexibility than the system widget
- LanguageTool - Free, offline grammar, spelling, and style checker
- Obsidian - Super customizable markdown notetaking app with tons of themes and addons
- Raycast (macOS) - Omnibox helper with tons of plugins for emoji, clipboard history, unit conversions, calculations, search, a confetti effect, and more
- Zed - Lightweight but powerful IDE
- Menu bar clocks (macOS)
- iStat Menus - Robust system monitor for the toolbar, including highly customizable clock options
- UTC Time - Simple app for displaying UTC time, with options to copy various date formats
Useful Browser Extensions
- Copy As Markdown - Used to copy the element in current page as markdown format (Chrome/Firefox)
- Zendesk Download Router - Automatically routes Zendesk downloads into separate folders by ticket number (Chrome/Firefox/Opera)
- GitLab Web Debugger - Aides in identifying the root cause of page load errors on GitLab.com and internal GitLab instances (Chrome)
- Zendesk Quicktab - Opens Zendesk tickets in a single browser tab (Chrome)
- Calendly Meeting Scheduling Software - ad-hoc meetings, one-click booking (Chrome)
- GitLab Screen share mode - allows to hide confidential information on your GitLab screen ([Chrome](https://gitlab.com/leipert-projects/gitlab-screen share-mode#chrome)/[Firefox](https://gitlab.com/leipert-projects/gitlab-screen share-mode#firefox))
Support Engineering Mentorship
fc0f5a61
)