• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Hard & Soft Skills to Avoid Outages by Pascal-Louis Perez
 

Hard & Soft Skills to Avoid Outages by Pascal-Louis Perez

on

  • 588 views

In just a few years, Square has achieved ubiquitous recognition for mobile card processing grossing over $15B a year in credit card transactions. At the heart of Square's technology are many financial ...

In just a few years, Square has achieved ubiquitous recognition for mobile card processing grossing over $15B a year in credit card transactions. At the heart of Square's technology are many financial systems which must operate safely, correctly, and sustain rapid growth.

This presentation will cover non-controversial topics such ad TDD, but from new angles. It'll also cover emerging practices like continuous deployment, and softer areas such as engineering management practices geared towards safety. You'll come out of this session with a fresh perspective on how to build software.

Statistics

Views

Total Views
588
Views on SlideShare
234
Embed Views
354

Actions

Likes
0
Downloads
8
Comments
0

6 Embeds 354

http://www.hakkalabs.co 344
http://www.feedspot.com 5
http://www.slideee.com 2
http://g33ktalk.com 1
http://localhost 1
http://www.hakkalabs.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Hard & Soft Skills to Avoid Outages by Pascal-Louis Perez Hard & Soft Skills to Avoid Outages by Pascal-Louis Perez Presentation Transcript

    • Hard & Soft Skills to Avoid Outages @pascallouis from @SquareNY
    • Code Bless Ship Maintain Profit! git rm
    • Code Bless Ship Maintain Profit! git rm
    • Tactics • Fighting mixing ids • Entity bound ids (e.g. Id<T>) • Textual ids MWDN-YP89-OLVL-USER • Testable configurations • etc. Code Bless Ship Maintain Profit! git rm
    • TDD • Not controversial (anymore) • Living code documentation • Enables collaboration • Technique to encode invariants Code Bless Ship Maintain Profit! git rm
    • Gold Tests • Tests which can be changed by a (small) subset of engineering • Enforced via policy or technology Code Bless Ship Maintain Profit! git rm
    • Expressive Tests • “Change your language and you change your thoughts” — Karl Albrecht • Can be implementation agnostic Code Bless Ship Maintain Profit! git rm
    • ... Given feed PaymentEventFeedListener receives: """ { "payment_id": "EPT-300", "isTivoReplay": false, "merchant": { "token": "m-1" }, ... } """ Then expect table balance_changing_events order by id: | event_type | status | process_attempts | | HOLD | UNPROCESSED | 1 | | CAPTURE | UNPROCESSED | 0 | When then the time is 2012-01-06 17:10:00 And balance changing event queue processes items Then expect table balance_changing_events order by id: | event_type | status | process_attempts | | HOLD | UNPROCESSED | 2 | | CAPTURE | PROCESSED | 1 | Code Bless Ship Maintain Profit! git rm
    • Automated Oups! Manual Quality or or Time Code Bless Ship Maintain Profit! git rm
    • Code Analysis • In theory: static vs dynamic • In practice: pre vs post-production Code Bless Ship Maintain Profit! git rm
    • Pre Analysis • Type Checking • Testing, CI • Linters • Forbidden Call Analysis Code Bless Ship Maintain Profit! git rm
    • Post Analysis • Logging • Metrics • Invariant Checking Code Bless Ship Maintain Profit! git rm
    • Speaking of Alerts: Metrics vs Checks OK ? WARNING 1 0 200ms 0ms Code Bless Ship Maintain Profit! git rm
    • Alerting & Reporting Sign Precise Imprecise Immediate Alert Oups! Deferred Report Report Res pon se Code Bless al Ship Maintain Profit! git rm
    • Fix It Weeks • Time set aside, monthly or quarterly • No top-down mandate except “fix it” Code Bless Ship Maintain Profit! git rm
    • Code Bless Ship Maintain Profit! git rm
    • Post-Mortem • When Anytime there are issues! • Why Learn and avoid mistakes of the past • How Blameless Code Bless Ship Maintain Profit! git rm
    • Post-Mortem • Go through the timeline • The Good, The Bad and the Ugly • Action Items Code Bless Ship Maintain Profit! git rm
    • Root Cause Analysis Code Bless Ship Maintain Profit! git rm
    • Code Bless Ship Maintain Profit! git rm
    • Proportional Investing • When you lose N hours to maintenance, you spend an equivalent N hours on improving things. Code Bless Ship Maintain Profit! git rm
    • Safety drives productivity; and unleashes creativity. Technology, sure. But, it’s mostly about culture and people. Many layers of defense, lots of ways to do it — find what’s right for your team.