It’s an exciting time to join our team. We're the world’s largest all-remote company, and we've been intentionally building our culture this way from the start. With more than 1,200 team members in 65+ countries, GitLab is a place where you can contribute from almost anywhere. We are an ambitious, productive team that embraces a set of shared values in everything we do.
As a Senior Backend Engineer in our Product Intelligence group, you'll play a key role in implementing analytics and data collection tools within the GitLab product in a privacy-focused manner. Our group focuses on providing GitLab's team with data-driven product insights to build a better GitLab. Insights generated from Product Intelligence enables us to identify the best places to invest people and resources, what product categories to mature faster, where our user experience can be improved, and how product changes impact the business. Our group works across many core components that are used by the rest of the GitLab team. This means you can expect broad exposure to the whole GitLab product.
Some of the things we have recently been working on include implementing Snowplow Analytics, building our in-house data aggregation tool called Usage Ping, transforming data using dbt, storing data in our Snowflake data warehouse, and analyzing data using Periscope / Sisense.
The culture here at GitLab is something we’re incredibly proud of. Some of the benefits you’ll be entitled to vary by the region or country you’re in. However, all GitLab team members are fully remote and receive a "no ask, must tell" paid-time-off policy, where we don’t count the number of days you take off annually -- instead, we focus on your results. You can work the hours you choose, enabled by our asynchronous approach to communication. You can also expect stock options and a competitive salary. Our compensation calculator will be shared with selected candidates before any interview.
Diversity, Inclusion, and Belonging (DIB) are fundamental to the success of GitLab. We want to infuse DIB in every way possible and in all that we do. We strive to create a transparent environment where all team members around the world feel that their voices are heard and welcomed. We also aim to be a place where people can show up as their full selves each day and contribute their best. With more than 100,000 organizations using GitLab, our goal is to have a team that is representative of our users.
- Develop features and improvements to the GitLab product in a secure, well-tested, and performant way
- Analyze and interpret highly complex data to arrive at actionable recommendations
- Collaborate with Product Management and other stakeholders within Engineering (e.g. UX) 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 moderate scope and complexity.
- Craft code that meets our internal standards for style, maintainability, and best practices for a high-scale web environment. Maintain and advocate for these standards through code review.
- Represent GitLab and its values in public communication around specific projects and community contributions.
- Confidently ship small features and improvements with minimal guidance and support from other team members. Collaborate with the team on larger projects.
- Participate in Tier 2 or Tier 3 weekday and weekend and occasional night on-call rotations to assist troubleshooting product operations, security operations, and urgent engineering issues.
- Professional experience with Ruby and Rails
- Proficiency in the English language, both written and verbal, sufficient for success in a remote and largely asynchronous work environment
- Demonstrated capacity to clearly and concisely communicate about complex technical, architectural, and/or organizational problems and propose thorough iterative solutions
- Experience with performance and optimization problems and a demonstrated ability to both diagnose and prevent these problems
- Comfort working in a highly agile, intensely iterative software development process
- Demonstrated ability to onboard and integrate with an organization long-term
- Positive and solution-oriented mindset
- 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.
- Self-motivated and self-managing, with strong organizational skills.
- Demonstrated ability to work closely with other parts of the organization
- Share our values, and work in accordance with those values
- Ability to use GitLab
- Ability to thrive in a fully remote organization
- Experience working with data and analytics technologies including (eg. Snowflake, dbt, Snowplow, Periscope / Sisense)
- Experience working with modern frontend frameworks (eg. React, Vue.js, Angular)
- Experience in a peak performance organization, preferably a tech startup
- Experience with the GitLab product as a user or contributor
- Product company experience
- Experience working with a remote team
- Enterprise software company experience
- Developer platform/tool industry experience
- Experience working with a global or otherwise multicultural team
- Computer science education or equivalent experience
- Passionate about/experienced with open source and developer tools
At GitLab, due to the pace we're moving, people joining our team will be expected to have significant professional experience in the primary programming language of the specialty that they'll be joining. Because the majority of our codebase is written in Ruby, even in specialized roles, a knowledge of Ruby and Ruby on Rails or a desire to learn and contribute is necessary.
For context, see this merge request with some history on this policy.
Primary programming language
Some specialties within GitLab are using primary programming languages other than Ruby. These programming languages are defined as being primary in terms of an engineer's experience and what they'll be writing day to day. The expectation from the specialty is that engineers will have extensive experience in this primary programming language as well as some level of understanding of Ruby and, Ruby on Rails.