Overview

GitHub is changing the way the world builds software and we want you to help change the way we build GitHub. We’re looking for an experienced engineer to work with a dynamic and distributed group of engineers crafting and scaling our application.

The engineers on GitHub’s Ruby Architecture team are responsible for designing solutions and refinements to help with scale, cost, decomposition, security, and growth of the system. We also collaborate directly with other engineering teams to facilitate, build, and ship improvements. Our highest priority is that reliability is noticeably better through our work, advice, and support for the interfaces engineers use to integrate with GitHub.

The team is highly distributed. You should thrive in an environment of asynchronous communication. We expect you to have strong written and verbal communication skills and be able to build working relationships with coworkers in locations around the globe. As an engineer on the Ruby Architecture team, you’ll always be challenged to solve unique and interesting problems that have a real impact on how your co-workers and GitHub engineers build software.

Responsibilities:

  • Writing robust, maintainable backend Ruby code
  • Maintaining and improving the mono-repo by removing, rewriting, or replacing existing solutions
  • Write solutions that are simple, maintainable, and reusable thus improving the scalability and performance of the mono-repo
  • Cross team collaboration to explore technical trade-offs when designing new features
  • Reviewing code and leading group discussions about the various projects
  • Creatively coming up with systematic solutions to problems within the platform in favor of focusing on one-off fixes
  • Keeping the mono-repo upgraded to the newest version of Ruby and Rails
  • Staying up-to-date with upcoming changes to Ruby and Rails and preparing the mono-repo to be ready for new features and behavior changes
  • Contributing upstream to Rails, Ruby, and other libraries we depend on to reduce complexity, improve resiliency, and add features that directly support the mono-repo

Qualifications:

  • 5+ years building web applications at scale
  • Experience with Git and GitHub
  • Experience with Ruby and Rails
  • Ability to empathize with a diverse range of engineers
  • You are known for being a great communicator
  • You can evaluate the trade-offs for building highly available distributed systems

Who We Are:

GitHub is the developer company. Over 40 million people use GitHub to build amazing things together across 100 million repositories. We make it easier for developers to be developers: to work together, to solve challenging problems, to create the world’s most important technologies. We foster a collaborative community that can come togetherβ€”as individuals and in teamsβ€”to create the future of software and make a difference in the world.

Leadership Principles:

  • Customer Obsessed
  • Trust by Default
  • Ship to Learn
  • Own the Outcome
  • Growth Mindset
  • Global Product, Global Team
  • Anything is Possible
  • Practice Kindness

Why You Should Join:

At GitHub, we constantly strive to create an environment that allows our employees (Hubbers) to do the best work of their lives. We’ve designed one of the coolest workspaces in San Francisco (HQ), where over half of our Hubbers work, snack, and create daily. The other half of our Hubbers work remotely in 18 countries across the globe.

We are also committed to keeping Hubbers healthy, motivated, focused and creative. We’ve designed our top-notch benefits program with these goals in mind. In a nutshell, we’ve built a place where we truly love working, we think you will too.

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. Also, if you have a disability, please let us know if there’s any way we can make the interview process better for you; we’re happy to accommodate!

Please note that benefits vary by country, if you have any questions, please don’t hesitate to ask your Talent Partner.