← Back to selected work

Internal operations system

GitLab Access Automation

A validation and provisioning workflow that turns repository-access requests into an auditable, mostly automatic process.

Google Apps ScriptAPI integrationsProcess designAutomation

The system connects request intake with layered employee, project, identity, and repository checks before granting or escalating access. It includes scheduled processing, retry logic, audit trails, expiry handling, maintainer approval flows, and operational documentation.

RoleEnd-to-end system owner
ChecksHR, project assignment, identity, permissions
ImpactReduced normal eligible-request turnaround from up to 24 hours to a maximum 30-minute processing window

THE OPERATING FLOW

01Structured request intake
02Layered validation and 2FA check
03Provision, escalate, expire, and audit

CASE STUDY

The challenge

Repository-access requests depended on repeated manual checks across HR, project assignment, GitLab identity, 2FA status, repository scope, and requested role. Normal fulfilment could take up to 24 hours.

What I designed and built

  • Connected a structured request sheet to HR, project, GitLab, Asana, and Gmail validation workflows.
  • Used allowlists, namespace restrictions, idempotent fingerprints, locks, retries, circuit breakers, and a dead-letter path to make automatic processing safe.
  • Automatically granted only eligible time-bound roles; elevated access always entered an approval path and Owner/Admin was never auto-granted.

Outcome

  • Reduced normal eligible-request turnaround from up to 24 hours to a maximum 30-minute processing window.
  • Added expiration handling, requester notifications, an audit trail, and operational dashboard visibility.

This is a sanitized case study. Source code, internal URLs, production configuration, company namespaces, employee data, and credentials are intentionally not published.