Job Description

Title: Software Engineer, Actions

Location: Remote – United States

Do you want to make software development a delight for the entire world? Join us at GitHub! We are delivering the best end-to-end software development experiences across the globe.

We’re looking for a world-class software engineer to join GitHub’s Compute Products organization. In this organization, we build solutions that enable engineers to easily package and deploy their software alongside their code. Compute Products is responsible for the entire stack of features and technologies that power GitHub Actions, GitHub Packages, GitHub Pages, and GitHub Codespaces. These services enable our millions of customers to follow industry best practices and deploy and maintain their products easily, increasing the impact of software solutions at a global scale.

Compute Products is growing and is hiring for a platform role across these services, so please reference the qualifications below to determine if this role would be a good fit for you. In this role, you will have the opportunity to work as an engineer with a distributed, diverse and passionate team delivering features and improvements to the stack. You’ll work with our team of engineers and product managers to build and maintain critical parts of our platforms that enable developers to build and deploy high-quality services running at a global scale.

As a Platform team, we are passionate about enabling engineering teams to do their best work. Our work spans multiple areas, including software development, scripting, infrastructure, reliability, and scalability. We are looking for someone who’s interested in building the platform that Github engineers write services on top of.

We work as a distributed group within a distributed company. Most of our team members live in Europe and across the US and Canada, and while we have some offices, all our meetings are location-agnostic and happen online. We operate with a high degree of autonomy and trust. We value learning, communication and reflection. We’re always looking for ways to improve as a team and individuals. Candor and a culture that values safety to speak up are highly important to us.

A day in the life of a Platform Engineer on the team:

Our teams are fully remote and distributed across the world, which means that we greatly value asynchronous collaboration and documentation. Your typical week would include the following:

  • Collaborating with product managers and engineers to understand the problems we want to solve, exploring how we can solve them, and what our users have said about the problems and solutions so far.
  • Managing and provisioning resources using Infrastructure as Code.
  • Building, deploying and supporting tools that improve Github’s developer experience.
  • Automating software deployments following a continuous delivery and deployment model.
  • Discussing and collaboratively solving engineering and product problems with other engineers in GitHub Issues and PRs, Slack, or Zoom.
  • Opening a Pull Request to implement the next most important feature or task, or fix the most critical bug and resolving suggestions in your code reviews.
  • Identifying and prioritizing the highest-value work, contributing to both engineering improvements and developer joy.
  • Responding to issues and review requests from other teams at GitHub and modeling/teaching best practices around this to peers.
  • Working with your engineering manager in your one-on-one meetings to grow your team and career.
  • Rotating responsibilities for on-call and improving the on-call process.

Qualifications:

  • 2+ years of professional experience in software development
  • 1+ years of experience designing, building, and running services in the cloud
  • 1+ years working with containers in production

Preferred Qualifications:

  • Experience building developer tooling, including working directly with developer customers to design and create optimal user experiences
  • Excellent analytical skills as well as communication skills, both verbal and written
  • Strong software development skills gained with different programming languages and patterns
  • Experience working with orchestration systems like Kubernetes
  • Basic knowledge of databases, networking, caching, queuing, load-balancing, storage, and distributed services layers
  • Familiarity with Git
  • Experience automating standard processes
  • Ability to learn and think critically about both system design and software engineering concepts and blend those perspectives pragmatically based on project needs
  • Experience building, operating and maintaining resilient, scalable distributed services
  • Knowledge of testing, profiling, and debugging practices
  • Passionate about healthy team culture and collaboration to meet shared objectives

Minimum salary of $75,000 to maximum $198,900.

APPLY HERE