{"id":299,"date":"2021-04-05T14:26:30","date_gmt":"2021-04-05T14:26:30","guid":{"rendered":"https:\/\/blog.spike.sh\/2021\/04\/05\/how-we-redesigned-spike-on-call-feature\/"},"modified":"2025-06-06T14:07:58","modified_gmt":"2025-06-06T08:37:58","slug":"how-we-redesigned-spike-on-call-feature","status":"publish","type":"post","link":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/","title":{"rendered":"Behind the Redesign of Spike.sh On-call"},"content":{"rendered":"\n<nav aria-label=\"Table of Contents\" class=\"wp-block-table-of-contents\"><ol><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#background\">Background<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#user-research\">User research<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#the-solution-layers\">The solution &#8211; Layers!<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#creating-on-call-schedule\">Creating on-call schedule <\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#other-improvements\">Other improvements<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#conclusion\">Conclusion<\/a><\/li><\/ol><\/nav>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"background\"><strong>Background<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We recently released the biggest overhaul to one of the core features of <a href=\"https:\/\/spike.sh\">Spike.sh<\/a> &#8211; On-call schedules. Software teams use on-call schedules to designate first responders who will handle issues when they occur.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"user-research\"><strong>User research<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Initially, we released a simple version for small teams who were just starting out with on-call. But as we talked to more customers, we realised that teams had many different types of on-call schedules, and wanted a more powerful feature that could handle the complex requirements as well as the ability to handle the human side of on-call &#8211; last minute changes, team member vacations and swaps between different people. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We gathered all the feedback and decided on a few goals for the design &#8211; <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Simplicity: Spike.sh has a big focus on simplicity, so we wanted to allow teams to get started with on-call very easily.<\/li>\n\n\n\n<li>Clarity: Because on-call schedules could become complex to manage, we wanted the design to be able to answer the most common questions easily.<\/li>\n\n\n\n<li>Flexibility: The feature should be powerful enough to handle the many different schedules that different teams had, including the ability to handle schedules for team members in different locations.<\/li>\n\n\n\n<li>Extensibility: The design should allow for future extensions to build some very powerful (and cool) ideas that the team came up with. <\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"the-solution-layers\"><strong>The solution &#8211; Layers!<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When we spoke to our customers, we saw that they thought of on-call schedules as a set of rules (&#8220;the weekday on-call should be handled by team A&#8221;, &#8220;weekend on-call can be handled by one person&#8221;). Customers wanted to apply these rules during certain times, and maybe &#8220;turn off&#8221; these rules during other times. The team came up with the idea of using layers to implement these rules. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The layers are similar to the ones used in design tools like Figma &#8211; the combination of layers creates the final output, the upper layers have preference over lower layers and individual layers can be turned on and off. Just like a design tool, <strong>layers allow teams to add more complexity to on-call while still being able to understand it visually<\/strong>. This enables the user to focus on one layer at a time without causing information overload from the other layers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"creating-on-call-schedule\"><strong>Creating on-call schedule <\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Here are some screenshots that show how the on-call creation flow changed in the new design.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large kg-card kg-image-card kg-card-hascaption\"><img loading=\"lazy\" decoding=\"async\" width=\"1016\" height=\"1024\" data-attachment-id=\"878\" data-permalink=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/1-7\/\" data-orig-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6.png\" data-orig-size=\"2024,2040\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"1\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-1016x1024.png\" src=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-1016x1024.png\" alt=\"\" class=\"wp-image-878\" srcset=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-1016x1024.png 1016w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-298x300.png 298w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-150x150.png 150w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-768x774.png 768w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-1524x1536.png 1524w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6-1200x1209.png 1200w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/1-6.png 2024w\" sizes=\"auto, (max-width: 1016px) 100vw, 1016px\" \/><figcaption class=\"wp-element-caption\">Older design of creating on-call<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large kg-card kg-image-card kg-card-hascaption\"><img loading=\"lazy\" decoding=\"async\" width=\"852\" height=\"1024\" data-attachment-id=\"879\" data-permalink=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/2-7\/\" data-orig-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6.png\" data-orig-size=\"1331,1600\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"2\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6-852x1024.png\" src=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6-852x1024.png\" alt=\"\" class=\"wp-image-879\" srcset=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6-852x1024.png 852w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6-250x300.png 250w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6-768x923.png 768w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6-1278x1536.png 1278w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6-1200x1443.png 1200w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/2-6.png 1331w\" sizes=\"auto, (max-width: 852px) 100vw, 852px\" \/><figcaption class=\"wp-element-caption\">New on-call creation with layers<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large kg-card kg-image-card kg-card-hascaption\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"883\" data-attachment-id=\"880\" data-permalink=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/3-5\/\" data-orig-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4.png\" data-orig-size=\"1600,1379\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"3\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4-1024x883.png\" src=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4-1024x883.png\" alt=\"\" class=\"wp-image-880\" srcset=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4-1024x883.png 1024w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4-300x259.png 300w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4-768x662.png 768w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4-1536x1324.png 1536w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4-1200x1034.png 1200w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/3-4.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">View details of on-call schedule<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"other-improvements\"><strong>Other improvements<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We also added the ability to add time slots during a longer shift when a team member would be on-call. This is an improvement from before where a person could be on-call only for the entire shift. <\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large kg-card kg-image-card kg-card-hascaption\"><img loading=\"lazy\" decoding=\"async\" width=\"968\" height=\"1024\" data-attachment-id=\"881\" data-permalink=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/4-4\/\" data-orig-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3.png\" data-orig-size=\"1280,1354\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"4\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3-968x1024.png\" src=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3-968x1024.png\" alt=\"\" class=\"wp-image-881\" srcset=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3-968x1024.png 968w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3-284x300.png 284w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3-768x812.png 768w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3-1200x1269.png 1200w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/4-3.png 1280w\" sizes=\"auto, (max-width: 968px) 100vw, 968px\" \/><figcaption class=\"wp-element-caption\">Adding slots in an on-call shift<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Some customers shared the feedback that they wanted a quick way to know who was on-call at any time. So we added a small dropdown which told them exactly that. It also shows you when you&#8217;re next on-call. <\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full kg-card kg-image-card kg-card-hascaption\"><img loading=\"lazy\" decoding=\"async\" width=\"776\" height=\"748\" data-attachment-id=\"882\" data-permalink=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/attachment\/5\/\" data-orig-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/5.png\" data-orig-size=\"776,748\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"5\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/5.png\" src=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/5.png\" alt=\"\" class=\"wp-image-882\" srcset=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/5.png 776w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/5-300x289.png 300w, https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/5-768x740.png 768w\" sizes=\"auto, (max-width: 776px) 100vw, 776px\" \/><figcaption class=\"wp-element-caption\">Who&#8217;s on-call right now?<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"conclusion\"><strong>Conclusion<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We put a lot of thought into the redesign of this feature, and the early feedback from our customers has made it all worth it. If you would like to give our modern on-call a spin, sign up at <a href=\"https:\/\/spike.sh\">Spike.sh<\/a> and let us know what you think.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Background We recently released the biggest overhaul to one of the core features of Spike.sh &#8211; On-call schedules. Software teams use on-call schedules to designate first responders who will handle issues when they occur. User research Initially, we released a simple version for small teams who were just starting out with on-call. But as we [&hellip;]<\/p>\n","protected":false},"author":191914268,"featured_media":883,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","_lmt_disableupdate":"","_lmt_disable":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":false},"categories":[1424],"tags":[],"class_list":["post-299","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-building-spike"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Behind the Redesign of Spike.sh On-call<\/title>\n<meta name=\"description\" content=\"Discover the redesign of Spike.sh On-call\u2014now simpler, more flexible, and built for complex team schedules with powerful layering.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Behind the Redesign of Spike.sh On-call\" \/>\n<meta property=\"og:description\" content=\"Discover the redesign of Spike.sh On-call\u2014now simpler, more flexible, and built for complex team schedules with powerful layering.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/\" \/>\n<meta property=\"og:site_name\" content=\"Spike&#039;s blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-04-05T14:26:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-06T08:37:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/New-Oncall-2-.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"480\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Kaushik\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kaushik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/\"},\"author\":{\"name\":\"Kaushik\",\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/#\\\/schema\\\/person\\\/b137e57ace218547f02b86fdcb2d0e64\"},\"headline\":\"Behind the Redesign of Spike.sh On-call\",\"datePublished\":\"2021-04-05T14:26:30+00:00\",\"dateModified\":\"2025-06-06T08:37:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/\"},\"wordCount\":563,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.spike.sh\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/New-Oncall-2-.png\",\"articleSection\":[\"Building Spike\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/\",\"url\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/\",\"name\":\"Behind the Redesign of Spike.sh On-call\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.spike.sh\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/New-Oncall-2-.png\",\"datePublished\":\"2021-04-05T14:26:30+00:00\",\"dateModified\":\"2025-06-06T08:37:58+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/#\\\/schema\\\/person\\\/b137e57ace218547f02b86fdcb2d0e64\"},\"description\":\"Discover the redesign of Spike.sh On-call\u2014now simpler, more flexible, and built for complex team schedules with powerful layering.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blog.spike.sh\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/New-Oncall-2-.png\",\"contentUrl\":\"https:\\\/\\\/blog.spike.sh\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/New-Oncall-2-.png\",\"width\":1200,\"height\":480},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/how-we-redesigned-spike-on-call-feature\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/blog.spike.sh\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Behind the Redesign of Spike.sh On-call\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/#website\",\"url\":\"https:\\\/\\\/blog.spike.sh\\\/\",\"name\":\"Spike&#039;s blog\",\"description\":\"Learnings and opinions in a changing world\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.spike.sh\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blog.spike.sh\\\/#\\\/schema\\\/person\\\/b137e57ace218547f02b86fdcb2d0e64\",\"name\":\"Kaushik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c7ec6b633161978fc09ed325cefde9061797a65a730e4b98c0eb26bc6925bc81?s=96&d=robohash&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c7ec6b633161978fc09ed325cefde9061797a65a730e4b98c0eb26bc6925bc81?s=96&d=robohash&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c7ec6b633161978fc09ed325cefde9061797a65a730e4b98c0eb26bc6925bc81?s=96&d=robohash&r=g\",\"caption\":\"Kaushik\"},\"description\":\"Founder of Spike. I like sharing how we are building Spike and the intricacies of building a startup by waking people up for critical incidents.\",\"url\":\"https:\\\/\\\/blog.spike.sh\\\/author\\\/spikehq\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Behind the Redesign of Spike.sh On-call","description":"Discover the redesign of Spike.sh On-call\u2014now simpler, more flexible, and built for complex team schedules with powerful layering.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/","og_locale":"en_GB","og_type":"article","og_title":"Behind the Redesign of Spike.sh On-call","og_description":"Discover the redesign of Spike.sh On-call\u2014now simpler, more flexible, and built for complex team schedules with powerful layering.","og_url":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/","og_site_name":"Spike&#039;s blog","article_published_time":"2021-04-05T14:26:30+00:00","article_modified_time":"2025-06-06T08:37:58+00:00","og_image":[{"width":1200,"height":480,"url":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/New-Oncall-2-.png","type":"image\/png"}],"author":"Kaushik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kaushik","Estimated reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#article","isPartOf":{"@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/"},"author":{"name":"Kaushik","@id":"https:\/\/blog.spike.sh\/#\/schema\/person\/b137e57ace218547f02b86fdcb2d0e64"},"headline":"Behind the Redesign of Spike.sh On-call","datePublished":"2021-04-05T14:26:30+00:00","dateModified":"2025-06-06T08:37:58+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/"},"wordCount":563,"commentCount":0,"image":{"@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/New-Oncall-2-.png","articleSection":["Building Spike"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/","url":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/","name":"Behind the Redesign of Spike.sh On-call","isPartOf":{"@id":"https:\/\/blog.spike.sh\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#primaryimage"},"image":{"@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/New-Oncall-2-.png","datePublished":"2021-04-05T14:26:30+00:00","dateModified":"2025-06-06T08:37:58+00:00","author":{"@id":"https:\/\/blog.spike.sh\/#\/schema\/person\/b137e57ace218547f02b86fdcb2d0e64"},"description":"Discover the redesign of Spike.sh On-call\u2014now simpler, more flexible, and built for complex team schedules with powerful layering.","breadcrumb":{"@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#primaryimage","url":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/New-Oncall-2-.png","contentUrl":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/New-Oncall-2-.png","width":1200,"height":480},{"@type":"BreadcrumbList","@id":"https:\/\/blog.spike.sh\/how-we-redesigned-spike-on-call-feature\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.spike.sh\/"},{"@type":"ListItem","position":2,"name":"Behind the Redesign of Spike.sh On-call"}]},{"@type":"WebSite","@id":"https:\/\/blog.spike.sh\/#website","url":"https:\/\/blog.spike.sh\/","name":"Spike&#039;s blog","description":"Learnings and opinions in a changing world","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.spike.sh\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/blog.spike.sh\/#\/schema\/person\/b137e57ace218547f02b86fdcb2d0e64","name":"Kaushik","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/c7ec6b633161978fc09ed325cefde9061797a65a730e4b98c0eb26bc6925bc81?s=96&d=robohash&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c7ec6b633161978fc09ed325cefde9061797a65a730e4b98c0eb26bc6925bc81?s=96&d=robohash&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c7ec6b633161978fc09ed325cefde9061797a65a730e4b98c0eb26bc6925bc81?s=96&d=robohash&r=g","caption":"Kaushik"},"description":"Founder of Spike. I like sharing how we are building Spike and the intricacies of building a startup by waking people up for critical incidents.","url":"https:\/\/blog.spike.sh\/author\/spikehq\/"}]}},"modified_by":"Sreekar","jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/04\/New-Oncall-2-.png","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pfMe4Q-4P","jetpack-related-posts":[{"id":287,"url":"https:\/\/blog.spike.sh\/dashboard-redesign-spike-sh\/","url_meta":{"origin":299,"position":0},"title":"Our Dashboard Redesign Process","author":"Kaushik","date":"3rd July, 2020","format":false,"excerpt":"We wanted to create an effective dashboard that would enable the users to comprehend information easily and act on it immediately with ease.","rel":"","context":"In &quot;Building Spike&quot;","block_context":{"text":"Building Spike","link":"https:\/\/blog.spike.sh\/category\/building-spike\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/07\/cover.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/07\/cover.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/07\/cover.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/07\/cover.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/07\/cover.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/07\/cover.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":294,"url":"https:\/\/blog.spike.sh\/spike-mobile-push-notification-alerts-pushover\/","url_meta":{"origin":299,"position":1},"title":"How to Get Mobile Push Notifications from Spike.sh","author":"Pruthvi","date":"9th March, 2021","format":false,"excerpt":"What is Pushover?How to get Spike.sh alerts on Pushover app? When an issue happens in your software in production, the channel to send the alert on depends on multiple factors. If it's a critical issue requiring immediate attention, you should alert the team member via phone call. But not all\u2026","rel":"","context":"In &quot;Alerts&quot;","block_context":{"text":"Alerts","link":"https:\/\/blog.spike.sh\/category\/incident-management\/alerts\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-4.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-4.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-4.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-4.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-4.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-4.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":312,"url":"https:\/\/blog.spike.sh\/introducing-the-spike-sh-alert-reliability-engine\/","url_meta":{"origin":299,"position":2},"title":"Introducing the Spike.sh Alert Reliability Engine","author":"Kaushik","date":"23rd August, 2021","format":false,"excerpt":"At Spike.sh, our mission is to help dev teams understand and resolve production issues faster. At the core of this is our Alert Reliability Engine, whose job is to make sure that a team member always gets an alert on their preferred channel. Currently, we support 7 channels - phone\u2026","rel":"","context":"In &quot;Alerts&quot;","block_context":{"text":"Alerts","link":"https:\/\/blog.spike.sh\/category\/incident-management\/alerts\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/08\/Alert-reliability-diagram.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/08\/Alert-reliability-diagram.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/08\/Alert-reliability-diagram.png?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":1534,"url":"https:\/\/blog.spike.sh\/payments-disruption-incident\/","url_meta":{"origin":299,"position":3},"title":"Payments Disruption Incident at Spike","author":"Kaushik","date":"23rd April, 2025","format":false,"excerpt":"Resolved (May 15th, 2025): The payment disruption incident has been fully resolved. We\u2019ve successfully restored all international payment processing with Stripe. During the disruption, we kept your service running by disabling auto-cancellations. Any pending payments will be automatically charged soon with invoices sent via email. Check your billing dashboard for\u2026","rel":"","context":"In &quot;Announcement&quot;","block_context":{"text":"Announcement","link":"https:\/\/blog.spike.sh\/category\/announcement\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2025\/04\/Payments-disruption-incident-at-Spike.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2025\/04\/Payments-disruption-incident-at-Spike.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2025\/04\/Payments-disruption-incident-at-Spike.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2025\/04\/Payments-disruption-incident-at-Spike.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2025\/04\/Payments-disruption-incident-at-Spike.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2025\/04\/Payments-disruption-incident-at-Spike.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":296,"url":"https:\/\/blog.spike.sh\/introduction-on-call-schedule\/","url_meta":{"origin":299,"position":4},"title":"Introduction to On-Call Schedules","author":"Kaushik","date":"16th March, 2021","format":false,"excerpt":"CoverageShift lengthWho should be on-call?What should be the escalation policy during on-call?On-call and team healthConclusion An on-call schedule tells you and everyone in the team who will be the first responder when an issue happens in production. The on-call team member is responsible for investigating the issue, either fixing the\u2026","rel":"","context":"In &quot;Oncall&quot;","block_context":{"text":"Oncall","link":"https:\/\/blog.spike.sh\/category\/incident-management\/oncall\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-1.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-1.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-1.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-1.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-1.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2021\/03\/cover-1.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":288,"url":"https:\/\/blog.spike.sh\/a-design-episode-in-spike-how-we-built-the-on-call-feature\/","url_meta":{"origin":299,"position":5},"title":"A Design Episode in Spike: How We Built the On-call Feature","author":"Kaushik","date":"14th September, 2020","format":false,"excerpt":"Being an incident management service, having an On-call feature is all the more important for Spike. On-call is essential for easy and efficient handling of new incidents so that no incident is missed. An incident is an event that is not part of normal operations that disrupts operational processes. Without\u2026","rel":"","context":"In &quot;Building Spike&quot;","block_context":{"text":"Building Spike","link":"https:\/\/blog.spike.sh\/category\/building-spike\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/09\/Designing-On-call-How-we-did-it_.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/09\/Designing-On-call-How-we-did-it_.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/09\/Designing-On-call-How-we-did-it_.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.spike.sh\/wp-content\/uploads\/2020\/09\/Designing-On-call-How-we-did-it_.png?resize=700%2C400&ssl=1 2x"},"classes":[]}],"_links":{"self":[{"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/posts\/299","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/users\/191914268"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/comments?post=299"}],"version-history":[{"count":3,"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/posts\/299\/revisions"}],"predecessor-version":[{"id":1806,"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/posts\/299\/revisions\/1806"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/media\/883"}],"wp:attachment":[{"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/media?parent=299"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/categories?post=299"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.spike.sh\/wp-json\/wp\/v2\/tags?post=299"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}