At a Glance
- Tasks: Design and develop scalable software solutions for GitHub's Git Storage services.
- Company: Join GitHub, the leading AI-powered developer platform with a vibrant community.
- Benefits: Enjoy competitive pay, remote work flexibility, and growth opportunities.
- Other info: Be part of a diverse team that values innovation and collaboration.
- Why this job: Make an impact on the future of software development with cutting-edge technology.
- Qualifications: 6+ years in software engineering with experience in multiple programming languages.
The predicted salary is between 70000 - 90000 £ per year.
GitHub is seeking a Senior Software Engineer to join the Git Systems Engineering team (subteam: Git Storage). This role runs the services that store and serve Git repositories, both directly to users and to other layers in the GitHub software stack. We build the microservices, protocols, proxies, and control systems that power Git operations at GitHub and operate them at scale. This role involves wide-reaching, cross-team work to improve the git code-hosting platform and contributes to design, rollout, and support of highly performant, scalable, and highly available services to enable the next generation of AI-driven software development.
Responsibilities
- Design, develop, test, and ship high-quality solutions within the team’s service area with a focus on scalability, availability, and maintainability; build deep familiarity with the systems you own and apply best practices to keep code extensible and operable.
- Lead technical discussions for features in the team’s area; produce design docs/proposals as needed; validate approaches through targeted experiments and prototypes, incorporating stakeholder and customer feedback.
- Lead by example by writing clean, defensive, maintainable code and mentoring engineers within the immediate team on implementation details, debugging techniques, and product/service expertise.
- Provide technical leadership in code reviews to ensure changes meet GitHub and team quality standards (correctness, security, reliability, diagnosability, and maintainability) and that code is ready to merge and operate at the expected scale.
- Partner with engineering and product stakeholders to define requirements, identify dependencies, break work into deliverable milestones, and provide estimates and risk/impact tradeoffs to support prioritization and successful delivery.
- Participate in the on-call rotation for the team’s services; act as a first responder for your area of ownership; troubleshoot complex live-site issues using logs/telemetry; drive mitigations and safe deployments (including rollback plans); and write postmortems that result in measurable follow-up improvements.
- Model engineering excellence by improving developer workflows (tooling, automation, and repeatable quality checks), sharing learnings from investigations and incidents, and contributing to a collaborative team culture with strong ownership and inclusive communication.
Qualifications
Required Qualifications:
- 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.
Other Qualifications
Ability to meet GitHub, customer and/or government security screening requirements are required for this role. These requirements include, but are not limited to, the following specialized security screenings: Microsoft Cloud Background Check. This position will be required to pass the Microsoft Cloud Background Check upon hire/transfer and every two years thereafter.
Preferred Qualifications
- Experience with cloud platforms like Microsoft Azure and Amazon Web Services.
- Understanding of production system monitoring and observability.
- Ability to think critically about both system design and software engineering concepts and blend those perspectives pragmatically based on project needs.
- Demonstrated experience with large-scale system architecture and design, particularly in cloud-based environments, with a strong understanding of distributed systems and microservices.
- Experience working closely with product management, design, and other engineering teams to drive cross-functional projects and deliver high-quality product.
GitHub values
- Customer-obsessed
- Ship to learn
- Growth mindset
- Own the outcome
- Better together
- Diverse and inclusive
Manager fundamentals
- Model
- Coach
- Care
Leadership principles
- Create clarity
- Generate energy
- Deliver success
Who We Are
GitHub is the world’s leading AI-powered developer platform with 150 million developers and counting. We’re home to the biggest open-source community on earth. Our teams are dreamers, doers, and pioneers, leading the way in AI and open source. We’re remote-first and offer competitive pay, learning and growth opportunities, and benefits to support you wherever you are.
Equal Employment Opportunity
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. If you have a disability, please let us know how we can accommodate during the interview process.
Senior Software Engineer, Git Storage employer: GitHub
Contact Detail:
GitHub Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Senior Software Engineer, Git Storage
✨Tip Number 1
Network like a pro! Reach out to folks in your industry on LinkedIn or at meetups. A friendly chat can lead to opportunities that aren’t even advertised yet.
✨Tip Number 2
Show off your skills! Create a portfolio or GitHub repository showcasing your projects. This gives potential employers a taste of what you can do and how you think.
✨Tip Number 3
Prepare for those interviews! Research common questions for software engineering roles and practice your answers. Don’t forget to brush up on your coding skills too!
✨Tip Number 4
Apply through our website! It’s the best way to ensure your application gets seen. Plus, we love seeing candidates who are proactive about their job search.
We think you need these skills to ace Senior Software Engineer, Git Storage
Some tips for your application 🫡
Tailor Your Application: Make sure to customise your CV and cover letter for the Senior Software Engineer role. Highlight your experience with Git, microservices, and any relevant programming languages. We want to see how your skills align with what we do at GitHub!
Showcase Your Projects: Include links to your GitHub profile or any projects you've worked on that demonstrate your coding skills and problem-solving abilities. This is a great way for us to see your work in action and understand your approach to software engineering.
Be Clear and Concise: When writing your application, keep it straightforward and to the point. Use clear language to describe your experiences and achievements. We appreciate clarity and want to quickly grasp your qualifications without sifting through fluff.
Apply Through Our Website: Don’t forget to submit your application through our official website! It’s the best way for us to receive your details and ensures you’re considered for the role. Plus, it makes tracking your application easier for both you and us!
How to prepare for a job interview at GitHub
✨Know Your Tech Stack
Make sure you’re well-versed in the programming languages and technologies mentioned in the job description, like C, Java, or Python. Brush up on your knowledge of microservices and distributed systems, as these are crucial for the role.
✨Prepare for Technical Discussions
Expect to lead technical discussions during the interview. Prepare to discuss your past projects, focusing on design decisions, scalability, and maintainability. Be ready to share how you’ve tackled complex problems and what you learned from those experiences.
✨Showcase Your Leadership Skills
Since this role involves mentoring and providing technical leadership, think of examples where you’ve led a team or project. Highlight your ability to write clean code and conduct effective code reviews, as these will be key aspects of your responsibilities.
✨Understand GitHub's Values
Familiarise yourself with GitHub’s core values like being customer-obsessed and embracing diversity. Be prepared to discuss how you align with these values and how they influence your work ethic and team collaboration.