Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UX Design and Education for Effective Monitorin...

UX Design and Education for Effective Monitoring Tools (Monitorama PDX 2017)

Abstract:
I, like many of us, chose to work in infrastructure because I thought it meant I could avoid talking to other people as much as possible. I was wrong. It turns out that a huge amount of work in monitoring is about empowering the rest of your engineering organization to use the tools you develop correctly, quickly, and effectively. A huge amount of our time is spent explaining how to interpret timeseries data and why averaging percentiles is a bad idea. After feedback from our engineers, we embarked on a journey to redesign our internal monitoring tools and understand where people were struggling with the existing system.

In this talk, I will explain how we approached the problem of making concepts like interpolation, aggregation, and alerting more intuitive and how we identified pain points for new users. I will outline common misconceptions our users have about monitoring and how we cleared up this confusion in our UI without forcing everyone to spend hours on documentation. Rather than copying and pasting existing UX design principles onto our monitoring problems, we will see how we can reinterpret these ideas and apply them to our unique situation to create a better experience for everyone.

Amy Nguyen

May 24, 2017
Tweet

More Decks by Amy Nguyen

Other Decks in Technology

Transcript

  1. Amy Nguyen @amyngyn Monitorama PDX 2017 Agenda - Background -

    Motivation - Sharing what you know - Designing what your users want - Recap
  2. Amy Nguyen @amyngyn Monitorama PDX 2017 Agenda - Background -

    Motivation - Sharing what you know - Designing what your users want - Recap
  3. Amy Nguyen @amyngyn Monitorama PDX 2017 Hi! - Joined Pinterest

    in 2015 - Recent projects: ◦ tracing for performance
  4. Amy Nguyen @amyngyn Monitorama PDX 2017 Hi! - Joined Pinterest

    in 2015 - Recent projects: ◦ tracing for performance ◦ D3 data visualizations
  5. Amy Nguyen @amyngyn Monitorama PDX 2017 Hi! - Joined Pinterest

    in 2015 - Recent projects: ◦ tracing for performance ◦ D3 data visualizations ◦ cache for OpenTSDB data
  6. Amy Nguyen @amyngyn Monitorama PDX 2017 Hi! - Joined Pinterest

    in 2015 - Recent projects: ◦ tracing for performance ◦ D3 data visualizations ◦ cache for OpenTSDB data ◦ so much documentation omg
  7. Amy Nguyen @amyngyn Monitorama PDX 2017 Hi! - Joined Pinterest

    in 2015 - Recent projects: ◦ tracing for performance ◦ D3 data visualizations ◦ cache for OpenTSDB data ◦ so much documentation omg - amynguyen.net @amyngyn pinterest.com/amyngyn
  8. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest - 175

    million monthly active users the world's first visual discovery engine
  9. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest - 175

    million monthly active users - 100 billion pins the world's first visual discovery engine
  10. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest - 175

    million monthly active users - 100 billion pins - 2 billion boards the world's first visual discovery engine
  11. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest - 175

    million monthly active users - 100 billion pins - 2 billion boards - 2 billion searches every month the world's first visual discovery engine
  12. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest - 175

    million monthly active users - 100 billion pins - 2 billion boards - 2 billion searches every month - 150,000 requests served per second the world's first visual discovery engine
  13. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest Monitoring -

    Graphite, OpenTSDB, Kafka, Storm, Spark, ELK, Sumo Logic, Zipkin the world's first greatest monitoring team
  14. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest Monitoring -

    Graphite, OpenTSDB, Kafka, Storm, Spark, ELK, Sumo Logic, Zipkin - 100 terabytes logged per day the world's first greatest monitoring team
  15. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest Monitoring -

    Graphite, OpenTSDB, Kafka, Storm, Spark, ELK, Sumo Logic, Zipkin - 100 terabytes logged per day - 2.5M metrics ingested per second the world's first greatest monitoring team
  16. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest Monitoring -

    Graphite, OpenTSDB, Kafka, Storm, Spark, ELK, Sumo Logic, Zipkin - 100 terabytes logged per day - 2.5M metrics ingested per second - Over 400 engineers the world's first greatest monitoring team
  17. Amy Nguyen @amyngyn Monitorama PDX 2017 About Pinterest Monitoring -

    Graphite, OpenTSDB, Kafka, Storm, Spark, ELK, Sumo Logic, Zipkin - 100 terabytes logged per day - 2.5M metrics ingested per second - Over 400 engineers customers! the world's first greatest monitoring team
  18. Amy Nguyen @amyngyn Monitorama PDX 2017 Agenda - Background -

    Motivation - Sharing what you know - Designing what your users want - Recap
  19. Amy Nguyen @amyngyn Monitorama PDX 2017 Why should we care

    about user experience? - Prevent misunderstandings: not everyone is (or should have to be) an expert at interpreting monitoring data
  20. Amy Nguyen @amyngyn Monitorama PDX 2017 Why should we care

    about user experience? - Prevent misunderstandings: not everyone is (or should have to be) an expert at interpreting monitoring data - Developer velocity: help people reach conclusions faster, help your company move faster
  21. Amy Nguyen @amyngyn Monitorama PDX 2017 Why should we care

    about user experience? - Prevent misunderstandings: not everyone is (or should have to be) an expert at interpreting monitoring data - Developer velocity: help people reach conclusions faster, help your company move faster - Data democracy: you don't know what questions people want to answer with their own data
  22. Amy Nguyen @amyngyn Monitorama PDX 2017 "The fastest way to

    become a 10x engineer is to help 10 other engineers do their jobs better. - Wayne Gretzky" - Michael Scott
  23. Amy Nguyen @amyngyn Monitorama PDX 2017 Why should we care

    about user experience? - Prevent misunderstandings: not everyone is (or should have to be) an expert at interpreting timeseries data - Developer velocity: help people reach conclusions faster, help your company move faster - Data democracy: you don't know what questions people want to answer with their own data
  24. Amy Nguyen @amyngyn Monitorama PDX 2017 Why should we care

    about user experience? - Prevent misunderstandings: not everyone is (or should have to be) an expert at interpreting timeseries data - Developer velocity: help people reach conclusions faster, help your company move faster - Data democracy: you don't know what questions people want to answer with their own data
  25. Amy Nguyen @amyngyn Monitorama PDX 2017 Why should we care

    about user experience? Because we can help engineers work correctly, quickly, and independently.
  26. Amy Nguyen @amyngyn Monitorama PDX 2017 UX and Your Situation

    team documentation tools probably paying for vendors TBH?
  27. Amy Nguyen @amyngyn Monitorama PDX 2017 UX and Your Situation

    team documentation tools probably paying for vendors TBH? this talk
  28. Amy Nguyen @amyngyn Monitorama PDX 2017 UX and Your Situation

    team documentation tools probably paying for vendors TBH? this talk things we can all control
  29. Amy Nguyen @amyngyn Monitorama PDX 2017 - Background - Motivation

    - Sharing what you know - Designing what your users want - Recap Agenda
  30. Amy Nguyen @amyngyn Monitorama PDX 2017 Sharing what you know

    1. Education vs intuition: Don't overload people with too much information.
  31. Amy Nguyen @amyngyn Monitorama PDX 2017 Sharing what you know

    1. Education vs intuition: Don't overload people with too much information. 2. Best practices: Use your expertise to determine the most helpful default behavior.
  32. Amy Nguyen @amyngyn Monitorama PDX 2017 Sharing what you know

    1. Education vs intuition: Don't overload people with too much information. 2. Best practices: Use your expertise to determine the most helpful default behavior. 3. Potential pitfalls: Make it hard to do the wrong thing.
  33. Amy Nguyen @amyngyn Monitorama PDX 2017 It looks like you're

    trying to alert on the most recent data. Are you sure you want to do that?
  34. Amy Nguyen @amyngyn Monitorama PDX 2017 - Background - Motivation

    - Sharing what you know - Designing what your users want - Recap Agenda
  35. Amy Nguyen @amyngyn Monitorama PDX 2017 Designing what your users

    want 1. Performance: Do whatever it takes to make it fast.
  36. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges
  37. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project)
  38. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project) - Add a cache layer (e.g., Turn's Splicer project)
  39. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project) - Add a cache layer (e.g., Turn's Splicer project) yeah sure get back to us in 6 months
  40. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project) - Add a cache layer (e.g., Turn's Splicer project) - Frontend
  41. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project) - Add a cache layer (e.g., Turn's Splicer project) - Frontend - Don't reload existing data if the user changes the time window
  42. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project) - Add a cache layer (e.g., Turn's Splicer project) - Frontend - Don't reload existing data if the user changes the time window - Prevent the user from requesting the data incessantly
  43. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project) - Add a cache layer (e.g., Turn's Splicer project) - Frontend - Don't reload existing data if the user changes the time window - Prevent the user from requesting the data incessantly - Lazy-load graphs on a dashboard
  44. Amy Nguyen @amyngyn Monitorama PDX 2017 Performance: Low Hanging Fruit!

    - Backend - Roll-up data over long time ranges - Store latest data in memory (e.g., Facebook's Gorilla paper and Beringei project) - Add a cache layer (e.g., Turn's Splicer project) - Frontend - Don't reload existing data if the user changes the time window - Prevent the user from requesting the data incessantly - Lazy-load graphs on a dashboard - Disclaimer: We haven't done all of these things.
  45. Amy Nguyen @amyngyn Monitorama PDX 2017 Designing what your users

    want 1. Performance: Do whatever it takes to make it fast. 2. Exploration: Make it easy to try things without fear.
  46. Amy Nguyen @amyngyn Monitorama PDX 2017 Designing what your users

    want 1. Performance: Do whatever it takes to make it fast. 2. Exploration: Make it easy to try things without fear. 3. Simplicity: Make it easy to figure out what to do.
  47. Amy Nguyen @amyngyn Monitorama PDX 2017 manually type in your

    metric if you know the name somehow aggregator
  48. Amy Nguyen @amyngyn Monitorama PDX 2017 manually type in your

    metric if you know the name somehow aggregator hope you remember what tags are available for this metric lol
  49. Amy Nguyen @amyngyn Monitorama PDX 2017 manually type in your

    metric if you know the name somehow aggregator secret bonus: you can downsample?! hope you remember what tags are available for this metric lol
  50. Amy Nguyen @amyngyn Monitorama PDX 2017 manually type in your

    metric if you know the name somehow aggregator secret bonus: you can downsample?! hope you remember what tags are available for this metric lol
  51. Amy Nguyen @amyngyn Monitorama PDX 2017 Designing what your users

    want 1. Performance: Do whatever it takes to make it fast. 2. Exploration: Make it easy to try things without fear. 3. Simplicity: Make it easy to figure out what to do.
  52. Amy Nguyen @amyngyn Monitorama PDX 2017 - Background - Motivation

    - Sharing what you know - Designing what your users want - Recap Agenda
  53. Amy Nguyen @amyngyn Monitorama PDX 2017 "The fastest way to

    become a 10x engineer is to help 10 other engineers do their jobs better. - Wayne Gretzky" - Michael Scott
  54. Amy Nguyen @amyngyn Monitorama PDX 2017 UX and Your Situation

    team documentation tools probably paying for vendors TBH? this talk things we can all control
  55. Amy Nguyen @amyngyn Monitorama PDX 2017 Sharing what you know

    1. Education vs intuition: Don't overload people with too much information. 2. Best practices: Use your expertise to determine the most helpful default behavior. 3. Potential pitfalls: Make it hard to do the wrong thing.
  56. Amy Nguyen @amyngyn Monitorama PDX 2017 Designing what your users

    want 1. Performance: Do whatever it takes to make it fast. 2. Exploration: Make it easy to try things without fear. 3. Simplicity: Make it easy to figure out what to do.