GitLab is looking for motivated engineers to help grow our test automation efforts across the Enablement stage group. This is a key software development position with a new and growing team, so your efforts will have a noticeable impact to both the company and product. We are excited to find candidates who have a passion for high quality software, enjoy collaborating with other teams, and are methodical problem solvers.
Expand our existing test automation framework and test coverage.
Develop new tests and tools for our GitLab.com frontend, backend APIs and services, and low-level systems like geo replication, CI/CD, and load balancing.
Work with the product team and other development teams to understand how new features should be tested, and then engage them in contributing automated tests.
Work with engineers to define and implement mechanisms to inject testing earlier into the software development process.
Identify and drive the adoption of best practices in code health, testing, testability, and maintainability. You should know about clean code and the test pyramid, and champion these concepts.
Analyze complex software systems and collaborate with others to improve the overall design, testability and quality.
Strive for the fastest feedback possible. Test parallelization should be a top priority. You see distributed systems as a core challenge of good test automation infrastructure.
Configure automated tests to execute reliably and efficiently in CI/CD environments.
Track and communicate test results in a timely, effective, and automated manner.
Strong experience developing in Ruby
Strong experience using Git
Experience using test automation tools like Capybara, Watir, Selenium
Relevant work experience in software development and/or test automation
Experience working with Docker containers
Experience with AWS or Kubernetes
Experience with Continuous Integration systems (e.g., Jenkins, Travis, GitLab)
Ideally we are looking for someone with security testing experience, however, this isn't a prerequisite for an application
You share our values, and work in accordance with those values.
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. As a result an interview can be canceled at any time even if the interviews are very close (e.g. a few hours apart).
To learn more about someone who may be conducting the interview, find her/his job title on our team page.
Candidates will be invited to complete a technical assessment from our Recruiting team.
Qualified candidates will be invited to schedule a 30 minute screening call with our Recruiting team.
Next, candidates will be invited to schedule a 45 minute first interview with the Hiring Manager
Next, candidates will then be invited to schedule a 1 hour technical interview with a Senior Software Engineer in Test
Next, candidates will then be invited to schedule a 1 hour peer interview with two Engineers in the Quality department..
Finally, candidates will be invited to schedule a 45 minute interview with the Head of Quality.
Successful candidates will subsequently be made an offer via email
Additional details about our process can be found on our hiring page.