Data Engineering

The Data Engineer job family is focused on an analytical and business-oriented mindset with the ability to implement rigorous database solutions and best practices in order to produce and influence the adoption of strong quality data insights to drive business decisions in all areas of GitLab. The Data Engineer job family is essentially software engineers who have a particular focus on data movement and orchestration.

Data Engineer (Junior)

The Data Engineer (Junior) reports to the Manager, Data.

Data Engineer Job Grade

The Data Engineer (Junior) is a grade 5.

Data Engineer (Junior) Requirements

  • Experience using Python, Java, or Scala for data processing (Python preferred)
  • Knowledge of and experience with data-related Python packages
  • Good understanding of SQL and analytical data warehouses
  • Share and work in accordance with our values
  • Constantly improve product quality, security, and performance
  • Desire to continually keep up with advancements in data engineering practices
  • Collaborate with team members to identify requirements, define successful outcomes, and deliver trusted results
  • Catch bugs and style issues in code reviews
  • Ship small features independently
  • Ability to use GitLab

Data Engineer (Junior) Responsibilities

  • Maintain our data platform with timely and quality data
  • Build and maintain data pipelines from internal databases and SaaS applications
  • Create and maintain systems documentation
  • Write maintainable, performant code
  • Implement the DataOps philosophy in everything you do
  • Plan and execute system expansion as needed to support the company’s growth and analytic needs
  • Collaborate with Analytics Engineers and Data Analysts to drive efficiencies for their work
  • Collaborate with other functions to ensure data needs are addressed
  • This position is always central and reports to the Manager, Data

Data Engineer (Intermediate)

The Data Engineer (Intermediate) reports to the Manager, Data.

Data Engineer Job Grade

The Data Engineer (Intermediate) is a grade 6.

Data Engineer (Intermediate) Requirements

  • 2+ years hands-on experience deploying production quality code
  • Professional experience using Python, Java, or Scala for data processing (Python preferred)
  • Knowledge of and experience with data-related Python packages
  • Demonstrably deep understanding of SQL and analytical data warehouses (Snowflake preferred)
  • Hands-on experience implementing ETL (or ELT) best practices at scale.
  • Hands-on experience with data pipeline tools (Airflow, Luigi, Azkaban, dbt)
  • Strong data modeling skills and familiarity with the Kimball methodology.
  • Experience with Salesforce, Zuora, Zendesk and Marketo as data sources and consuming data from SaaS application APIs.
  • Share and work in accordance with our values
  • Constantly improve product quality, security, and performance
  • Desire to continually keep up with advancements in data engineering practices
  • Catch bugs and style issues in code reviews
  • Ship medium features independently
  • Ability to use GitLab

Data Engineer (Intermediate) Responsibilities

  • Maintain our data warehouse with timely and quality data
  • Build and maintain data pipelines from internal databases and SaaS applications
  • Create and maintain architecture and systems documentation
  • Write maintainable, performant code
  • Implement the DataOps philosophy in everything you do
  • Plan and execute system expansion as needed to support the company’s growth and analytic needs
  • Collaborate with Data Analysts to drive efficiencies for their work
  • Collaborate with other functions to ensure data needs are addressed
  • This position is always central and reports to the Manager, Data

Senior Data Engineer

The Senior Data Engineer reports to the Manager, Data.

Senior Data Engineer Job Grade

The Senior Data Engineer is a grade 7.

Senior Data Engineer Responsibilities

  • Extends the Data Engineer (Intermediate) responsibilities
  • Understand and implement data engineering best practices
  • Improve, manage, and teach standards for code maintainability and performance in code submitted and reviewed
  • Create smaller merge requests and issues by collaborating with stakeholders to reduce scope and focus on iteration
  • Ship large features independently
  • Generate architecture recommendations and the ability to implement them
  • Great communication: Regularly achieve consensus amongst teams
  • Perform technical interviews

Senior Data Engineer Requirements

  • Extends that of the Data Engineer (Intermediate) requirements
  • Relevant experience for a Senior Data Engineer

Staff Data Engineer

The Staff Data Engineer role extends the Senior Data Engineer role.

Job Grade

The Staff Data Engineer is a grade 8.

Business Justification: The staff level requires deep technical and functional knowledge that contributes to the overall direction and impacts multiple teams, including working directly with external stakeholders. Market data outlines that a significant number of organizations have approximately 3-4 staff level individual contributors.

Responsibilities

  • All requirements of a Senior Data Engineer
  • Ship large features and foundational improvements with minimal guidance and support from other team members
  • Support other data team members with the shipping of new features by setting direction and providing guidance
  • Solve technical problems of the highest scope and complexity
  • Exert significant influence on the long-range goals
  • Define and extend our internal standards for style, maintenance, and best practices for a high-scale data platform
  • Represent GitLab and its values in public communication around broad initiatives, specific projects, and community contributions
  • Interact with customers and other external stakeholders as a consultant and spokesperson for the work of your team
  • Provide mentorship for all on your team to help them grow in their technical responsibilities
  • Propose ideas to improve the scale, performance, and capabilities of the Data Platform

Specialties

Senior Data Engineer Big Data

Requirements

  • All requirements of a Senior Data Engineer
  • Expertise in designing and developing distributed data pipelines using big data technologies on large scale data sets demonstrated with years of proven experience.
  • Has experience with various streaming data concepts, such as Kafka.
  • Can lead full scale Data Lake implementations.
  • Has good understanding of Lambda Architecture.

Senior Data Security Engineer

Responsibilities

  • All responsibilities of a Senior Data Engineer
  • Works together with the GitLab security department to keep our Data Platform secure from an internal- and external perspective
  • Establish policy and data security controls to protect data in our Data Platform
  • Ensures the compliance of policy, processes and procedures
  • Assess security effectiveness of our Data Platform

Requirements

  • All requirements of a Senior Data Engineer
  • Self starter on data security initiatives
  • Has good understanding of data security principles
  • Understanding of data encryption protocols

Performance Indicators (PI)

Career Ladder

The next step in the Data Engineer job family is to move to the Data Management job family.

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.

  • Selected candidates will be invited to schedule a screening call with one of our Global Recruiters
  • Next candidates will be invited to complete an assessment
  • On successful completion of the assessment, candidates will then be invited to schedule a first interview with the Hiring Manager
  • Candidates will then be invited to schedule two separate interviews with two Peers from the Data team
  • Final stage will be with our Senior Director of Data.

Additional details about our process can be found on our hiring page.

Career Ladder

The next step in the Data Engineer job family is to move to a Principal Job Level (WIP) or into the Data Management job family.

 


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:

  1. Mission: Everyone can contribute
  2. Results: Fast growth, ambitious vision
  3. Flexible Work Hours: Plan your day so you are there for other people & have time for personal interests
  4. Transparency: Over 2,000 webpages in GitLab handbook, GitLab Unfiltered YouTube channel
  5. Iteration: Empower people to be effective & have an impact, Merge Request rate, We dogfood our own product, Directly responsible individuals
  6. Diversity, Inclusion & Belonging: A focus on gender parity, Team Member Resource Groups, other initiatives
  7. Collaboration: Kindness, saying thanks, intentionally organize informal communication, no ego
  8. Total Rewards: Competitive market rates for compensation, Equity compensation, global benefits (inclusive of office equipment)
  9. Work/Life Harmony: Flexible workday, Family and Friends days
  10. 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.

Last modified November 3, 2023: Update find and replace script (9507e5be)