Description

Overview

 

GitHub is revolutionizing the way developers collaborate and build software, and we are seeking a Principal Software Engineer to pioneer the UI Platform space, which entails areas of frontend performance, accessibility, consistency, and availability. This role is pivotal to defining GitHub's future UI architecture, ensuring accessibility for all users, delivering an exceptional user interface, enhancing developer experience, and positioning GitHub as a leader in UI innovation, thereby empowering millions of developers worldwide.


Responsibilities

 

Lead the architectural design and development of GitHub's web UI platform, ensuring scalability, reliability, accessibility, and performance.

Collaborate with cross-functional teams to define and prioritize projects aimed at enhancing GitHub's user experience.

Establish best practices, patterns, and guidelines for frontend development, fostering a culture of excellence and innovation.

Provide technical leadership and mentorship to frontend engineering teams, promoting continuous learning and growth.

Drive initiatives to improve engineering processes, tooling, and automation to streamline development workflows.

Champion accessibility, performance, and usability standards, ensuring that GitHub's web interfaces are accessible to all users and optimized for performance.

Stay abreast of emerging frontend technologies, trends, and best practices, advocating for their adoption when beneficial to GitHub's development ecosystem.

Collaborate with product management and design teams to translate user needs and business requirements into technical solutions.

Serve as a subject matter expert on web UI development, representing GitHub in industry conferences, forums, and technical communities.

A week in the life of a Principal Engineer might consist of:

Collaborating with other Principal Engineers to define the future of GitHub engineering and working together to implement that vision

Collaborating with design, analytics, support, and product management to understand the problems we want to solve and exploring how we can solve them

Digging into the most important issues the department is tackling by asking questions, creating plans, recognizing pitfalls, raising concerns, and creating clarity

Discussing and collaboratively solving engineering and product problems with engineering collaborators in Slack or Zoom

Planning and executing large-scale company-wide rollouts and migrations

Supporting company-wide initiatives

Bringing key plans and execution ideas to the management team

Mentoring other engineers at all experience levels

Providing comprehensive and high quality code or design reviews when requested by other teams at GitHub

Reviewing teammates' Pull Requests and providing helpful feedback

Serve as an engineering representative for critical customer conversations to discover what they love and what their pain points are

Embedding in a squad periodically to enable others to tackle challenges and stretch assignments

As a part of Engineering technical leadership, advising on key initiatives, gaps, and technical pitfalls we need to be aware of


Qualifications

 

Required Qualifications:

Bachelor's degree in Computer Science, Engineering, or equivalent practical experience.

10+ years of professional experience in frontend development, with a strong proficiency in modern JavaScript frameworks (especially React) and with the last 4 years in a senior technical role (e.g. Staff / Principal or equivalent)

7+ years of experience in designing, building, and maintaining large-scale frontend applications and the backend systems that support these with an emphasis on performance, scalability, and maintainability.

7+ years of providing technical leadership and mentorship, guiding teams to deliver high-quality software solutions, demonstrating a proactive bias for action in ensuring timely execution of projects and initiatives.

3+ years of experience constructing APIs for front-end applications OR proficiency consuming those APIs while leveraging associated client libraries like Apollo, TRPC, Relay, etc.

Preferred Qualifications:

Experience navigating how different concerns within the frontend engineering space overlap (e.g. accessibility, performance, UX consistency) and crafting execution strategies that successfully take these areas into consideration and lead to meaningful and impactful deliverables.

Deep expertise and knowledge of the inner workings of React and related technologies

Passionate and active in the evolution of current front-end architecture trends and best practices, encompassing performance, accessibility, security, and usability.

Extensive experience with TypeScript and other statically typed languages, Node.js, the Web platform, and UI architecture

Experience with large-scale codebases with contributors that span teams, offices and time zones

Prior experience with Ruby on Rails or other backend technologies.

Proficiency in using and customizing build tools and automation frameworks, such as Webpack.

Prior experience articulating complex technical concepts to both technical (engineers at all levels) and non-technical (stakeholders and executives) audiences

Education

Any Graduate