Product Design Roles at GitLab
At GitLab, Product Designers collaborate closely with Product Managers, Engineers, UX Researchers, Technical Writers, and other Product Designers to create a productive, minimal, and human experience. Product Designers report to a Product Design Manager.
- Help to define and improve the interface and experience of GitLab.
- Design features that fit within the larger experience and flows.
- Create deliverables (wireframes, mockups, prototypes, flows, and so on) to communicate ideas.
- Work with Product Managers and Engineers to iterate on and refine the existing experience.
- Define and contribute to research initiatives (usability tests, surveys, interviews, and so on) alongside UX Researchers and Product Managers.
- Stay informed and share the latest on UI/UX techniques, tools, and patterns.
- Understand responsive design and best practices.
- Have knowledge and understanding of design systems theory and practice.
- Have general knowledge of Git (for example, branching, push/pulling, committing, squashing) and DevOps (for example, pipelines, deployments, monitoring) flows.
The Product Designer is a grade 6.
- Product knowledge: Have working knowledge of the group(s) you are assigned.
- Research: Conduct solution validation with guidance from your Product Design Manager and incorporate insights into design decisions to fulfill user and business needs.
- Deliverables: Create deliverables for the group(s) you support (for example: JTBD, UX Scorecards, competitive evaluations, user flows, low fidelity wireframes, high fidelity mockups, prototypes, and so on) that solve real user problems through the user experience.
- Communication: Communicate the results of UX activities within your product area to the UX department, cross-functional partners within your product area, and other interested GitLab team-members using clear language that simplifies complexity.
- Usability: Proactively identify both small and large usability issues within your group(s).
- Iteration: Practice design iteration within the validation track and take part in the monthly release process by breaking down the designs to fit the release cadence of your group(s). Review and approve merge requests submitted by developers within the build track.
- Design system: Actively contribute to the Pajamas Design System by keeping design components available and up to date in prototyping tools, ensuring that reusable components fit visually and functionally together.
- UI copy: Collaborate closely with a Technical Writer on microcopy and documentation suggestions.
- Design reviews: Participate in Design Reviews, giving and receiving feedback in an appropriate way.
- UX debt: Understand UX debt and make recommendations for its resolution with the help from a Senior or Staff Product Designer or your Product Design Manager.
- Recruiting: Evaluate case studies during the Product Designer candidate interview process and interview Product Manager candidates.
Senior Product Designer
Senior Job Grade
The Senior Product Designer is a grade 7.
Everything in the Product Designer role, plus:
- Product knowledge: Deeply understand the technology and features of the group(s) you are assigned and proactively learn others.
- Research: Independently conduct solution validation with minimal guidance from your Product Design Manager and incorporate insights into design decisions to fulfill user and business needs.
- Deliverables: Create deliverables for the group(s) you support (for example: JTBD, UX Scorecards, competitive evaluations, low fidelity wireframes, high fidelity mockups, prototypes, journey maps, storyboards, design vision, and so on) that help define the vision and execution of solving real user problems through the user experience.
- Communication: Communicate the results of UX activities with a strong point of view to the UX department, cross-functional partners with your group(s), and other interested GitLab team-members using clear language that simplifies complexity.
- Usability: Proactively identify both small and large usability issues within your group(s), and help influence your Product Manager to prioritize them.
- Iteration: Lead and coach iteration of design work within the validation track for your group(s).
- Design system: Actively contribute to the Pajamas Design System, help determine whether components are single-use or multi-use, and provide recommendations to designers regarding new component requests.
- UI copy: Collaborate early and often with a Technical Writer on microcopy to ensure user experiences are efficient. Help improve docs and incorporate documentation within the UI as needed to assist users in moving through their workflows.
- Design reviews: Participate in Design Reviews, and model best practices for giving and receiving feedback.
- UX debt: Help reduce the creation of additional UX debt with MVCs and advocating within your group(s) the importance of releasing value to users. Identify and influence the prioritization to fix UX debt when it occurs.
- Public presence: Help promote GitLab publicly by writing blog articles, giving talks, publishing videos to GitLab Unfiltered, or responding on social media, where appropriate.
- Cross-stage collaboration: Support your Product Design Manager and Product Manager in identifying dependencies between groups and stages and advocating for cross-stage collaboration when needed.
- Mentoring: Mentor other members of the UX department, both inside and outside of your group(s) on how to approach design problems, solicit feedback, and drive for impactful outcomes.
Staff Product Designer
Staff Job Grade
The Staff Product Designer is a grade 8.
Everything in the Senior Product Designer role, plus:
- Product knowledge: Deeply understand the technology and features of the stages you are assigned and have a working knowledge of the end-to-end GitLab product.
- Research: Understand the nuances and considerations between problem and solution validation, mentor other designers on how they plan their research, and work with your Product Design Manager on potential strategic research needs.
- Deliverables: Create tactical and strategic deliverables for the stages you support (for example: JTBD, UX Scorecards, wireframes, competitive evaluations, prototypes, journey maps, storyboards, design vision, and so on).
- Communication: Set an example for how to effectively communicate across stages by frequently participating in asynchronous collaboration in issues and merge requests.
- Iteration: Understand long-term goals in your stage and help other Product Designers break down designs into actionable steps.
- Design reviews: Participate in Design Reviews across the stages you support, and model best practices for giving and receiving feedback.
- UX debt: Help the product teams of stages you support to prioritize and close UX debt.
- Thought leadership: Teach and socialize decision-making frameworks to the GitLab community, so that designers can solve problems more efficiently on their own.
- Recruiting: Conduct independent portfolio reviews of qualified design candidates to help identify top talent in the candidate pool.
- Cross-stage collaboration: Drive cross-stage collaboration by helping designers to identify dependencies and areas for cross-department work.
- Mentoring: Mentor designers on which deliverables and approaches are most valuable at each stage of validation, and create those artifacts with them (for example, personas at the problem stage, storyboards at the solution stage, and so on).
- Craft: Push forward the craft of product design in regard to our standards and approaches to design at GitLab in an all-remote context (fostering a design studio atmosphere within GitLab).
- Vision: Exert significant influence on the overall objectives and long-range goals of your section by actively contributing to Vision pages in collaboration with Product and Engineering.
- Early adoption: Drive innovation across the organization by driving the adoption of processes and tools.
- Open processes: Actively contribute handbook changes that help the organization evolve the culture and best practices.
Principal Product Designer
The Principal Product Designer is a grade 9.
Everything in the Staff Product Designer role, plus:
- Product knowledge: Deeply understand the technology and features within your sections and have knowledge of the end-to-end GitLab product.
- Research: Collaboratively identify and conduct strategic research with a UX Researcher, and help Product Designers make connections across the research efforts within your sections.
- Deliverables: Solve design problems of the highest scope, complexity, and ambiguity for your sections.
- Communication: Guide conversations to remove blockers and encourage collaboration across teams.
- Iteration: Create 6-month visions and plans for your sections to deliver value to customers and the organization.
- Design reviews: Participate in Design Reviews across the sections you support to ensure high-quality output, and model best practices for giving and receiving feedback.
- UX debt: Help the sections you support to prioritize and close UX debt.
- Thought leadership: Interface with Product Design Managers and Senior management, and enable Staff Designers to engage on UX department-level aspects of larger (stage-wide) initiatives.
- Recruiting: Conduct portfolio reviews with Staff Product Designers of qualified design candidates, and help retain a world-class team of Product Designers and Product Design Managers.
- Cross-stage collaboration: Collaborate and make proposals across several teams, and help team members make informed decisions in alignment with your sections’ strategic plans.
- Mentoring: Teach, mentor, grow, and provide advice to other domain experts and individual contributors across your sections.
- Craft: Looks for innovation opportunities between several teams with a willingness to experiment and to boldly confront problems of large complexity and scope.
- Vision: Play a central role in design, business, and organizational contributions affecting your sections or across the UX department.
- Goal setting: Ensures that OKR level goals are aligned across the teams within your sections.
- Open processes: Exposes design and organizational needs throughout the department.
- Impact: Provide positive influence on the Perception of System Usability through improved user experiences, leading to increased adoption of stages per organization and increased ARR.
In addition to embedding in groups that focus on a specific product area, we also have a small Foundations team that works on building a cohesive and consistent user experience across platform experiences like navigation, both visually and functionally. You’ll be responsible for leading the direction of the experience design, visual style, and technical tooling of the GitLab product. You’ll act as a centralized resource, helping to triage large-scale experience problems as the need arises.
You’ll spend your time collaborating with a cross-functional team, helping to implement our Design System, building comprehensive accessibility standards into our workflows, and defining guidelines and best practices that will inform how teams are designing and building products. A breakdown of the vision you’ll be helping to deliver within the UX Foundation category can be found on our product direction page.
UX Paper Cuts Specialty
The UX Paper Cuts team is responsible for identifying and fixing small, impactful usability issues in the GitLab product. Like the Foundations team, UX Paper Cuts doesn’t work within a specific product area, but across the product as a whole, identifying issues and creating merge requests to continually improve the user experience. You’ll also spend your time helping to implement and evolve the Design System and GitLab UI and assist in burning down backlogs of known UI and usability problems. By focusing on small details, you will help create a more polished and user-friendly interface, leading to increased user satisfaction, engagement, and, ultimately, a more successful product.
UX Paper Cuts Responsibilities
Everything in the various levels of Product Designer roles, plus:
- Intermediate development skills We work primarily with Vue, Rails, and SCSS, so designers should be comfortable updating, building, and reviewing code within those frameworks.
- Advanced git knowledge Since we spend most of our time working in merge requests, designers should be comfortable using git effectively.
- Creation and management of feature flags Know when to use feature flags, how to create them, and montitor their progress and potential feedback.
- Familiarity with unit testing The ability to fix, update, and write RSpec and Jest tests.
- Perception of System Usability
- Ratio of Proactive vs Reactive UX Work
- Beautifying our UI
- Ratio of Breadth vs Depth Work
- UX Debt
- Pajamas component migrations
Candidates for this position can expect the hiring process to follow the order below, although it can change depending on calendar availability. Please keep in mind that candidates can be declined from the position at any stage of the process. To learn more about someone who is conducting your interview, you can find their job title on our team page.
- Selected candidates will be invited to schedule a 30-minute screening call with a member of our hiring team. In this call, we will discuss your experience, understand what you are looking for in a Product Design role, talk about your work and approach to product design, discuss your compensation expectations and reasons why you want to join GitLab, and answer any questions you have.
- Next, if a candidate successfully passes the screening call, they will have two 1-hour interviews: One with a Product Designer and another with the hiring Product Design Manager.
- During these interviews you will be asked several situational questions to help us learn how you have responded or would respond in certain scenarios.
- You should be prepared to discuss your design and research process, details about how you collaborate, and how you approach your role.
- You will also have an opportunity to talk through a case study in your portfolio. We’ll look for you to walk through a project so we can understand your process, approach, and philosophy to design, the size and structure of the team you were a part of, the goals of the project, your low-fidelity design work, your high-fidelity design skills, how you approached research, how you synthesized research data to inform design decisions, what design standards and guidelines you worked within, and how you collaborated with a wider team. We are looking for you to give some real insight into a problem you solved, ideally in a project with similar challenges, goals, or context to the type of work you’ll find in the stage group you’re interviewing for. Be prepared to discuss your project with your interviewer throughout your walk through. You can expect to spend about 30 minutes discussing your case study.
- Towards the end of each interview, you will be given some time to ask questions.
- If you successfully pass the previous interviews, you will meet with a Senior Manager of Product Design for a 50-minute interview. This interview will focus on assessing your research, strategy, and design skills. The interviewer will want to understand how you have incorporated research into your work and get a feel for your understanding of the fundamentals of research and UX methodology. Be prepared to answer questions around the soft skills Product Designers need, and be prepared to talk to the interviewer about how you apply these skills in the real world.
- The final interview will be with a Product Manager and Engineering Manager. They will focus on your ability to collaborate with Product and Engineering teams and determine how well your skills align with the needs of a specific stage group.
- Successful candidates will subsequently be made an offer via a video call or phone call.
Hiring process for UX Paper Cuts Specialty
The UX Paper Cuts Speciality has an emphasis on basic coding skills as the role involves making changes to the product by creating, reviewing, and merging MRs. The final interview will be with a member of the UX Paper Cuts team and it will focus on discussing the technical exercise you will receive a couple of days prior to the scheduled call. The technical exercise is brief and to be completed in advance. It’s an opportunity to learn your comfort and capability in making small front-end changes. This final interview and exercise replaces the Product Manager and Engineering Manager mentioned above.
Preparing for your interviews
Here are some helpful tips for when you are sharing a case study:
- A formal presentation is not required but it is helpful to bring your materials together. We recommend not sharing entire design files as it can be difficult for an interviewer to follow along.
- Clearly outlined user and business problems that you were solving and how you learned about them.
- What your role was (for example, who did you work with and what was your responsibility).
- The details of the design process (polished visuals are fine but you may want to include the sketches, wireframes, prototypes, or the ideas that didn’t make it).
- The result of your work (learnings, successfully achieved goals, impact on key metrics).
The hiring process for internal candidates may be slightly adjusted from the above, but in general the goal is still to evaluate the best fit for the role. Interview questions may be adapted to gauge interest and skills in specific areas the team would like to grow, or about specific team responsibilities. A case study review is not necessary; instead, consider current or previous work assignments and experience in light of the position.
Additional details about our process can be found on our hiring page.
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:
- Mission: Everyone can contribute
- Results: Fast growth, ambitious vision
- Flexible Work Hours: Plan your day so you are there for other people & have time for personal interests
- Transparency: Over 2,000 webpages in GitLab handbook, GitLab Unfiltered YouTube channel
- Iteration: Empower people to be effective & have an impact, Merge Request rate, We dogfood our own product, Directly responsible individuals
- Diversity, Inclusion & Belonging: A focus on gender parity, Team Member Resource Groups, other initiatives
- Collaboration: Kindness, saying thanks, intentionally organize informal communication, no ego
- Total Rewards: Competitive market rates for compensation, Equity compensation, global benefits (inclusive of office equipment)
- Work/Life Harmony: Flexible workday, Family and Friends days
- 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.