$BUSINESS_NAME Dev & Ops

It’s not all about tools

Created by Laurence J MacGuire a.k.a Liu Jian Ming

ThoughtWorks Xi’An, 2015/06/02

Creative Commons License

Redacted Business Name

  • 90 People
  • 45 Developers
  • 6 Ops
  • 50% XiAn / 50% another city

What we do

  • Large audience website/applications
  • A lot of advertising and user capture
  • “Fringe” applications

Challenges

  • Dozens of applications
  • Too many tools & services
  • Shorter projects/Teams disband
  • Ops inexperienced Devs
  • Devs inexperienced Ops
  • Ops vs Devs war

Solutions

  • Team Managed Infrastructure
  • Delivery Engineering

Team Managed Infrastructure

  • Self-sufficient teams
  • Teams setup their own hardware
  • Day-time Ops support by the team

Embedded Ops

  • One team/project Ops resources
  • From day 0, and every day
  • Teach operations and paranoia
  • Get stuff done
  • Off-hours Ops support

Centralised Services

TMI is nice, but don’t duplicate.

  • Build systems
  • Logging
  • Authentication
  • Infrastructure building blocks

Delivery Engineering

Share. Improve. Distribute.

  • Assemble feedback from teams
  • Extract common patterns/Generalise tools
  • General Ops leadership
  • Upkeep

Yes!

We’re agile

Technology

Bash

Yes. “Bourne Again Shell”

AWS

Big time. Everything.

90% in AWS. 100% next year.

  • EC2 & VPC
  • IAM & Federated Identity
  • ElasticCache
  • SQS/SNS/SES/Kinesis/RDS

Cloudformation

If we can’t CFN it. We probably won’t use it.

Ansible

  • Simple. Simple. Simple!
  • One requirement: Python

ELK Stack

  • Open Source
  • Execute Ruby on every event
  • Beautiful & easy graphs

Others

  • NewRelic
  • PagerDuty
  • Bamboo
  • Packer
  • Docker

What are we working on now?

  • Proper cron jobs in the cloud
  • Security as a service
  • Event correlation
  • Docker (more)
  • Further reducing shared infrastructure

Questions?