GitLab's DevOps platform empowers 100,000+ organizations to deliver software faster and more efficiently. We are one of the world’s largest all-remote companies with 1,400+ team members and values that guide a culture where people embrace the belief that everyone can contribute.
This Senior Backend Engineer, Applied ML and Anti-Abuse position for our new team in the ModelOps stage is 100% remote.
About the teams: Applied Machine Learning and Anti-Abuse
Applied Machine Learning
With our recent acquisition of UnReview, we have launched our new applied-machine learning team, which will bring workflow automation, powered by machine learning, to identify the correct code reviewer. We will expand to other use cases in the future.
The current priorities for the team are to create a Proof of Concept (PoC) for this first code review use case, then to productionize and integrate the PoC into the product. This team will also help GitLab integrate machine learning capabilities across our single devops platform.
This team primarily writes code in Python and Ruby on Rails.
Our new anti-abuse team in the development department, play a key role in creating tools and processes used by both our customers and our internal trust and safety team to detect and respond to abuse of the GitLab product and service. This will include pipeline abuse (such as cryptomining), spam, and other abuse vectors.
We utilize statistical analysis, rules, and machine learning to detect abuse. We also orchestrate the response workflow via a combination of manual and automated workflows.
Detecting and preventing abuse is key to making the GitLab product and service available to both open-source users and paying customers. It allows us to minimize attack vectors that impact functionality, availability, performance, confidentiality, integrity, and hosting costs
This team writes code in both Go and Ruby on Rails.
What you'll do in this role
- Contribute to the overall direction of both the teams of Applied ML and Anti-Abuse
- Play a key role in the design, implementation and integration of product features.
- Solve technical problems of high scope and complexity.
- Test, deploy, maintain and improve Anti-Abuse and ML engines/infrastructure and software that uses these models
- Partner on changes with other teams including create, growth, and security.
- Help to define and improve our internal standards for style, maintainability, and best practices for a high-scale web environment. .
- Confidently ship moderately sized features and improvements with minimal guidance and support from other team members.
- Collaborate with the team on larger projects.
- Improve the engineering projects at GitLab via maintainer trainee program at your own comfortable pace, while striving to become a project maintainer.
You should apply if you bring:
- Significant professional experience in Ruby on Rails.
- Some experience in Vue.js or similar modern frontend frameworks.
- 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.
- Comfort working in earlier stages of product development.
- A genuine passion for learning.
- Comfortable prioritizing workload for both teams of Applied ML and Anti-abuse
Nice to have attributes:
- Experience with the GitLab product as a user or contributor
- Experience in machine learning and/or antiabuse, or high interest in learning about one or both
Also, we know it’s tough, but please try to avoid the confidence gap . You don’t have to match all the listed requirements exactly to be considered for this role.
Our hiring process for this position typically follows four stages. The details of this process and our leveling structure can be found on our job family page.
Country Hiring Guidelines: GitLab hires new team members in countries around the world. All of our roles are remote, however some roles may carry specific location-based eligibility requirements. Our Talent Acquisition team can help answer any questions about location after starting the recruiting process.
GitLab is proud to be an equal opportunity workplace and is an affirmative action employer. GitLab’s policies and practices relating to recruitment, employment, career development and advancement, promotion, and retirement are based solely on merit, regardless of race, color, religion, ancestry, sex (including pregnancy, lactation, sexual orientation, gender identity, or gender expression), national origin, age, citizenship, marital status, mental or physical disability, genetic information (including family medical history), discharge status from the military, protected veteran status (which includes disabled veterans, recently separated veterans, active duty wartime or campaign badge veterans, and Armed Forces service medal veterans), or any other basis protected by law. GitLab will not tolerate discrimination or harassment based on any of these characteristics. See also GitLab’s EEO Policy and EEO is the Law. If you have a disability or special need that requires accommodation, please let us know during the recruiting process.