Incidents can happen despite our best efforts. It’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 follow-the-sun response team, it means sometimes, somebody needs to respond out-of-hours.| Pierre Vincent
When averages look fine, how can we discover that one customer who’s having a bad experience?| Pierre Vincent
Since completing OSCP in November 2019, I have been refining my penetration testing skills on Hack The Box, a Penetration Testing lab. Every target is usually a rollercoaster of both frustration and excitement, definitely pushing the Try harder philosophy. Here is a step-by-step guide to root one of the recently retired machines: Cache.| Pierre Vincent
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’t cut it for microservices. Here’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’s RebelCon (Poppulo Tech Blog) Reaching production is only the beginning (Poppulo Tech Blog) 2016 Pact tests: what about stat...| Pierre Vincent
If the content on this blog or my talks have resonated with you, that’s the best thing I can hope for! If you’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’m currently running. Workshops Cloud native monitoring with Prometheus & Grafana When it comes to monitoring tools in the Cloud Native space, Prometheus is definitely hard ...| Pierre Vincent
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.| Pierre Vincent
For anybody starting a product today, the idea of deployments requiring downtime is ludicrous. The truth is, a lot of today’s products started their development more than a decade ago, with architectures reflecting a different set of practices and assumptions.| Pierre Vincent
Instrumented applications bring in a wealth of information on how they behave. In the previous parts of this blog series, 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 unknown unknowns, either pro-actively (testing) or reactively (debugging). Metrics can also be used to help with things we already know and care about: instrumenting those things ...| Pierre Vincent
So far in this Prometheus blog series, we have looked into Prometheus metrics and labels (see Part 1 & 2), as well as how Prometheus integrates in a distributed architecture (see Part 3). 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' wide adoption. This post will go through examples in Go and Java. Prometheus has a number of other supported languages, through offici...| Pierre Vincent
In Part 1 and Part 2 of this series, we covered the basics of Prometheus metrics and labels. This third part will concentrate on the way Prometheus collects metrics and how clients expose them.| Pierre Vincent
In Part 1 of this series, we talked about Prometheus 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.| Pierre Vincent
CODE Stockholm 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.| Pierre Vincent
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’re building the right thing? Is this the most important thing to work on right now? These are great questions but interestingly we aren’t always applying the same rigor to the technical work.| Pierre Vincent
This talk from RebelCon 2017 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.| Pierre Vincent
In this talk at TMForumLive 2017, I describe the Poppulo journey (and challenges!) from a single team building a monolithic application to six teams practicing DevOps on a microservices architecture.| Pierre Vincent
This talk at Pipeline, the Continuous Delivery conference covers how we made Consumer-driven contracts and Pact part of our pipeline at Poppulo and how it improved confidence and collaboration between teams when designing APIs.| Pierre Vincent
Agile is about continuous improvement, not only for the product we are building but for own process as well. In this talk at Agile Cork, I go through the evolution of the processes used over the last few years at Poppulo (formerly Newsweaver), from a large iteration based development approach, to Scrum and more recently Kanban, DevOps and Continuous Delivery.| Pierre Vincent
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 CorkDev.io, I go through a Service Discovery solution, using Airbnb Smartstack to wire up Microservices running in Docker containers.| Pierre Vincent
When it comes to monitoring tools in the last while, Prometheus 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. 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.| Pierre Vincent