Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Unsucking Your Team's Development Environment

Zach Holman
September 14, 2012

Unsucking Your Team's Development Environment

Success can bring many glamorous changes to your company: hiring more employees, getting free coffee, and giving everyone a private jet filled with cash and endangered African predatory cats.

Success can lead to less-glamorous problems, though. As you grow, your team's development environment becomes really important. How long does it take to clone, set up, and boot your apps? Can your employees still be productive on an aging codebase? How can you automate CI, hooks, and other setup for new projects? Is any of this fun anymore?

GitHub ran into these problems as we expanded our team tremendously over the last two years. Let's look at some of the ways we've improved our employees' development environments.

Zach Holman

September 14, 2012
Tweet

More Decks by Zach Holman

Other Decks in Programming

Transcript

  1. I S Y O U R F O U N

    D A T I O N THE APP
  2. NO?

  3. HUBOT DEPLOY X TO Y DEPLOY GITHUB TO PRODUCTION DEPLOY

    GITHUB TO PRODUCTION/FE DEPLOY SMOKE TO FS12,FE1
  4. HUBOT DEPLOY X TO Y DEPLOY GITHUB TO PRODUCTION DEPLOY

    GITHUB TO PRODUCTION/FE DEPLOY SMOKE/HOTFIX TO FS12,FE1
  5. HEAVEN DEPLOY LOCKING 1. YOU PUSH A BRANCH 2. CI

    STARTS A BUILD 3. BUILD PASSES 4. YOU DEPLOY BRANCH 5. HEAVEN PREVENTS DEPLOY CONFLICTS 6.YOU MERGE BRANCH 7. HEAVEN UNLOCKS DEPLOYS
  6. T H E C O M P A N Y

    THE APP THE STACK THE DEPLOY
  7. JUST BEING AN EMPLOYEE ADDS A LOT OF OVERHEAD LOGINS

    SITES TERMS REPORTS PAYROLL NAMES COMMUNICATION
  8. USE COMPUTERS TO BUILD THINGS THAT CAN HELP YOUR ORGANIZATION

    SCALE TO THE EXTENT THAT NEW HIRES ACCLIMATE WITHOUT A LOT OF STRESS