Engineering Roles
Cloud Native Engineer
Cloud Native Engineers at GitLab work with our Distribution team to create and maintain a Cloud Native GitLab deployment, along with all associated upgrade and release management methods.
Requirements
- Experience with Docker and Kubernetes in production use cases
- Chef experience (writing complex cookbooks from scratch, custom providers, custom resources, etc.)
- Extensive Linux experience, comfortable between Debian and RHEL based systems
- Running applications at scale in Kubernetes
- Transforming existing applications to cloud native oriented applications
- Designing, building and packaging cloud native applications
- Positive and solution-oriented mindset
- English written and verbal communication skills
- Effective communication skills: Regularly achieve consensus with peers, and clear status updates
- An inclination towards communication, inclusion, and visibility
- Experience owning a project from concept to production, including proposal, discussion, and execution.
- Demonstrated ability to work closely with other parts of the organization
- Share our values, and work in accordance with those values
- Ability to thrive in a fully remote organization
- Self-motivated and self-managing, with strong organizational skills.
- Ability to use GitLab
Responsibilities
- Deploying, building, and configuring deployment methods of GitLab for Kubernetes
- Promoting best practices for development and deployment in a Cloud Native environment
- Keep current with new technologies and developments in the Cloud Native space
- Constantly improve product quality, security, and performance
- Write good code
- Catch bugs and style issues in code reviews
- Ship small features independently
Levels
Level progression for Cloud Native Engineers follows the pattern described for our Developer roles.
Database Engineer Roles
Distinguished Engineer - Secure
Responsibilities
- Provide technical direction for the team by being an expert in the security product space.
- Engage with the Secure team PM regularly to collaborate on vision items as well as provide technical details around our competitive landscape.
- Collaborates with the Secure team Engineering Manager to improve process and simplify implementation.
- Collaborates with our PMM team to help properly position and advance our product in the market.
- Meet with customers and prospects to discuss our Security Products and provide technical support to our customer facing teams.
- Present and attend conferences to evangelize and represent the Secure team.
- Benchmark new security tools for integration with our Security Products.
- Collaborate with our internal Security team on technical initiatives.
- Work with our internal security researchers to define their deliverables and set expectation.
- Participate in technical interviews for the Secure team.
- Assist the Secure team engineers with feature development and technical debt issues.
- Mentors individuals on the team
- Cultivate patnerships and alliances with other businesses
- In depth knowledge of SAST, DAST, Dependency Scanning, Container Scanning
- Expertise in Kubernetes and Openshift
- Proficient in Golang, SQL and shell scripting
- Ability to use GitLab
Engineering Fellow
The Engineering Fellow role is the individual contributor equivalent to a VP of Engineering.
Job Grade
The Engineering Fellow is a grade 12.
Responsibilities
- Help create the sense of psychological safety.
- Solve technical problems of the highest scope and complexity for the entire organization.
- Drive innovation across Engineering with a willingness to experiment and to boldly confront problems of immense complexity and scope.
- Advocate for improvements to product quality, security, and performance that impact all of Engineering at GitLab.
- Exert significant influence over GitLab’s long-term goals and execution.
- Ensure that our standards for style, maintainability, and best practices are suitable for the unique problems of scale and diversity of use represented by the GitLab product.
- Drive significant improvements for GitLab’s use, ease of development, and technical efficiency through effective collaboration and prolific technical contributions.
- Represent GitLab and its values in public communication in all aspects of our software development lifecycle and public relations. Interact with customers and other external stakeholders as a consultant and spokesperson for critical projects and aspects of our technical architecture.
- Provide mentorship for engineers, with a particular focus on Staff+ engineers, to help them grow in their responsibilities.
- Share expertise across the entire organization.
- Ship extremely high-impact features and improvements with minimal guidance and support from other members of the organization.
- Own the Architecture Evolution Workflow, including the Blueprint Review meeting.
- Manage the Engineering Fellow Shadow Program.
- Help Engineering avoid the architecture “ivory tower”.
Specializations
Infrastructure
- Drive the technical strategy for GitLab.com Infrastructure.
- Heavily influence product technical strategy with a focus on Infrastructure requirements.
- Make skill-gap recommendations for future hiring in Infrastructure and other departments.
- Author technical vision artifacts with >1 year time horizon.
- Assist teams throughout Engineering to interpret this vision into actionable backlogs.
Hiring Process
Candidates for this position can expect the hiring process to follow the order below. Please keep in mind that candidates can be declined from the position at any stage of the process. To learn more about someone who may be conducting the interview, find their job title on our team page.
Engineering Leadership - Roles & Responsibilities
The Engineering Leadership becomes a cross-discipline management. A Senior Engineering Manager manages Engineering Managers with fullstack teams (frontend, backend, and fullstack engineers), and/or Engineering Individual Contributors (frontend, backend, and fullstack engineers)
Levels
Senior Manager, Engineering
- The Senior Manager, Engineering role extends the Engineering Manager role.
- The Senior Manager, Engineering reports to the Director, Engineering.
Senior Manager, Engineering Job Grade
The Senior Manager, Engineering is a grade 9.
Senior Manager, Engineering Responsibilities
- Manage up to six engineering teams
- Conduct managerial interviews for candidates, and train engineering managers to do said interviews
- Generate and implement process improvements, especially cross-team processes
- Hold regular 1:1s with team managers and skip-level 1:1s with all members of their team
- Management mentorship
Senior Manager, Engineering Requirements
- Professional experience as an engineer in at least one primary language or framework of the organization, or a closely related language or framework.
- Ability to discuss architectural concepts and systems design, and to broker technical decisions at a high-level between individual contributors.
- Experience across the devops lifecycle, with deep understanding of at least one area.
- Exposure to automation through CI/CD pipelines.
- An understanding of multiple delivery and distribution strategies, including an ability to maintain velocity within GitLab’s dual cadence of continuous deployment and a monthly release cycle.
- Understanding of a variety of security principles and best practices including the ability to ensure a secure development process.
- Understands how to maintain and enforce Quality Assurance through testing frameworks and code review standards.
- Ability to communicate technical concepts to non-technical stakeholders.
- Past experience (3 to 5 years) as an engineering manager.
- Proven track record of execution that demonstrates an understanding of the software development lifecycle.
- Ability to understand, communicate and improve the quality of multiple teams
- Demonstrate longevity at, at least, one recent job
- Ability to be successful managing at a remote-only company
- Humble, servant leader
- Ability to use GitLab
Senior Manager, Engineering Nice-to-have Requirements
- Be a user of GitLab, or familiar with our company
- Prior Developer Platform or Tool industry experience
- Prior product company experience
- Prior high-growth startup experience
- Experience working on systems at massive (i.e. consumer) scale
- Deep open source experience
- Experience working with global teams
- We value diversity, inclusion and belonging in leadership
- Be inquisitive: Ask great questions
Principal Engineer
- The Principal Engineer reports to the Senior Manager, Engineering.
Principal Engineer Job Grade
The Principal Engineer is a grade 9.
Engineering Management - Quality
Engineering Manager, Monitoring
Responsibilities
- Hire a world class team of engineers to work on their team
- Help engineers grow their skills and experience
- Create a sense of psychological safety on your team
- Recommend monitoring technical and process improvements
- Draft quarterly OKRs
- Prioritizes and guides the effort to scope GitLab’s Prometheus monitoring and alerting infrastructure
- Manage the bundling of Prometheus as an out-of-the-box monitoring solution for GitLab CE/EE packages
- Improve coverage of GitLab performance monitoring
- Prioritize features that enable measurement of applications deployed with GitLab
- Create automated alerts to notify team members of regressions
- Ensures that there is a written onboarding and process that is effective and followed
- Performs 1:1’s with all reports every 2-5 weeks (depending on the experience of the report)
- Is available for 1:1’s on demand of the report
- Uses the contributor analytics to ensure that anyone who is stuck is helped
- Reviews and manages a significant amount of the merge requests made by developers
- Document answers and improve existing documentation
- Write blog posts relevant to the community
Requirements
- Experience managing a team of developers
- Experience writing and reviewing code for production-level applications in Go and/or Ruby on Rails
- Excellent written and verbal communication skills
- Experience with managing large amounts of product analytics
- Experience working with time-series databases
- Leadership at GitLab
- Ability to use GitLab
Engineering Technical Program Management Leadership
Manager, Vulnerability Research Engineering
Vulnerability Research Management Roles at GitLab
GitLab is building a research team that will focus on improving GitLab’s security detection capabilities, including SAST/DAST and future products. For more information about our security products, please review: https://about.gitlab.com/direction/secure/ and https://about.gitlab.com/direction/govern/
This team will work directly with the GitLab Security, Development, and Product teams to build, tune and improve the efficacy of GitLab’s stand-alone detection products.
Managers in the Security Department at GitLab see the team as their product. While they are technically credible and know the details of what vulnerability research engineers work on, their time is spent hiring a world-class team and putting them in the best position to succeed. They own the delivery of security commitments and are always looking to improve productivity. They must also coordinate across departments to accomplish collaborative goals.
Monitoring Engineer
Responsibilities
- Manage day-to-day maintenance and evolution of GitLab’s Prometheus monitoring and alerting infrastructure
- Bundle Prometheus as an out-of-the-box monitoring solution for GitLab CE/EE packages
- Contribute to the Prometheus open source project
- Build and maintain a GitLab.com public monitoring gateway
- Help migrate our current performance monitoring solution to Prometheus
- Improve coverage of GitLab performance monitoring
- Measure applications deployed with GitLab (e.g. Mattermost)
- Create automated alerts to notify team members of regressions
- Document answers and improve existing documentation
- Write blog posts relevant to the community
Requirements
- Experience writing production-level applications in Go
- Experience with managing large amounts of product analytics
- Experience developing time-series databases
- You have contributions in the Prometheus open source project
- Ability to use GitLab
Hiring Process
Candidates for this position can expect the hiring process to follow the order below. Please keep in mind that candidates can be declined from the position at any stage of the process. To learn more about someone who may be conducting the interview, find their job title on our team page.
Software Engineer in Test Job Family
Software Engineering Intern
Software Engineering Interns will work on the GitLab Product, like all engineers who work on the product. This may include both the open source version of GitLab, the enterprise editions, and the GitLab.com service. You will work in either a Frontend or Backend team on a mature stage product at GitLab.
Requirements
- Experience coding with Ruby on Rails or JavaScript framework (ideally Vue.js or other JS frameworks) either through university, personal projects or previous work experience.
- Proficiency in the English language, both written and verbal, sufficient for success in a remote and largely asynchronous work environment
- The ability to understand complex technical, architectural, and/or organizational problems
- Comfort working in a highly agile, intensely iterative software development process
- Positive and solution-oriented mindset
- Effective communication skills: Regularly achieve consensus with peers, and clear status updates
- An inclination towards communication, inclusion, and visibility
- Self-motivated and self-managing, with strong organizational skills, but with plenty of support from mentors, managers and internship managers throughout the programme
- Share our values, and work in accordance with those values
- Ability to thrive in a fully remote organization
- Computer Science Education or equivalent courses
- Contributor to open source projects
- Ability to use GitLab
Nice-to-haves
- Experience with the GitLab product as a user or contributor
- Completed foundation studies (1st year of college/university) in Computer Science or equivalent courses
Responsibilities
- Develop features and improvements to the GitLab product in a secure, well-tested, and performant way
- Collaborate with Mentors and your Manager to maintain a high bar for quality in a fast-paced, iterative environment
- Advocate for improvements to product quality, security, and performance
- Solve technical problems of varying level of complexity
- Craft code that meets our internal standards for style, maintainability, and best practices for a high-scale web environment.
- Confidently ship small features and improvements with guidance and support from mentors and managers.
Hiring Process
Due to the high volume of applications, the bar is set very high and applications will be looked at extensively when making a decision to move a candidate forward.
Support Engineer
Support Management
Support Operations Management
Support Readiness Specialist
Technical Program Management Individual Contributors
Vulnerability Research Engineer
About GitLab
GitLab Inc. is a company based on the GitLab open-source project. GitLab is a community project to which over 2,200 people worldwide have contributed. We are an active participant in this community, trying to serve its needs and lead by example. We have one vision: everyone can contribute to all digital content, and our mission is to change all creative work from read-only to read-write so that everyone can contribute.
We value results, transparency, sharing, freedom, efficiency, self-learning, frugality, collaboration, directness, kindness, diversity, inclusion and belonging, boring solutions, and quirkiness. If these values match your personality, work ethic, and personal goals, we encourage you to visit our primer to learn more. Open source is our culture, our way of life, our story, and what makes us truly unique.
Top 10 Reasons to Work for GitLab:
- Mission: Everyone can contribute
- Results: Fast growth, ambitious vision
- Flexible Work Hours: Plan your day so you are there for other people & have time for personal interests
- Transparency: Over 2,000 webpages in GitLab handbook, GitLab Unfiltered YouTube channel
- Iteration: Empower people to be effective & have an impact, Merge Request rate, We dogfood our own product, Directly responsible individuals
- Diversity, Inclusion & Belonging: A focus on gender parity, Team Member Resource Groups, other initiatives
- Collaboration: Kindness, saying thanks, intentionally organize informal communication, no ego
- Total Rewards: Competitive market rates for compensation, Equity compensation, global benefits (inclusive of office equipment)
- Work/Life Harmony: Flexible workday, Family and Friends days
- Remote Done Right: One of the world's largest all-remote companies, prolific inventor of remote best practices
See our culture page for more!
Work remotely from anywhere in the world. Curious to see what that looks like? Check out our remote manifesto and guides.
ff42e4f1
)