<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/https/speakerdeck.com/feed.atom.xml" media="screen"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <id>tag:speakerdeck.com,2005:/caitiem20</id>
  <link rel="alternate" type="text/html" href="https://speakerdeck.com"/>
  <link rel="self" type="application/atom+xml" href="https://speakerdeck.com/caitiem20.atom"/>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/392109</id>
    <published>2017-05-19T04:37:32-04:00</published>
    <updated>2017-05-19T16:44:50-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/distributed-sagas-a-protocol-for-coordinating-microservices"/>
    <title>Distributed Sagas: A Protocol for Coordinating Microservices</title>
    <content type="html">Microservices have become the defacto architecture pattern for building services. However separating business logic into small services that operate with a single logical data set has introduced consistency challenges. Previous attempts to solve this problem like two phase commit have not been widely adopted due to availability and liveness issues.

Instead developers implement feral concurrency control mechanism. This technique can be error prone, and often results in “Death Star” architectures which rely on chained calls to enforce application invariants. These architectures become more complicated over time, and are difficult to modify and extend, and often don't correctly handle all failure scenarios.

In this talk I propose a new solution for this problem, Distributed Sagas, a protocol for coordinating requests among multiple micro services, while ensuring application invariants.</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/a802a00d36cb4904b800af03839a9f8e/preview_slide_0.jpg?7998089" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/614619</id>
    <published>2020-03-19T18:33:18-04:00</published>
    <updated>2020-03-19T19:12:20-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/the-path-towards-simplifying-consistency-in-distributed-systems"/>
    <title>The Path Towards Simplifying Consistency in Distributed Systems</title>
    <content type="html"></content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/4bf7b0d992e343458bb1cc1848cafcd4/preview_slide_0.jpg?15165898" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/376377</id>
    <published>2017-01-20T02:18:57-05:00</published>
    <updated>2017-11-03T01:16:50-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/argus-papers-we-love"/>
    <title>Argus Papers We Love </title>
    <content type="html"></content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/42db19ab22a0444ba1ce671d39e51516/preview_slide_0.jpg?7450637" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/371904</id>
    <published>2016-12-07T20:05:34-05:00</published>
    <updated>2016-12-07T20:16:31-05:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/the-verification-of-a-distributed-system-3"/>
    <title>The Verification of a Distributed System</title>
    <content type="html">Given at YOW Sydney December 2016
References: https://github.com/CaitieM20/Talks/tree/master/TheVerificationOfADistributedSystem</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/e170598d2195407eb0a39c67e5d81bbf/preview_slide_0.jpg?7328437" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/371753</id>
    <published>2016-12-07T02:58:51-05:00</published>
    <updated>2016-12-07T03:18:19-05:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/we-hear-you-like-papers-eventual-consistency"/>
    <title>We Hear You Like Papers: Eventual Consistency</title>
    <content type="html">Given at Women Who Code Sydney IT meetup

Resources: https://github.com/CaitieM20/Talks/tree/master/SoWeHearYouLikePapers</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/e6259dcac25949b494daddd7fc1368d3/preview_slide_0.jpg?7323806" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/371368</id>
    <published>2016-12-05T00:54:00-05:00</published>
    <updated>2016-12-05T01:10:59-05:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/the-verification-of-a-distributed-system-2"/>
    <title>The Verification of a Distributed System</title>
    <content type="html">YOW Brisbane
References &amp; Credits: https://github.com/CaitieM20/Talks/tree/master/TheVerificationOfADistributedSystem</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/fefcafa741de457d9e45cecac36a86ee/preview_slide_0.jpg?7309841" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/370801</id>
    <published>2016-11-30T07:03:48-05:00</published>
    <updated>2016-12-05T00:40:24-05:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/the-verification-of-a-distributed-system-1"/>
    <title>The Verification of a Distributed System</title>
    <content type="html">YOW 2016: Melbourne
References: https://github.com/CaitieM20/Talks/tree/master/TheVerificationOfADistributedSystem</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/be834b9186034343b41ed334c1d92a8e/preview_slide_0.jpg?7286212" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/366536</id>
    <published>2016-11-03T09:38:51-04:00</published>
    <updated>2016-11-03T09:40:38-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/a-brief-history-of-distributed-programming-rpc"/>
    <title>A Brief History of Distributed Programming: RPC</title>
    <content type="html">Given at CodeMesh 2016</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/0081de32b7ee4f5cbbde09818a2118f9/preview_slide_0.jpg?7113305" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/355438</id>
    <published>2016-08-11T23:37:00-04:00</published>
    <updated>2016-08-11T23:41:22-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/building-scalable-stateful-services-1"/>
    <title>Building Scalable Stateful Services</title>
    <content type="html">Slides from Scaling Stateful Services Talk given at Nike Tech Talk 8/11/16</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/83f473374c0c430bbd2182a4c2368a6c/preview_slide_0.jpg?6691930" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/349108</id>
    <published>2016-06-28T01:27:56-04:00</published>
    <updated>2016-06-28T02:11:29-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/papers-we-love-pdx"/>
    <title>Papers we Love PDX </title>
    <content type="html">Detection of Mutual Inconsistency in Distributed Systems</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/946567f249934e35b4a682a9bb415e39/preview_slide_0.jpg?6509241" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/348867</id>
    <published>2016-06-26T19:49:50-04:00</published>
    <updated>2016-06-26T19:59:49-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/tackling-alert-fatigue"/>
    <title>Tackling Alert Fatigue</title>
    <content type="html"></content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/ebafe2b939b94808b3cda15a61b7c109/preview_slide_0.jpg?6502971" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/346778</id>
    <published>2016-06-14T19:52:01-04:00</published>
    <updated>2016-06-14T19:53:03-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/pwl-ny-simple-testing-can-prevent-most-critical-failures"/>
    <title>PWL NY: Simple Testing Can Prevent Most Critical Failures</title>
    <content type="html"></content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/7ca58fb6bf9145cbba0d595d95781427/preview_slide_0.jpg?6444448" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/346753</id>
    <published>2016-06-14T13:13:44-04:00</published>
    <updated>2016-06-14T13:18:43-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/qcon-newyork-2016-the-verification-of-a-distributed-system"/>
    <title>QCon NewYork 2016: The Verification of a Distributed System</title>
    <content type="html">Distributed Systems are difficult to build and test for two main reasons: partial failure &amp; asynchrony. These two realities of distributed systems must be addressed to create a correct system, and often times the resulting systems have a high degree of complexity. Because of this complexity, testing and verifying these systems is critically important. In this talk we will discuss strategies for proving a system is correct, like formal methods, and less strenuous methods of testing which can help increase our confidence that our systems are doing the right thing.</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/2049d941a64348b1a90fabda3c848ed9/preview_slide_0.jpg?6443061" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/343336</id>
    <published>2016-05-24T10:13:59-04:00</published>
    <updated>2016-05-24T10:20:30-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/the-verification-of-a-distributed-system"/>
    <title>The Verification of a Distributed System</title>
    <content type="html">Goto Chicago 2016
References: https://github.com/CaitieM20/TheVerificationOfDistributedSystem</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/1953990257fd414eb8a14adb10abef16/preview_slide_0.jpg?6345125" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/339322</id>
    <published>2016-04-28T16:54:19-04:00</published>
    <updated>2016-04-28T17:06:30-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/craftconf-2016-building-scalable-stateful-services"/>
    <title>CraftConf 2016 - Building Scalable Stateful Services </title>
    <content type="html">The Stateless Service design principle has become ubiquitous in the tech industry for creating horizontally scalable services. However our applications do have state, we just have moved all of it to caches and databases. Today as applications are becoming more data intensive and request latencies are expected to be incredibly low, we’d like the benefits of stateful services, like data locality and sticky consistency. In this talk I will address the benefits of stateful services, how to build them so that they scale, and discuss distributed and scalable services in the real world that implement these techniques successfully.</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/41c12054c7c844be85e1a8cf3a1ca583/preview_slide_0.jpg?6211307" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/333258</id>
    <published>2016-03-18T15:10:01-04:00</published>
    <updated>2016-03-18T15:11:39-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/papers-we-love-sf-sagas"/>
    <title>Papers We Love SF - Sagas</title>
    <content type="html">A talk about Sagas https://www.cs.cornell.edu/andru/cs711/2002fa/reading/sagas.pdf

And the application of them in Distributed Systems</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/8134580d7671432ca0d147ceb2c4f761/preview_slide_0.jpg?6011908" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/324224</id>
    <published>2015-12-26T16:47:08-05:00</published>
    <updated>2015-12-26T16:48:15-05:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/of-the-order-of-billions-building-observability-at-twitter"/>
    <title>Of the Order of Billions: Building Observability at Twitter</title>
    <content type="html">Every minute Twitter’s Observability stack processes 1.5+ billion metrics in order to provide Visibility into Twitter’s distributed microservices architecture. In this talk will focus on some of the challenges associated with building and running this large scale distributed system. We will also focus on lessons learned and how to build services that scale that are applicable for services of any size.</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/87eb9573bc974be9902e0fc8d3731fa0/preview_slide_0.jpg?5739733" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <entry>
    <id>tag:speakerdeck.com,2005:Talk/313186</id>
    <published>2015-09-27T14:04:10-04:00</published>
    <updated>2015-09-27T14:28:38-04:00</updated>
    <link rel="alternate" type="text/html" href="https://speakerdeck.com/caitiem20/building-scalable-stateful-services"/>
    <title>Building Scalable Stateful Services</title>
    <content type="html">The Stateless Service design principle has become ubiquitous in the tech industry for creating horizontally scalable services. However our applications do have state, we just have moved all of it to caches and databases. Today as applications are becoming more data intensive and request latencies are expected to be incredibly low, we’d like the benefits of stateful services, like data locality and sticky consistency. In this talk I will address the benefits of stateful services, how to build them so that they scale, and discuss projects from Halo and Twitter of highly distributed and scalable services that implement these techniques successfully.</content>
<media:thumbnail url="https://files.speakerdeck.com/presentations/d5e3931d5c144146950e2c92c659e258/preview_slide_0.jpg?5310601" width='' height='' xmlns:media='http://search.yahoo.com/mrss/'></media:thumbnail>    <author>
      <name>Caitie McCaffrey (@caitiem20)</name>
    </author>
  </entry>
  <title>Caitie McCaffrey (@caitiem20) on Speaker Deck</title>
  <updated>2017-05-19T04:37:32-04:00</updated>
</feed>
