GitHub is looking for an experienced Senior Engineer to join our Design Infrastructure team. This team is responsible for evolving our open-source design system—Primer, supporting and improving our UI design patterns, documentation, component APIs, and the cross-cutting customer experiences of GitHub products.
In this role, you’ll collaborate with product and platform engineers to improve our component libraries and the developer experience of working with our design system. You’ll work with other engineers and designers to make decisions about component APIs. Our team is composed of designers and engineers who have backgrounds in product design, design systems, design ops, and illustration; as well as CSS experts, and engineers with front-end and full-stack experience working in Rails and React.js.
If you enjoy the challenge of building design systems at scale that deliver a great customer experience, and create an empowering developer experience, you might find a happy home on the GitHub design systems team.
What we're looking for:
Senior Engineers at GitHub are strong individual contributors; they're given a lot of autonomy and trust to work on high impact projects. For this specific role on Design Systems, we're looking for someone who values the following:
- Systems thinking: Our team has to apply decisions holistically, making sure to look at new patterns in context to the larger system of the product, as well as ensuring we support experiences for individual features.
- Inclusive design: GitHub is a home for all developers and our design system should reflect that, this means including and learning from people with a range of perspectives. Designing for inclusivity first, can lead us to solving problems for the many, and open up our product for more people.
- Creating together: Getting to the right result is our focus, this can come from platform engineers or product engineers, and ideally both. Facilitating collaboration between teams and individuals is key so that we continue to evolve the design system alongside the needs of the product.
- Progress and impact: Our team often works on the meta and so it's easy to get caught up in the design details. We have to be mindful of this and ensure we keep making decisions and move forward. This means being solutions oriented and prioritizing progress over correctness when it's the right call.
- Candidness: We encourage candidness and recognize its role in building trust between peers and leadership. It can take time and effort to get there but it's worth it. Making decisions for projects, design patterns, and processes, will yield better results when we can get to the “real talk”.
- Lead the Primer ViewComponents open source project, including issue triage, code review, and implementation.
- Contribute to the ViewComponent framework.
- Lead the implementation of complex UI components and cross-cutting features of our design system.
- Work closely with designers to define component APIs, provide feedback, make recommendations, and propose improvements.
- Prototype, experiment, and create demos to find the right solutions.
- Provide code review on contributions to the system.
- Document the systems you help build, contribute to training materials and onboarding
- Participate in business-hours on-call rotations with your team, triage and respond to issues, looking for opportunities to improve service health.
- Partner with select teams developing new features to share expertise as projects move from conception to launch, with a view to growing the project team’s systems thinking practices.
You might be a fit if:
- You have 2 years or more experience contributing to design systems within an organization or as part of an open-source project.
- You have 5 years or more engineering experience as an individual contributor.
- You have experience with component API design.
- You have experience with Git version control.
- You can help scale the design system of a product like GitHub.
- You have led the implementation of complex components, websites, and applications.
- You like to go to the extra mile to implement small but important design details.
These qualifications will help you stand out:
- You have led the development of internal or open-source design systems.
- You have developed or contributed to frameworks such as CSS-in-JS libraries, open-source component libraries, or utilities that improve the developer experience.
- You have experience in CSS architecture, through CSS-only frameworks or as part of component library development.
- You are passionate about building accessible and inclusive products.
- You have experience working on developer tools.
Who We Are:
GitHub is the developer company. We make it easier for developers to be developers: to work together, to solve challenging problems, and to create the world’s most important technologies. We foster a collaborative community that can come together—as individuals and in teams—to create the future of software and make a difference in the world.
Customer Obsessed - Trust by Default - Ship to Learn - Own the Outcome - Growth Mindset - Global Product, Global Team - Anything is Possible - Practice Kindness
Why You Should Join:
At GitHub, we constantly strive to create an environment that allows our employees (Hubbers) to do the best work of their lives. We've designed one of the coolest workspaces in San Francisco (HQ), where many Hubbers work, snack, and create daily. The rest of our Hubbers work remotely around the globe. Check out an updated list of where we can hire here: https://github.com/about/careers/remote
We are also committed to keeping Hubbers healthy, motivated, focused and creative. We've designed our top-notch benefits program with these goals in mind. In a nutshell, we've built a place where we truly love working, we think you will too.
GitHub is made up of people from a wide variety of backgrounds and lifestyles. We embrace diversity and invite applications from people of all walks of life. We don't discriminate against employees or applicants based on gender identity or expression, sexual orientation, race, religion, age, national origin, citizenship, disability, pregnancy status, veteran status, or any other differences. Also, if you have a disability, please let us know if there's any way we can make the interview process better for you; we're happy to accommodate!
Please note that benefits vary by country. If you have any questions, please don't hesitate to ask your Talent Partner.