Senior Software Engineer

GitHub, Inc.
5dRemote

About The Position

GitHub is the world’s leading platform for agentic software development — powered by Copilot to build, scale, and deliver secure software. Over 180 million developers, including more than 90% of the Fortune 100 companies, use GitHub to collaborate, and more than 77,000 organisations have adopted GitHub Copilot. The GitHub iOS team is changing the way that developers across the world collaborate on GitHub. Launched in March 2020, GitHub iOS is one of our fastest growing products with over 3.5 million downloads across both apps and a 4.8-star rating on the App Store. The team is looking for someone who is passionate about the iOS platform and who will help us build a world-class app in design, performance, and accessibility. Come join the team and influence the future of GitHub for mobile! Stack: The iOS app is built with Swift and UIKit. Our networking primarily uses Apollo to communicate with GitHub GraphQL APIs. As a Senior Software Engineer on the iOS team at GitHub, you will enhance the developer experience by working closely with a community of engineers and designers on a distributed, diverse and passionate team delivering the services that millions of developers depend on. In this role you will design, prototype, implement, ship and support highly performant user facing features with your team. The iOS team is a subteam of the broader GitHub Client Apps Team within the Core Productivity engineering organization. Our core strategy is to invest in making the iOS app a reliable, fast and flexible solution that scales with the growth of our user base. We are a product team, which means our customers are the millions of developers who use the GitHub iOS app daily. We measure our success by service level objectives and customer feedback on reliability and performance. We are looking for creative problem solvers and diverse thinkers, people who care about culture as well as customers and features. We believe that how we do things is as important as what we do. Big vision, a common purpose, passion for quality, curiosity, dedication, and investment in fun and collaboration are what lead to great results. Great products reflect the teams that build them.

Requirements

  • 6+ years experience in Software Engineering, Computer Science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python
  • ​​OR Associate’s Degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 5+ years experience in Software Engineering, Computer Science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python
  • OR Bachelor's Degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 4+ years experience in Software Engineering, Computer Science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python
  • OR Master's Degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 2+ years experience in Software Engineering, Computer Science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, Go, Ruby, Rust, or Python.
  • OR Doctorate in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field.
  • OR equivalent experience.
  • 4+ years of demonstrated proficiency in iOS app development, building and maintaining large-scale, highly scalable iOS applications in Swift, and experience developing modern iOS features using UIKit and/or SwiftUI?
  • A deep understanding of mobile design patterns, including consistency, reliability, and performance at scale
  • Experience with participating in on-call rotations and Apple App Store deployments, including triaging production issues, conducting root cause analysis, and contributing to postmortems

Nice To Haves

  • Experience in one or more scripting languages (e.g., Bash, Python, or a similar language) to streamline CI/CD pipelines and local development workflows
  • Deep expertise with Apple’s Human Interface Guidelines and iOS best practices
  • Experience supporting iOS accessibility frameworks and design patterns
  • Experience with Apollo GraphQL, including designing API models and implementing resolvers
  • Experience with federated GraphQL architectures and API design strategies
  • Familiarity with service health indicators (SLOs, SLIs), observability tooling, and data-driven decision making for prioritizing reliability improvements
  • Experience driving efforts to reduce incident volume and improve system resilience through proactive monitoring and alerting

Responsibilities

  • Pick up work autonomously and code solutions, working to unblock yourself when stuck either by reaching out for help or finding other solutions in an asynchronous, remote, distributed culture
  • Write clear documentation, tests, and recommendations for technical problems
  • Collaboratively define, scope, prioritize, and estimate work
  • Drive helpful conversations around technical issues and engineering practices, suggesting improvements and ideas as you see fit
  • Review code and provide thoughtful, constructive feedback during code reviews
  • Triage, reproduce, and debug issues reported for our area of responsibility
  • Give and receive feedback to grow yourself and the team
  • Provide compassionate technical mentorship, pairing opportunities, and code reviews to encourage the growth of others
  • Deliver complex code/features with quality and supportability
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service