GitLab is looking for three Frontend Engineers, one for each team in the Fulfillment sub-department. Fulfillment manages everything regarding purchasing and billing, which means building a flow that’s as frictionless as possible since the best billing system is one the user doesn’t have to think about.
Improving this area has been identified as a priority, and the Fulfillment sub-department has been established to lead these initiatives: https://about.gitlab.com/handbook/engineering/development/fulfillment/
As a Frontend Engineer in Fulfillment, you will be a T-shaped engineer.
- Expert in frontend - working together with Product and UX to deliver features and fixes. Identifying when to abstract components to GitLab’s components library ( https://gitlab.com/gitlab-org/gitlab-ui ).
- Comfortable designing technical solutions to backend challenges - the frontend team serves as the experts to our backend counterparts ( https://about.gitlab.com/handbook/engineering/development/fulfillment/fe-purchase/#stable-counterparts ). We regularly work together to design API interfaces, debug a gnarly bug, reduce technical debt. Being comfortable reading and writing Ruby code is a bonus (but not a requirement).
The Fulfillment sub-department is responsible for the infrastructure between the systems which affect the user purchasing process, as well as being the primary caretakers of the CustomersDot and LicenseDot systems.
The frontend team is responsible for all purchase experiences. Trials, purchase flows, and account management (invoices, contact, billing info) - Systems: CustomersDot , GitLab . Integrations: Zuora , Stripe .
Frontend Engineers at GitLab work on our product. This includes both the open source version of GitLab, the enterprise editions, and the GitLab.com service as well. They work with peers on teams dedicated to different areas of the product. They work together with product managers, designers, and backend engineers to solve common goals.
Unless otherwise specified, all Frontend Engineering roles at GitLab share the following requirements and responsibilities:Requirements
Nice To Have
- Experience with writing automated tests (eg. Jest, Karma, Jasmine, Mocha, AVA, tape)
- Experience using Git in a professional/workplace environment
- A solid understanding in core web and browser concepts (eg. how the browser parses and constructs a web page)
- 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
- Self-motivated and self-managing , with great 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 thrive in a fully remote organization
- Ability to use GitLab
- Working knowledge of Ruby on Rails and Haml
- 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
- Experience contributing to open source software
- Domain knowledge relevant to the product stage in which you are looking to join (eg. someone with CI/CD experience applying for the Verify & Release team)
The Senior Frontend Engineer role extends the Frontend Engineer role.Responsibilities
- Advocate for improvements to product quality, security, and performance that have particular impact across your team.
- Solve technical problems of high scope and complexity.
- Exert influence on the overall vision and long-range goals of your team. This could be technical and/or product focused.
- Experience with performance and optimization problems, particularly at large scale, and a demonstrated ability to both diagnose and prevent these problems
- Help to define and improve 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 broader initiatives, specific projects, and community contributions.
- Provide mentorship for Junior and Intermediate Engineers in your section to help them grow in their technical responsibilities and remove blockers.
- Consistently ship moderately sized features and improvements with minimal guidance and support from other team members. Collaborate with the team on larger projects.
- Improves the engineering projects at GitLab via maintainer trainee program at own comfortable pace, while striving to become a project maintainer .
Frontend Engineer Performance Indicators
Frontend Engineers have the following job-family performance indicators.
- Frontend Unit Test Coverage
- Mean Time to Merge (MTTM)
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 .
Remote-GlobalCountry Hiring Guidelines
Please visit our Country Hiring Guidelines page to see where we can hire.Your Privacy