<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Pierre Vincent</title>
    <link>https://blog.pvincent.io/</link>
    <description>Recent content on Pierre Vincent</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Thu, 09 Jun 2022 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.pvincent.io/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>On-call only works when responders are happy</title>
      <link>https://blog.pvincent.io/2022/06/on-call-only-works-when-responders-are-happy/</link>
      <pubDate>Thu, 09 Jun 2022 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2022/06/on-call-only-works-when-responders-are-happy/</guid>
      <description>&lt;p&gt;Incidents can happen despite our best efforts. It&amp;rsquo;s the nature of the software systems we build today, relying on complex distributed systems with emergent behaviours. Incidents don’t care about the concept of working hours and without the luxury of a &lt;em&gt;follow-the-sun&lt;/em&gt; response team, it means sometimes, somebody needs to respond out-of-hours.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Bubbling up customer-specific experience with high-cardinality observability</title>
      <link>https://blog.pvincent.io/2021/06/bubbling-up-customer-specific-experience-with-high-cardinality-observability/</link>
      <pubDate>Wed, 16 Jun 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2021/06/bubbling-up-customer-specific-experience-with-high-cardinality-observability/</guid>
      <description>&lt;p&gt;When averages look fine, how can we discover that one customer who&amp;rsquo;s having a bad experience?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Hack The Box write-up: Cache</title>
      <link>https://blog.pvincent.io/2020/10/hack-the-box-write-up-cache/</link>
      <pubDate>Sat, 10 Oct 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2020/10/hack-the-box-write-up-cache/</guid>
      <description>&lt;p&gt;Since completing OSCP in November 2019, I have been refining my penetration testing skills on &lt;a href=&#34;https://www.hackthebox.eu/&#34;&gt;Hack The Box&lt;/a&gt;, a Penetration Testing lab. Every target is usually a rollercoaster of both frustration and excitement, definitely pushing the &lt;em&gt;Try harder&lt;/em&gt; philosophy. Here is a step-by-step guide to root one of the recently retired machines: Cache.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Contributions on other publications</title>
      <link>https://blog.pvincent.io/page/contributions/</link>
      <pubDate>Sat, 07 Dec 2019 00:00:00 +0100</pubDate>
      
      <guid>https://blog.pvincent.io/page/contributions/</guid>
      <description>2020 How to get big results with a small SRE team (TechBeacon) How trunk-based delivery is key to faster, more reliable software (TechBeacon) 2019 Integration tests don&amp;rsquo;t cut it for microservices. Here&amp;rsquo;s what does. (TechBeacon) How to move a large monolithic app to continuous delivery with zero downtime (TechBeacon) 2018 Software superstars lined up for this year&amp;rsquo;s RebelCon (Poppulo Tech Blog) Reaching production is only the beginning (Poppulo Tech Blog) 2016 Pact tests: what about state data?</description>
    </item>
    
    <item>
      <title>Training &amp; speaking at events</title>
      <link>https://blog.pvincent.io/page/speaking/</link>
      <pubDate>Sat, 04 May 2019 15:07:01 +0100</pubDate>
      
      <guid>https://blog.pvincent.io/page/speaking/</guid>
      <description>If the content on this blog or my talks have resonated with you, that&amp;rsquo;s the best thing I can hope for! If you&amp;rsquo;re interested in getting me to run a workshop/talk at your conference (or internally to your team), please do get in touch with me on speaking@pvincent.io.
Below are some example of workshops and talks that I&amp;rsquo;m currently running.
Workshops Cloud native monitoring with Prometheus &amp;amp; Grafana When it comes to monitoring tools in the Cloud Native space, Prometheus is definitely hard to miss.</description>
    </item>
    
    <item>
      <title>Prometheus workshops follow-up: frequently asked questions</title>
      <link>https://blog.pvincent.io/2019/05/prometheus-workshops-follow-up-frequently-asked-questions/</link>
      <pubDate>Thu, 02 May 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2019/05/prometheus-workshops-follow-up-frequently-asked-questions/</guid>
      <description>&lt;p&gt;When I run workshops on practical monitoring with Prometheus, the same kind of questions usually get asked. Here are a few of them, with my answers and with pointers to other resources (articles, talks) to learn more.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Patterns for zero-downtime deployments of large applications</title>
      <link>https://blog.pvincent.io/2018/12/patterns-for-zero-downtime-deployments-of-large-applications/</link>
      <pubDate>Mon, 10 Dec 2018 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2018/12/patterns-for-zero-downtime-deployments-of-large-applications/</guid>
      <description>&lt;p&gt;For anybody starting a product today, the idea of deployments requiring downtime is ludicrous. The truth is, a lot of today&amp;rsquo;s products started their development more than a decade ago, with architectures reflecting a different set of practices and assumptions.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Prometheus Blog Series (Part 5): Alerting rules</title>
      <link>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-5-alerting-rules/</link>
      <pubDate>Sun, 31 Dec 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-5-alerting-rules/</guid>
      <description>&lt;p&gt;Instrumented applications bring in a wealth of information on how they behave. In the previous parts of this &lt;a href=&#34;https://blog.pvincent.io/2017/12/prometheus-blog-series-part-1-metrics-and-labels/&#34;&gt;blog series&lt;/a&gt;, the focus has been mostly on getting applications to expose their metrics and on how to query Prometheus to make sense of these metrics. This exploratory approach is extremely valuable to uncover &lt;em&gt;unknown unknowns&lt;/em&gt;, either pro-actively (testing) or reactively (debugging).&lt;/p&gt;
&lt;p&gt;Metrics can also be used to help with things we already know and care about: instrumenting those things and knowing what is their &lt;em&gt;normal&lt;/em&gt; state, then it’s possible to alert on situations that are judged problematic. Prometheus makes this possible through the definition of alerting rules.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Prometheus Blog Series (Part 4): Instrumenting code in Go and Java</title>
      <link>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-4-instrumenting-code-in-go-and-java/</link>
      <pubDate>Thu, 28 Dec 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-4-instrumenting-code-in-go-and-java/</guid>
      <description>&lt;p&gt;So far in this &lt;a href=&#34;https://prometheus.io/&#34;&gt;Prometheus&lt;/a&gt; blog series, we have looked into Prometheus metrics and labels (see &lt;a href=&#34;https://blog.pvincent.io/2017/12/prometheus-blog-series-part-1-metrics-and-labels/&#34;&gt;Part 1&lt;/a&gt; &amp;amp; &lt;a href=&#34;https://blog.pvincent.io/2017/12/prometheus-blog-series-part-2-metric-types/&#34;&gt;2&lt;/a&gt;), as well as how Prometheus integrates in a distributed architecture (see &lt;a href=&#34;https://blog.pvincent.io/2017/12/prometheus-blog-series-part-3-exposing-and-collecting-metrics/&#34;&gt;Part 3&lt;/a&gt;). In this 4th part, it is time to look at code to create custom instrumentation. Luckily, client libraries make this pretty easy, which is one of the reasons behind Prometheus&#39; wide adoption.&lt;/p&gt;
&lt;p&gt;This post will go through examples in Go and Java. Prometheus has a number of other &lt;a href=&#34;https://prometheus.io/docs/instrumenting/clientlibs/&#34;&gt;supported languages&lt;/a&gt;, through official libraries and community maintained ones.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Prometheus Blog Series (Part 3): Exposing and collecting metrics</title>
      <link>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-3-exposing-and-collecting-metrics/</link>
      <pubDate>Tue, 26 Dec 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-3-exposing-and-collecting-metrics/</guid>
      <description>&lt;p&gt;In &lt;a href=&#34;https://blog.pvincent.io/2017/12/prometheus-blog-series-part-1-metrics-and-labels/&#34;&gt;Part 1&lt;/a&gt; and &lt;a href=&#34;https://blog.pvincent.io/2017/12/prometheus-blog-series-part-2-metric-types/&#34;&gt;Part 2&lt;/a&gt; of this series, we covered the basics of &lt;a href=&#34;https://prometheus.io/&#34;&gt;Prometheus&lt;/a&gt; metrics and labels. This third part will concentrate on the way Prometheus collects metrics and how clients expose them.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Prometheus Blog Series (Part 2): Metric types</title>
      <link>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-2-metric-types/</link>
      <pubDate>Sun, 24 Dec 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-2-metric-types/</guid>
      <description>&lt;p&gt;In &lt;a href=&#34;https://blog.pvincent.io/2017/12/prometheus-blog-series-part-1-metrics-and-labels/&#34;&gt;Part 1&lt;/a&gt; of this series, we talked about &lt;a href=&#34;https://prometheus.io/&#34;&gt;Prometheus&lt;/a&gt; metrics and how to make good use of labels to observe your applications under different segments and dimensions. This second part will look into more details in the 4 different types of Prometheus metrics: Counters, Gauges, Histograms and Summaries.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Prometheus Blog Series (Part 1): Metrics and Labels</title>
      <link>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-1-metrics-and-labels/</link>
      <pubDate>Fri, 22 Dec 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/12/prometheus-blog-series-part-1-metrics-and-labels/</guid>
      <description>&lt;p&gt;When it comes to monitoring tools in the last while, &lt;a href=&#34;https://prometheus.io/&#34;&gt;Prometheus&lt;/a&gt; is definitely hard to miss. It has quickly risen to be top of the class, with overwhelming adoption from the community and integrations with all the major pieces of the Cloud Native puzzle.&lt;/p&gt;
&lt;p&gt;Throughout this blog series, we will be learning the basics of Prometheus and how Prometheus fits within a service-oriented architecture.  This first post the series will cover the main concepts used in Prometheus: metrics and labels.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>CODE Stockholm Highlights: Data-driven DevOps and raising the Continuous Delivery game</title>
      <link>https://blog.pvincent.io/2017/09/code-stockholm-highlights-data-driven-devops-and-raising-the-continuous-delivery-game/</link>
      <pubDate>Sat, 30 Sep 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/09/code-stockholm-highlights-data-driven-devops-and-raising-the-continuous-delivery-game/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.code-conf.com/code-conf-17/sthlm/&#34;&gt;CODE Stockholm&lt;/a&gt; is a one-day conference centered on Continuous Delivery and the DevOps movement. Both aspects were well covered through keynotes and two tracks of great talks.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Measurement is the number one ally of technical work</title>
      <link>https://blog.pvincent.io/2017/09/measurement-is-the-number-one-ally-of-technical-work/</link>
      <pubDate>Sun, 10 Sep 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/09/measurement-is-the-number-one-ally-of-technical-work/</guid>
      <description>&lt;p&gt;As engineers, we tend to have high expectations of product managers to justify the value of adding new features. What problem is this solving? How will we validate that we&amp;rsquo;re building the right thing? Is this the most important thing to work on right now?&lt;/p&gt;
&lt;p&gt;These are great questions but interestingly we aren&amp;rsquo;t always applying the same rigor to the technical work.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Increasing the visibility of distributed systems in production</title>
      <link>https://blog.pvincent.io/2017/06/increasing-the-visibility-of-distributed-systems-in-production/</link>
      <pubDate>Fri, 16 Jun 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/06/increasing-the-visibility-of-distributed-systems-in-production/</guid>
      <description>&lt;p&gt;This talk from &lt;a href=&#34;http://rebelcon2017.com&#34;&gt;RebelCon 2017&lt;/a&gt; gives an overview of different monitoring patterns and how different tools can be used to help build a fuller picture of distributed applications in production.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Microservices in a fast-paced customer-centric environment: How and Why?</title>
      <link>https://blog.pvincent.io/2017/05/microservices-in-a-fast-paced-customer-centric-environment-how-and-why/</link>
      <pubDate>Wed, 17 May 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/05/microservices-in-a-fast-paced-customer-centric-environment-how-and-why/</guid>
      <description>&lt;p&gt;In this talk at &lt;a href=&#34;http://www.tmforumlive.org/&#34;&gt;TMForumLive 2017&lt;/a&gt;, I describe the &lt;a href=&#34;https://www.poppulo.com&#34;&gt;Poppulo&lt;/a&gt; journey (and challenges!) from a single team building a monolithic application to six teams practicing DevOps on a microservices architecture.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Increasing collaboration and confidence with Consumer-Driven Contracts testing</title>
      <link>https://blog.pvincent.io/2017/03/increasing-collaboration-and-confidence-with-consumer-driven-contracts-testing/</link>
      <pubDate>Tue, 21 Mar 2017 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2017/03/increasing-collaboration-and-confidence-with-consumer-driven-contracts-testing/</guid>
      <description>&lt;p&gt;This talk at &lt;a href=&#34;https://web.pipelineconf.info&#34;&gt;Pipeline, the Continuous Delivery conference&lt;/a&gt; covers how we made Consumer-driven contracts and &lt;a href=&#34;https://docs.pact.io/&#34;&gt;Pact&lt;/a&gt; part of our pipeline at &lt;a href=&#34;https://www.poppulo.com&#34;&gt;Poppulo&lt;/a&gt; and how it improved confidence and collaboration between teams when designing APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Agile at Poppulo</title>
      <link>https://blog.pvincent.io/2016/11/agile-at-poppulo/</link>
      <pubDate>Thu, 10 Nov 2016 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2016/11/agile-at-poppulo/</guid>
      <description>&lt;p&gt;Agile is about continuous improvement, not only for the product we are building but for own process as well. In this talk at &lt;a href=&#34;https://www.meetup.com/Agile-Cork/&#34;&gt;Agile Cork&lt;/a&gt;, I go through the evolution of the processes used over the last few years at &lt;a href=&#34;https://www.poppulo.com&#34;&gt;Poppulo&lt;/a&gt; (formerly Newsweaver), from a large iteration based development approach, to Scrum and more recently Kanban, DevOps and Continuous Delivery.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Docker, Microservices and Service Discovery</title>
      <link>https://blog.pvincent.io/2015/10/docker-microservices-and-service-discovery/</link>
      <pubDate>Sun, 18 Oct 2015 00:00:00 +0000</pubDate>
      
      <guid>https://blog.pvincent.io/2015/10/docker-microservices-and-service-discovery/</guid>
      <description>&lt;p&gt;Working with Microservices has recently become very trendy, however building dynamic and distributed systems doesn’t come without new challenges. Service Discovery is one of these challenges: enabling services to dynamically discover other services and communicate with them. In this talk at &lt;a href=&#34;http://corkdev.io/&#34;&gt;CorkDev.io&lt;/a&gt;, I go through a Service Discovery solution, using &lt;a href=&#34;https://medium.com/airbnb-engineering/smartstack-service-discovery-in-the-cloud-4b8a080de619&#34;&gt;Airbnb Smartstack&lt;/a&gt; to wire up Microservices running in Docker containers.&lt;/p&gt;</description>
    </item>
    
  </channel>
</rss>
