performance hackathons: trulia’s obsession with speed and scale
DESCRIPTION
As presented at FutureStack 2014 Thursday October 9, 2014 Fort Mason Center, San Francisco, CA "Dev Ops” is not just a trendy job title — it’s a philosophy whose tenets are integral to creating realistic expectations for application developers. Learn how Trulia uses New Relic as a tool in performance hackathons, where developers and ops engineers join forces to identify performance bottlenecks in its products. By identifying system optimizations, coding inefficiencies, and more, these hackathons benefit Trulia’s customers as well as its performance KPIs; most importantly, they have helped Trulia’s engineering team blur the line between operations and development.TRANSCRIPT
z
Performance HackathonsTrulia’s obsession with speed and scale
z
Hi
z
We’re Chris & LouisWe work together.
z
We’re from TruliaIt’s a nice place to work.
z
Pardon the interruption
z
© Naotake Murayama, CC BY 2.0https://www.flickr.com/photos/naotakem/8065291641/
z
Moving right along
z
Maintaining a start-up vibe as we scale2007
• 17 Engineers• 1 building
2014• Over 200 Engineers• 5 floors, 3 buildings, 2 cities
z
R. WestrumSociologist, Professor… and Ufologist
z
Westrum’s Three Cultures ModelPathological (power-oriented)
Pattern of ResponseLow CooperationMessengers Shot
Failure Leads to Scapegoating
z
Westrum’s Three Cultures ModelBureaucratic (rule-oriented)
Pattern of ResponseModest Cooperation
Messengers NeglectedFailure Leads to Justice
z
Westrum’s Three Cultures ModelGenerative (performance-oriented)
Pattern of ResponseHigh Cooperation
Messengers TrainedFailure Leads to Inquiry
z
What’s worked for us• Weekly release meetings• Regular tech learning sessions• Lunch roulettes, group outings, regular and
impromptu HH
z
What’s worked for us• Innovation weeks & providing a safe environment
for risk• Post-mortems are productive• Show data everywhere• Regular performance and scalability hackathons
z
Wait…Isn’t this the New Relic track?
z
Dev/OpsA most ingenious paradox
z
© Matt Neale, CC BY 2.0https://www.flickr.com/photos/mattneale/4686273802/
z
fa·cil·i·ta·tor noun \fə-ˈsi-lə-ˌtā-tər\one that helps to bring about an outcome (as learning, productivity, or communication) by providing indirect or unobtrusive assistance, guidance, or supervision
— Merriam-Webster
z
Enter the hackathon
z
InceptionSite performance is a top-line KPI at Trulia.
z
InceptionWe have performance monitors everywhere, and all devs have access to New Relic, but…
z
InceptionAs developers, we sometimes have trouble balancing tech initiatives and product work. Let’s block off a couple of hours each week to address this.
z
Iterate.… and then do it again.
z
Take one• This is great• We need Ops here
z
Take twoInstead of a small group, let’s invite everyone!At the same time, make it clear that…• Attendance is optional, and• Participation is mandatory
z
What we found
z
Example 1: Legacy code
z
Example 2: Server oddities
xfs on a web server.
… really?
z
You can do it!How to build your own
z
… but, before we get started.Let’s take a moment to acknowledge our privilege.
z
Step 1: Get insight into your apps.We like New Relic.
z
Step 2: Set aside some timeWe started with 2 hours a week, and that feels right.
z
Step 3: Find an area of the app to work onE.g., key transactions
z
Step 4: Make it better!• Research• Hack• Create some PRs• File follow-ups
z
Step 5: IterateIt’s more important to be making changes than it is to have every change be a huge success.
(Success helps, though.)
z
Thanks
z
Q&A