← Back

At GitLab, I supported GitLab.com and self-managed installations, contributed product fixes, and built tools for our support team. An investigation could lead into the code or turn up something we needed to document for future cases.

Tools for support operations

As the team moved toward a blended support model, engineers needed to handle GitLab.com requests without individual admin accounts. I extended Ruby ChatOps with namespace lookups and CI-minute quota operations, including API integration, argument handling, help output, and tests.

I wrote the accompanying support guide, which explains that the minutes command replaces the total extra quota; it doesn’t add to it. The changes and guide merged in April 2020.

I also added a Slack-bot command to summarize GitLab.com ticket queues, with tests and help output, and access-level reporting in terminal, JSON, and CSV output for a Go support tool.

Customer feedback and recurring requests

To help the team follow up on customer feedback, I built a Zendesk-to-GitLab workflow that turned positive and negative satisfaction comments into issues. It used an HTTP target, triggers, and Liquid formatting, with customer information sent to a private destination through a bot with Reporter permissions. Negative comments mentioned managers.

My implementation notes cover sandbox setup and testing; a colleague confirmed it was live on May 23, 2019.

I also implemented a custom Zendesk app for recurring email-suppression requests, documented in the issue discussion and my completion update.

Product fixes and reusable knowledge

My contribution to personal-access-token activity tracking lets users see when a token was last used. It includes a database migration, Ruby service, authentication integration, and user-facing table, with documentation and tests. I accounted for read-only instances and OAuth tokens and avoided redundant timestamp writes.

I fixed a repository-settings page failure caused by a missing mirror-execution timestamp and added a regression test.

Alongside those changes, I contributed guidance on TLS and webhook troubleshooting, SAML and SCIM, and recognizing and escalating incidents.

Support Engineer
2018–2020
  • Investigated and resolved customer issues across GitLab.com and self-managed installations.
  • Automated support workflows using APIs, CI pipelines, JavaScript, and scripts.
  • Worked on emergency support and on-call processes, including guidance for recognizing and escalating incidents.
  • Contributed product changes across the database, backend, and UI, including token-activity tracking and a fix for a repository-settings page failure.
  • Extended Ruby ChatOps, added a Slack-bot command with tests, and contributed access-level reporting to a Go support tool.
  • Built a Zendesk-to-GitLab workflow for following up on customer feedback and a custom Zendesk app for recurring email-suppression requests.