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.
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
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.
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
Any Graduate