1479 lines
134 KiB
HTML
1479 lines
134 KiB
HTML
<!doctype html>
|
||
<html lang="en-GB">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<link rel="icon" href="https://spike.sh/blog/wp-content/themes/spike-theme/assets/images/favicon.ico?v=1788521068" sizes="any">
|
||
<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
|
||
<script>(function(){var s;try{s=localStorage.getItem('spike-color-scheme');}catch(e){}if(s==='dark'||(s!=='light'&&window.matchMedia('(prefers-color-scheme: dark)').matches)){document.documentElement.classList.add('dark');}})();</script>
|
||
|
||
<!-- This site is optimized with the Yoast SEO plugin v28.4 - https://yoast.com/product/yoast-seo-wordpress/ -->
|
||
<title>What is Expected in the SRE Role?</title>
|
||
<meta name="description" content="We analyzed 30 real SRE job postings to break down what companies actually expect from the Site Reliability Engineer role today, skills included." />
|
||
<link rel="canonical" href="https://spike.sh/blog/sre-role-2021-analysed-30-job-postings/" />
|
||
<meta property="og:locale" content="en_GB" />
|
||
<meta property="og:type" content="article" />
|
||
<meta property="og:title" content="What is Expected in the SRE Role?" />
|
||
<meta property="og:description" content="We analyzed 30 real SRE job postings to break down what companies actually expect from the Site Reliability Engineer role today, skills included." />
|
||
<meta property="og:url" content="https://spike.sh/blog/sre-role-2021-analysed-30-job-postings/" />
|
||
<meta property="og:site_name" content="Welcome to Spike's blog" />
|
||
<meta property="article:published_time" content="2021-09-21T10:47:35+00:00" />
|
||
<meta property="article:modified_time" content="2026-09-08T17:52:04+00:00" />
|
||
<meta property="og:image" content="https://spike.sh/blog/wp-content/uploads/2021/09/003.png" />
|
||
<meta property="og:image:width" content="2080" />
|
||
<meta property="og:image:height" content="1128" />
|
||
<meta property="og:image:type" content="image/png" />
|
||
<meta name="author" content="Pruthvi" />
|
||
<meta name="twitter:card" content="summary_large_image" />
|
||
<meta name="twitter:creator" content="@SpikedHQ" />
|
||
<meta name="twitter:site" content="@SpikedHQ" />
|
||
<meta name="twitter:label1" content="Written by" />
|
||
<meta name="twitter:data1" content="Pruthvi" />
|
||
<meta name="twitter:label2" content="Estimated reading time" />
|
||
<meta name="twitter:data2" content="6 minutes" />
|
||
<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#article","isPartOf":{"@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/"},"author":{"name":"Pruthvi","@id":"https:\/\/blog.spike.sh\/#\/schema\/person\/2c9fa677c459b8f4fb26f1a02b90b5ec"},"headline":"What is expected in the SRE role? We analyzed 30 job postings to find out.","datePublished":"2021-09-21T10:47:35+00:00","dateModified":"2026-09-08T17:52:04+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/"},"wordCount":1224,"commentCount":0,"image":{"@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/09\/003.png","keywords":["Founder","SRE"],"articleSection":["Uncategorized"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/","url":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/","name":"What is Expected in the SRE Role?","isPartOf":{"@id":"https:\/\/blog.spike.sh\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#primaryimage"},"image":{"@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/09\/003.png","datePublished":"2021-09-21T10:47:35+00:00","dateModified":"2026-09-08T17:52:04+00:00","author":{"@id":"https:\/\/blog.spike.sh\/#\/schema\/person\/2c9fa677c459b8f4fb26f1a02b90b5ec"},"description":"We analyzed 30 real SRE job postings to break down what companies actually expect from the Site Reliability Engineer role today, skills included.","breadcrumb":{"@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#primaryimage","url":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/09\/003.png","contentUrl":"https:\/\/blog.spike.sh\/wp-content\/uploads\/2021\/09\/003.png","width":2080,"height":1128},{"@type":"BreadcrumbList","@id":"https:\/\/blog.spike.sh\/sre-role-2021-analysed-30-job-postings\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.spike.sh\/"},{"@type":"ListItem","position":2,"name":"Uncategorized","item":"https:\/\/blog.spike.sh\/category\/uncategorised\/"},{"@type":"ListItem","position":3,"name":"What is expected in the SRE role? We analyzed 30 job postings to find out."}]},{"@type":"WebSite","@id":"https:\/\/blog.spike.sh\/#website","url":"https:\/\/blog.spike.sh\/","name":"Welcome to Spike's blog","description":"Here, we talk about incident response, on-call, and everything in between. We also share the journey of building Spike.","alternateName":"Welcome to Spike's blog","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\/2c9fa677c459b8f4fb26f1a02b90b5ec","name":"Pruthvi","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/e9476164464b4c9fb3455f2ee4879aad90f1790dce018e71caeaca2cbd548637?s=96&d=robohash&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/e9476164464b4c9fb3455f2ee4879aad90f1790dce018e71caeaca2cbd548637?s=96&d=robohash&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e9476164464b4c9fb3455f2ee4879aad90f1790dce018e71caeaca2cbd548637?s=96&d=robohash&r=g","caption":"Pruthvi"}}]}</script>
|
||
<!-- / Yoast SEO plugin. -->
|
||
|
||
|
||
<link rel='dns-prefetch' href='//secure.gravatar.com' />
|
||
<link rel='dns-prefetch' href='//www.googletagmanager.com' />
|
||
<link rel='dns-prefetch' href='//widgets.wp.com' />
|
||
<link rel='dns-prefetch' href='//jetpack.wordpress.com' />
|
||
<link rel='dns-prefetch' href='//s0.wp.com' />
|
||
<link rel='dns-prefetch' href='//public-api.wordpress.com' />
|
||
<link rel="alternate" type="application/rss+xml" title="Welcome to Spike's blog » Feed" href="https://spike.sh/blog/feed/" />
|
||
<link rel="preload" href="https://spike.sh/blog/wp-content/themes/spike-theme/assets/fonts/inter-variable.woff2" as="font" type="font/woff2" crossorigin>
|
||
<link rel="preload" href="https://spike.sh/blog/wp-content/themes/spike-theme/assets/fonts/instrument-sans-variable.woff2" as="font" type="font/woff2" crossorigin>
|
||
<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://spike.sh/blog/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fblog.spike.sh%2Fsre-role-2021-analysed-30-job-postings%2F" />
|
||
<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://spike.sh/blog/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fblog.spike.sh%2Fsre-role-2021-analysed-30-job-postings%2F&format=xml" />
|
||
<style id="wp-img-auto-sizes-contain-inline-css">
|
||
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
|
||
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
|
||
</style>
|
||
<style id="classic-theme-styles-inline-css">
|
||
.wp-block-button__link{background-color:#32373c;border-radius:9999px;box-shadow:none;color:#fff;font-size:1.125em;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-file__button{background:#32373c;color:#fff}.wp-block-accordion-heading{margin:0}.wp-block-accordion-heading__toggle{background-color:inherit!important;color:inherit!important}.wp-block-accordion-heading__toggle:not(:focus-visible){outline:none}.wp-block-accordion-heading__toggle:focus,.wp-block-accordion-heading__toggle:hover{background-color:inherit!important;border:none;box-shadow:none;color:inherit;padding:var(--wp--preset--spacing--20,1em) 0;text-decoration:none}.wp-block-accordion-heading__toggle:focus-visible{outline:auto;outline-offset:0}.wp-block-tab:not(.has-text-color){color:inherit!important}.wp-block-tab:not(.has-background){background-color:inherit!important}.wp-block-tab:focus,.wp-block-tab:hover{text-decoration:none}.wp-block-tab:focus-visible{outline:auto;outline-offset:0}
|
||
/*# sourceURL=https://spike.sh/blog/wp-content/plugins/gutenberg/build/styles/block-library/classic.min.css */
|
||
</style>
|
||
|
||
<style id="global-styles-inline-css">
|
||
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-family--albert-sans: 'Albert Sans', sans-serif;--wp--preset--font-family--alegreya: Alegreya, serif;--wp--preset--font-family--arvo: Arvo, serif;--wp--preset--font-family--bodoni-moda: 'Bodoni Moda', serif;--wp--preset--font-family--bricolage-grotesque: 'Bricolage Grotesque', sans-serif;--wp--preset--font-family--cabin: Cabin, sans-serif;--wp--preset--font-family--chivo: Chivo, sans-serif;--wp--preset--font-family--commissioner: Commissioner, sans-serif;--wp--preset--font-family--cormorant: Cormorant, serif;--wp--preset--font-family--courier-prime: 'Courier Prime', monospace;--wp--preset--font-family--crimson-pro: 'Crimson Pro', serif;--wp--preset--font-family--dm-mono: 'DM Mono', monospace;--wp--preset--font-family--dm-sans: 'DM Sans', sans-serif;--wp--preset--font-family--dm-serif-display: 'DM Serif Display', serif;--wp--preset--font-family--domine: Domine, serif;--wp--preset--font-family--eb-garamond: 'EB Garamond', serif;--wp--preset--font-family--epilogue: Epilogue, sans-serif;--wp--preset--font-family--fahkwang: Fahkwang, sans-serif;--wp--preset--font-family--figtree: Figtree, sans-serif;--wp--preset--font-family--fira-sans: 'Fira Sans', sans-serif;--wp--preset--font-family--fjalla-one: 'Fjalla One', sans-serif;--wp--preset--font-family--fraunces: Fraunces, serif;--wp--preset--font-family--gabarito: Gabarito, system-ui;--wp--preset--font-family--ibm-plex-mono: 'IBM Plex Mono', monospace;--wp--preset--font-family--ibm-plex-sans: 'IBM Plex Sans', sans-serif;--wp--preset--font-family--ibarra-real-nova: 'Ibarra Real Nova', serif;--wp--preset--font-family--instrument-serif: 'Instrument Serif', serif;--wp--preset--font-family--inter: Inter, sans-serif;--wp--preset--font-family--josefin-sans: 'Josefin Sans', sans-serif;--wp--preset--font-family--jost: Jost, sans-serif;--wp--preset--font-family--libre-baskerville: 'Libre Baskerville', serif;--wp--preset--font-family--libre-franklin: 'Libre Franklin', sans-serif;--wp--preset--font-family--literata: Literata, serif;--wp--preset--font-family--lora: Lora, serif;--wp--preset--font-family--merriweather: Merriweather, serif;--wp--preset--font-family--montserrat: Montserrat, sans-serif;--wp--preset--font-family--newsreader: Newsreader, serif;--wp--preset--font-family--noto-sans-mono: 'Noto Sans Mono', sans-serif;--wp--preset--font-family--nunito: Nunito, sans-serif;--wp--preset--font-family--open-sans: 'Open Sans', sans-serif;--wp--preset--font-family--overpass: Overpass, sans-serif;--wp--preset--font-family--pt-serif: 'PT Serif', serif;--wp--preset--font-family--petrona: Petrona, serif;--wp--preset--font-family--piazzolla: Piazzolla, serif;--wp--preset--font-family--playfair-display: 'Playfair Display', serif;--wp--preset--font-family--plus-jakarta-sans: 'Plus Jakarta Sans', sans-serif;--wp--preset--font-family--poppins: Poppins, sans-serif;--wp--preset--font-family--raleway: Raleway, sans-serif;--wp--preset--font-family--roboto: Roboto, sans-serif;--wp--preset--font-family--roboto-slab: 'Roboto Slab', serif;--wp--preset--font-family--rubik: Rubik, sans-serif;--wp--preset--font-family--rufina: Rufina, serif;--wp--preset--font-family--sora: Sora, sans-serif;--wp--preset--font-family--source-sans-3: 'Source Sans 3', sans-serif;--wp--preset--font-family--source-serif-4: 'Source Serif 4', serif;--wp--preset--font-family--space-mono: 'Space Mono', monospace;--wp--preset--font-family--syne: Syne, sans-serif;--wp--preset--font-family--texturina: Texturina, serif;--wp--preset--font-family--urbanist: Urbanist, sans-serif;--wp--preset--font-family--work-sans: 'Work Sans', sans-serif;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-albert-sans-font-family{font-family: var(--wp--preset--font-family--albert-sans) !important;}.has-alegreya-font-family{font-family: var(--wp--preset--font-family--alegreya) !important;}.has-arvo-font-family{font-family: var(--wp--preset--font-family--arvo) !important;}.has-bodoni-moda-font-family{font-family: var(--wp--preset--font-family--bodoni-moda) !important;}.has-bricolage-grotesque-font-family{font-family: var(--wp--preset--font-family--bricolage-grotesque) !important;}.has-cabin-font-family{font-family: var(--wp--preset--font-family--cabin) !important;}.has-chivo-font-family{font-family: var(--wp--preset--font-family--chivo) !important;}.has-commissioner-font-family{font-family: var(--wp--preset--font-family--commissioner) !important;}.has-cormorant-font-family{font-family: var(--wp--preset--font-family--cormorant) !important;}.has-courier-prime-font-family{font-family: var(--wp--preset--font-family--courier-prime) !important;}.has-crimson-pro-font-family{font-family: var(--wp--preset--font-family--crimson-pro) !important;}.has-dm-mono-font-family{font-family: var(--wp--preset--font-family--dm-mono) !important;}.has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}.has-dm-serif-display-font-family{font-family: var(--wp--preset--font-family--dm-serif-display) !important;}.has-domine-font-family{font-family: var(--wp--preset--font-family--domine) !important;}.has-eb-garamond-font-family{font-family: var(--wp--preset--font-family--eb-garamond) !important;}.has-epilogue-font-family{font-family: var(--wp--preset--font-family--epilogue) !important;}.has-fahkwang-font-family{font-family: var(--wp--preset--font-family--fahkwang) !important;}.has-figtree-font-family{font-family: var(--wp--preset--font-family--figtree) !important;}.has-fira-sans-font-family{font-family: var(--wp--preset--font-family--fira-sans) !important;}.has-fjalla-one-font-family{font-family: var(--wp--preset--font-family--fjalla-one) !important;}.has-fraunces-font-family{font-family: var(--wp--preset--font-family--fraunces) !important;}.has-gabarito-font-family{font-family: var(--wp--preset--font-family--gabarito) !important;}.has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}.has-ibm-plex-sans-font-family{font-family: var(--wp--preset--font-family--ibm-plex-sans) !important;}.has-ibarra-real-nova-font-family{font-family: var(--wp--preset--font-family--ibarra-real-nova) !important;}.has-instrument-serif-font-family{font-family: var(--wp--preset--font-family--instrument-serif) !important;}.has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}.has-josefin-sans-font-family{font-family: var(--wp--preset--font-family--josefin-sans) !important;}.has-jost-font-family{font-family: var(--wp--preset--font-family--jost) !important;}.has-libre-baskerville-font-family{font-family: var(--wp--preset--font-family--libre-baskerville) !important;}.has-libre-franklin-font-family{font-family: var(--wp--preset--font-family--libre-franklin) !important;}.has-literata-font-family{font-family: var(--wp--preset--font-family--literata) !important;}.has-lora-font-family{font-family: var(--wp--preset--font-family--lora) !important;}.has-merriweather-font-family{font-family: var(--wp--preset--font-family--merriweather) !important;}.has-montserrat-font-family{font-family: var(--wp--preset--font-family--montserrat) !important;}.has-newsreader-font-family{font-family: var(--wp--preset--font-family--newsreader) !important;}.has-noto-sans-mono-font-family{font-family: var(--wp--preset--font-family--noto-sans-mono) !important;}.has-nunito-font-family{font-family: var(--wp--preset--font-family--nunito) !important;}.has-open-sans-font-family{font-family: var(--wp--preset--font-family--open-sans) !important;}.has-overpass-font-family{font-family: var(--wp--preset--font-family--overpass) !important;}.has-pt-serif-font-family{font-family: var(--wp--preset--font-family--pt-serif) !important;}.has-petrona-font-family{font-family: var(--wp--preset--font-family--petrona) !important;}.has-piazzolla-font-family{font-family: var(--wp--preset--font-family--piazzolla) !important;}.has-playfair-display-font-family{font-family: var(--wp--preset--font-family--playfair-display) !important;}.has-plus-jakarta-sans-font-family{font-family: var(--wp--preset--font-family--plus-jakarta-sans) !important;}.has-poppins-font-family{font-family: var(--wp--preset--font-family--poppins) !important;}.has-raleway-font-family{font-family: var(--wp--preset--font-family--raleway) !important;}.has-roboto-font-family{font-family: var(--wp--preset--font-family--roboto) !important;}.has-roboto-slab-font-family{font-family: var(--wp--preset--font-family--roboto-slab) !important;}.has-rubik-font-family{font-family: var(--wp--preset--font-family--rubik) !important;}.has-rufina-font-family{font-family: var(--wp--preset--font-family--rufina) !important;}.has-sora-font-family{font-family: var(--wp--preset--font-family--sora) !important;}.has-source-sans-3-font-family{font-family: var(--wp--preset--font-family--source-sans-3) !important;}.has-source-serif-4-font-family{font-family: var(--wp--preset--font-family--source-serif-4) !important;}.has-space-mono-font-family{font-family: var(--wp--preset--font-family--space-mono) !important;}.has-syne-font-family{font-family: var(--wp--preset--font-family--syne) !important;}.has-texturina-font-family{font-family: var(--wp--preset--font-family--texturina) !important;}.has-urbanist-font-family{font-family: var(--wp--preset--font-family--urbanist) !important;}.has-work-sans-font-family{font-family: var(--wp--preset--font-family--work-sans) !important;}
|
||
/*# sourceURL=global-styles-inline-css */
|
||
</style>
|
||
|
||
<style id="jetpack-stats-inline-css">
|
||
img#wpstats{display:none}
|
||
/*# sourceURL=jetpack-stats-inline-css */
|
||
</style>
|
||
<link rel='stylesheet' id='all-css-0d2ef12d9ff891953edde4fe41229787' href='https://spike.sh/blog/_static/??-eJx9jU0KAjEMhS9kjSOo3YhnqTFqnaYtvpTB29uRWYm4CS9872eqjks2yUZ2FxUQahzFfR4KgBjo2h3LXTOwmv6GYK8k376a2i1m0EOsBh5Jy6WlHuSiKnM72hn8jNViya7TkFwXC/5B54GTHoeD97vtsNn7NwCJTHs=' type='text/css' media='all' />
|
||
<link rel='stylesheet' id='open-sans-css' href='https://fonts-api.wp.com/css?family=Open+Sans:300italic,400italic,600italic,300,400,600&subset=latin,latin-ext&display=fallback&ver=7.1' media='all' />
|
||
<link rel='stylesheet' id='all-css-c79b01e9ccfe10ded7e87d43f85d8768' href='https://spike.sh/blog/wp-content/plugins/jetpack/modules/likes/style.css?m=1765799636' type='text/css' media='all' />
|
||
<style id="jetpack-global-styles-frontend-style-inline-css">
|
||
:root { --font-headings: unset; --font-base: unset; --font-headings-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; --font-base-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;}
|
||
/*# sourceURL=jetpack-global-styles-frontend-style-inline-css */
|
||
</style>
|
||
<script id="jetpack-mu-wpcom-settings-js-before">
|
||
var JETPACK_MU_WPCOM_SETTINGS = {"assetsUrl":"https://spike.sh/blog/wp-content/mu-plugins/wpcomsh/jetpack_vendor/automattic/jetpack-mu-wpcom/src/build/"};
|
||
//# sourceURL=jetpack-mu-wpcom-settings-js-before
|
||
</script>
|
||
|
||
<!-- Google tag (gtag.js) snippet added by Site Kit -->
|
||
<!-- Google Analytics snippet added by Site Kit -->
|
||
<script id="google_gtagjs-js" src="https://www.googletagmanager.com/gtag/js?id=G-42PQH8CQ4E" async></script>
|
||
<script id="google_gtagjs-js-after">
|
||
window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}
|
||
gtag("set","linker",{"domains":["blog.spike.sh"]});
|
||
gtag("js", new Date());
|
||
gtag("set", "developer_id.dZTNiMT", true);
|
||
gtag("config", "G-42PQH8CQ4E");
|
||
window._googlesitekit = window._googlesitekit || {}; window._googlesitekit.throttledEvents = []; window._googlesitekit.gtagEvent = (name, data) => { var key = JSON.stringify( { name, data } ); if ( !! window._googlesitekit.throttledEvents[ key ] ) { return; } window._googlesitekit.throttledEvents[ key ] = true; setTimeout( () => { delete window._googlesitekit.throttledEvents[ key ]; }, 5 ); gtag( "event", name, { ...data, event_source: "site-kit" } ); };
|
||
//# sourceURL=google_gtagjs-js-after
|
||
</script>
|
||
<meta name="generator" content="Site Kit by Google 1.187.0" /><link rel="icon" href="https://spike.sh/blog/wp-content/uploads/2026/07/cropped-Spike-symbol-32x32.png" sizes="32x32" />
|
||
<link rel="icon" href="https://spike.sh/blog/wp-content/uploads/2026/07/cropped-Spike-symbol-192x192.png" sizes="192x192" />
|
||
<link rel="apple-touch-icon" href="https://spike.sh/blog/wp-content/uploads/2026/07/cropped-Spike-symbol-180x180.png" />
|
||
<meta name="msapplication-TileImage" content="https://spike.sh/blog/wp-content/uploads/2026/07/cropped-Spike-symbol-270x270.png" />
|
||
<link rel='stylesheet' id='all-css-ab069cc4a511e443def3f1a604f96902' href='https://spike.sh/blog/wp-content/plugins/gutenberg/build/styles/block-library/group/style.min.css?m=1768920176' type='text/css' media='all' />
|
||
<style id="wp-block-separator-inline-css">
|
||
@charset "UTF-8";.wp-block-separator{border:none;border-top:2px solid}:root :where(.wp-block-separator.is-style-dots){height:auto;line-height:1;text-align:center}:root :where(.wp-block-separator.is-style-dots):before{color:currentColor;content:"···";font-family:serif;font-size:1.5em;letter-spacing:2em;padding-left:2em}.wp-block-separator.is-style-dots{background:none!important;border:none!important}
|
||
/*# sourceURL=https://spike.sh/blog/wp-content/plugins/gutenberg/build/styles/block-library/separator/style.min.css */
|
||
</style>
|
||
<style id="wp-block-heading-inline-css">
|
||
h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg}
|
||
/*# sourceURL=https://spike.sh/blog/wp-content/plugins/gutenberg/build/styles/block-library/heading/style.min.css */
|
||
</style>
|
||
<style id="wp-block-image-inline-css">
|
||
.wp-block-image>a,.wp-block-image>figure>a{display:inline-block}.wp-block-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom}@media not (prefers-reduced-motion){.wp-block-image img.hide{visibility:hidden}.wp-block-image img.show{animation:show-content-image .4s}}.wp-block-image[style*=border-radius] img,.wp-block-image[style*=border-radius]>a{border-radius:inherit}.wp-block-image.has-custom-border img{box-sizing:border-box}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull>a,.wp-block-image.alignwide>a{width:100%}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption,.wp-block-image.aligncenter>figcaption,.wp-block-image.alignleft>figcaption,.wp-block-image.alignright>figcaption{caption-side:bottom;display:table-caption}.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-image.is-style-circle-mask img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius:9999px}.wp-block-image figure{margin:0}.wp-lightbox-container{display:flex;flex-direction:column;position:relative}.wp-lightbox-container img{cursor:zoom-in}.wp-lightbox-container img:hover+button{opacity:1}.wp-lightbox-container button{align-items:center;backdrop-filter:blur(16px) saturate(180%);background-color:rgba(90,90,90,.25);border:none;border-radius:4px;cursor:zoom-in;display:flex;height:20px;justify-content:center;opacity:0;padding:0;position:absolute;right:16px;text-align:center;top:16px;width:20px;z-index:100}@media not (prefers-reduced-motion){.wp-lightbox-container button{transition:opacity .2s ease}}.wp-lightbox-container button:focus-visible{outline:3px auto rgba(90,90,90,.25);outline:3px auto -webkit-focus-ring-color;outline-offset:3px}.wp-lightbox-container button:hover{cursor:pointer;opacity:1}.wp-lightbox-container button:focus{opacity:1}.wp-lightbox-container button:focus,.wp-lightbox-container button:hover,.wp-lightbox-container button:not(:hover):not(:active):not(.has-background){background-color:rgba(90,90,90,.25);border:none}.wp-lightbox-overlay{box-sizing:border-box;cursor:zoom-out;height:100vh;left:0;overflow:hidden;position:fixed;top:0;visibility:hidden;width:100%;z-index:100000}.wp-lightbox-overlay .wp-lightbox-close-button{align-items:center;cursor:pointer;display:flex;font-family:inherit;gap:8px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 4px;position:absolute;right:calc(env(safe-area-inset-right) + 16px);top:calc(env(safe-area-inset-top) + 16px);z-index:5000000}.wp-lightbox-overlay .wp-lightbox-close-button:focus,.wp-lightbox-overlay .wp-lightbox-close-button:hover,.wp-lightbox-overlay .wp-lightbox-close-button:not(:hover):not(:active):not(.has-background){background:none;border:none}.wp-lightbox-overlay .wp-lightbox-close-button:has(.wp-lightbox-close-text:not([hidden])) .wp-lightbox-close-icon svg{height:1em;width:1em}.wp-lightbox-overlay .wp-lightbox-close-icon svg{display:block}.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{align-items:center;bottom:16px;cursor:pointer;display:flex;font-family:inherit;gap:4px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 8px;position:absolute;z-index:2000002}.wp-lightbox-overlay .wp-lightbox-navigation-button-next[hidden],.wp-lightbox-overlay .wp-lightbox-navigation-button-prev[hidden]{display:none}@media (min-width:960px){.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{bottom:50%;transform:translateY(-50%)}}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:not(:hover):not(:active):not(.has-background),.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:not(:hover):not(:active):not(.has-background){background:none;border:none;padding:0 8px}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg{display:block;height:1.5em;width:1.5em}.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{left:calc(env(safe-area-inset-left) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-button-next{right:calc(env(safe-area-inset-right) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-icon svg{vertical-align:middle}.wp-lightbox-overlay .lightbox-image-container{height:var(--wp--lightbox-container-height);left:50%;overflow:hidden;position:absolute;top:50%;transform:translate(-50%,-50%);transform-origin:top left;width:var(--wp--lightbox-container-width);z-index:2000001}.wp-lightbox-overlay .wp-block-image{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:center;margin:0;position:relative;transform-origin:0 0;width:100%;z-index:3000000}.wp-lightbox-overlay .wp-block-image img{height:var(--wp--lightbox-image-height);min-height:var(--wp--lightbox-image-height);min-width:var(--wp--lightbox-image-width);width:var(--wp--lightbox-image-width)}.wp-lightbox-overlay .wp-block-image figcaption{display:none}.wp-lightbox-overlay button{background:none;border:none}.wp-lightbox-overlay .scrim{background-color:#fff;height:100%;opacity:.9;position:absolute;width:100%;z-index:2000000}.wp-lightbox-overlay.active{visibility:visible}@media not (prefers-reduced-motion){.wp-lightbox-overlay.active{animation:turn-on-visibility .25s both}.wp-lightbox-overlay.active img{animation:turn-on-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active){animation:turn-off-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active) img{animation:turn-off-visibility .25s both}.wp-lightbox-overlay.zoom.active{animation:none;opacity:1;visibility:visible}.wp-lightbox-overlay.zoom.active .lightbox-image-container{animation:lightbox-zoom-in .4s}.wp-lightbox-overlay.zoom.active .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.active .scrim{animation:turn-on-visibility .4s forwards}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active){animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container{animation:lightbox-zoom-out .4s}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .scrim{animation:turn-off-visibility .4s forwards}}@keyframes show-content-image{0%{visibility:hidden}99%{visibility:hidden}to{visibility:visible}}@keyframes turn-on-visibility{0%{opacity:0}to{opacity:1}}@keyframes turn-off-visibility{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes lightbox-zoom-in{0%{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale))}to{transform:translate(-50%,-50%) scale(1)}}@keyframes lightbox-zoom-out{0%{transform:translate(-50%,-50%) scale(1);visibility:visible}99%{visibility:visible}to{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale));visibility:hidden}}
|
||
/*# sourceURL=https://spike.sh/blog/wp-content/plugins/gutenberg/build/styles/block-library/image/style.min.css */
|
||
</style>
|
||
<style id="wp-block-list-inline-css">
|
||
ol,ul{box-sizing:border-box}:root :where(.wp-block-list.has-background){padding:1.25em 2.375em}
|
||
/*# sourceURL=https://spike.sh/blog/wp-content/plugins/gutenberg/build/styles/block-library/list/style.min.css */
|
||
</style>
|
||
<style id="wp-block-paragraph-inline-css">
|
||
.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg}
|
||
/*# sourceURL=https://spike.sh/blog/wp-content/plugins/gutenberg/build/styles/block-library/paragraph/style.min.css */
|
||
</style>
|
||
<link rel='stylesheet' id='all-css-a267a5fa3cdc06de6a6c5e3770267f4d' href='https://spike.sh/blog/_static/??-eJx1jMsKgCAQAH8o24QiL9GnhG1LmE9cxd+PDh67zjDTksAYCoUCydXbBIaHStJo4TAB4XQRLQM3kyiPyDy0/8LHqzpiQJ1jZXJdiA6+we43uapFTVLN8wtFFC9D' type='text/css' media='all' />
|
||
<link rel='stylesheet' id='all-css-2e5e91f9bfcd7efc0d8eac49d8fdd1c1' href='https://spike.sh/blog/wp-content/plugins/jetpack/_inc/blocks/subscriptions/view.css?m=1779184514' type='text/css' media='all' />
|
||
|
||
</head>
|
||
<body class="wp-singular post-template-default single single-post postid-314 single-format-standard wp-theme-spike-theme">
|
||
|
||
|
||
<header class="spike-site-header" id="spike-site-header">
|
||
<div class="spike-site-header__inner">
|
||
|
||
<div class="spike-site-header__logo-group">
|
||
<div class="spike-site-header__logo-wrap">
|
||
<a href="https://spike.sh" class="spike-site-header__logo" target="_blank" rel="noopener noreferrer" aria-label="spike.sh">
|
||
<img
|
||
src="https://spike.sh/blog/wp-content/themes/spike-theme/assets/images/spike-2.0.svg"
|
||
alt="spike.sh"
|
||
class="spike-logo__img spike-logo__img--full"
|
||
>
|
||
<img
|
||
src="https://spike.sh/blog/wp-content/themes/spike-theme/assets/images/spike-2.0-symbol.svg"
|
||
alt="spike.sh"
|
||
class="spike-logo__img spike-logo__img--symbol"
|
||
>
|
||
</a>
|
||
<a href="https://spike.sh/blog/" class="spike-site-header__logo-suffix" aria-label="Blog">blog</a>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Category browse nav; each pill links straight to its real WordPress
|
||
category archive (/category/<slug>/), not client-side filtering.
|
||
Nothing is marked active on load, matching the homepage hero pill
|
||
nav's "Show more" overflow behavior (see category-pills.js). -->
|
||
<nav class="spike-site-nav" id="spike-primary-nav" aria-label="Browse categories">
|
||
<div class="spike-pill-nav spike-pill-nav--header">
|
||
<div class="spike-pill-nav__row">
|
||
<a href="https://spike.sh/blog/category/building-spike/"
|
||
class="spike-pill">
|
||
Building Spike
|
||
</a>
|
||
<a href="https://spike.sh/blog/category/alerting/"
|
||
class="spike-pill"
|
||
>
|
||
Alerting </a>
|
||
<a href="https://spike.sh/blog/category/escalation-policies/"
|
||
class="spike-pill"
|
||
>
|
||
Escalation policies </a>
|
||
<a href="https://spike.sh/blog/category/alert-routing/"
|
||
class="spike-pill"
|
||
>
|
||
Alert routing </a>
|
||
<a href="https://spike.sh/blog/category/on-call/"
|
||
class="spike-pill"
|
||
>
|
||
On-call </a>
|
||
<a href="https://spike.sh/blog/category/incident-response/"
|
||
class="spike-pill"
|
||
>
|
||
Incident response </a>
|
||
<a href="https://spike.sh/blog/category/critical-incidents/"
|
||
class="spike-pill"
|
||
>
|
||
Critical incidents </a>
|
||
<a href="https://spike.sh/blog/category/best-practices/"
|
||
class="spike-pill"
|
||
>
|
||
Best practices </a>
|
||
<a href="https://spike.sh/blog/category/chatops/"
|
||
class="spike-pill"
|
||
data-force-dropdown="1">
|
||
ChatOps </a>
|
||
<a href="https://spike.sh/blog/category/incident-communication/"
|
||
class="spike-pill"
|
||
data-force-dropdown="1">
|
||
Incident communication </a>
|
||
|
||
<div class="spike-pill-nav__dropdown-wrap" hidden>
|
||
<button type="button" class="spike-pill-nav__more" aria-expanded="false">
|
||
more
|
||
</button>
|
||
<div class="spike-pill-nav__dropdown"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
<div class="spike-site-header__right">
|
||
<button type="button" class="spike-search-toggle" id="spike-search-toggle-desktop" aria-label="Search" aria-expanded="false" aria-controls="spike-search-panel">
|
||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>
|
||
</button>
|
||
<a href="https://app.spike.sh/signup" class="spike-site-header__cta">Try Spike</a>
|
||
</div>
|
||
|
||
<div class="spike-mobile-header-actions">
|
||
<a href="https://app.spike.sh/signup" class="spike-site-header__cta spike-mobile-header-actions__cta">Try Spike</a>
|
||
<button class="spike-hamburger" id="spike-hamburger" aria-expanded="false" aria-label="Open menu" aria-controls="spike-mobile-nav">
|
||
<span></span>
|
||
<span></span>
|
||
<span></span>
|
||
</button>
|
||
</div>
|
||
|
||
<!-- Standalone (not nested in spike-mobile-header-actions) so it can sit
|
||
directly to the left of the dark-mode toggle in mobile flex order --
|
||
see .spike-search-toggle--mobile in style.css. -->
|
||
<button type="button" class="spike-search-toggle spike-search-toggle--mobile" id="spike-search-toggle-mobile" aria-label="Search" aria-expanded="false" aria-controls="spike-search-panel">
|
||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>
|
||
</button>
|
||
|
||
<button class="spike-dark-mode-toggle" id="spike-dark-mode-toggle" aria-label="Toggle dark mode">
|
||
<svg class="spike-icon-sun" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
|
||
<svg class="spike-icon-moon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
|
||
</button>
|
||
</div>
|
||
</header>
|
||
|
||
<!-- Faint backdrop behind the search panel -- also doubles as a click target:
|
||
it isn't part of .spike-search-panel__inner, so search.js's existing
|
||
outside-click handler closes the panel when this is clicked, no extra
|
||
JS needed. -->
|
||
<div class="spike-search-overlay" id="spike-search-overlay" hidden></div>
|
||
|
||
<div class="spike-search-panel" id="spike-search-panel" hidden>
|
||
<div class="spike-search-panel__inner">
|
||
<form class="spike-search-panel__form" role="search" action="/blog/" method="get" id="spike-search-form">
|
||
<svg class="spike-search-panel__icon" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>
|
||
<input type="search" name="s" id="spike-search-input" class="spike-search-panel__input" placeholder="Search articles..." autocomplete="off" aria-label="Search articles" role="combobox" aria-expanded="false" aria-controls="spike-search-results" aria-autocomplete="list">
|
||
<!-- Single X: clears the query while one is typed, closes the panel
|
||
once it's empty -- see search.js's onClearOrClose(). Replaces the
|
||
earlier separate clear + close buttons, which stacked two
|
||
identical X icons next to each other. -->
|
||
<button type="button" class="spike-search-panel__close" id="spike-search-close" aria-label="Close search">
|
||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
|
||
</button>
|
||
</form>
|
||
<div class="spike-search-panel__results" id="spike-search-results" role="listbox"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="spike-mobile-nav" id="spike-mobile-nav" aria-hidden="true">
|
||
<ul class="spike-mobile-nav__list">
|
||
<!-- Search lives inside the hamburger drawer on mobile (the standalone
|
||
header search button is hidden below 1024px). Tapping this closes the
|
||
drawer and opens the shared search panel -- see the inline script. -->
|
||
<li>
|
||
<button type="button" class="spike-mobile-nav__link spike-mobile-nav__link--search" id="spike-search-toggle-nav" aria-label="Search" aria-controls="spike-search-panel">
|
||
<span>Search</span>
|
||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>
|
||
</button>
|
||
</li>
|
||
<li><a href="https://spike.sh/blog/category/building-spike/" class="spike-mobile-nav__link">Building Spike</a></li>
|
||
<li><a href="https://spike.sh/blog/category/alerting/" class="spike-mobile-nav__link">Alerting</a></li>
|
||
<li><a href="https://spike.sh/blog/category/escalation-policies/" class="spike-mobile-nav__link">Escalation policies</a></li>
|
||
<li><a href="https://spike.sh/blog/category/alert-routing/" class="spike-mobile-nav__link">Alert routing</a></li>
|
||
<li><a href="https://spike.sh/blog/category/on-call/" class="spike-mobile-nav__link">On-call</a></li>
|
||
<li><a href="https://spike.sh/blog/category/incident-response/" class="spike-mobile-nav__link">Incident response</a></li>
|
||
<li><a href="https://spike.sh/blog/category/critical-incidents/" class="spike-mobile-nav__link">Critical incidents</a></li>
|
||
<li><a href="https://spike.sh/blog/category/best-practices/" class="spike-mobile-nav__link">Best practices</a></li>
|
||
<li><a href="https://spike.sh/blog/category/chatops/" class="spike-mobile-nav__link">ChatOps</a></li>
|
||
<li><a href="https://spike.sh/blog/category/incident-communication/" class="spike-mobile-nav__link">Incident communication</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<script>
|
||
(function() {
|
||
// ── Mobile hamburger ───────────────────────────────────────────────────
|
||
var hamburger = document.getElementById('spike-hamburger');
|
||
var mobileNav = document.getElementById('spike-mobile-nav');
|
||
var siteHeader = document.getElementById('spike-site-header');
|
||
if (!hamburger || !mobileNav) return;
|
||
|
||
function openMenu() {
|
||
mobileNav.style.top = (siteHeader ? siteHeader.offsetHeight : 63) + 'px';
|
||
mobileNav.classList.add('is-open');
|
||
mobileNav.setAttribute('aria-hidden', 'false');
|
||
hamburger.setAttribute('aria-expanded', 'true');
|
||
document.body.style.overflow = 'hidden';
|
||
document.body.classList.add('spike-mobile-nav-open');
|
||
}
|
||
|
||
function closeMenu() {
|
||
mobileNav.classList.remove('is-open');
|
||
mobileNav.setAttribute('aria-hidden', 'true');
|
||
hamburger.setAttribute('aria-expanded', 'false');
|
||
document.body.style.overflow = '';
|
||
document.body.classList.remove('spike-mobile-nav-open');
|
||
}
|
||
|
||
hamburger.addEventListener('click', function() {
|
||
mobileNav.classList.contains('is-open') ? closeMenu() : openMenu();
|
||
});
|
||
|
||
// Search row inside the drawer: close the drawer, then fire the hidden
|
||
// standalone mobile search button so search.js opens its panel -- no
|
||
// change needed to search.js itself.
|
||
var navSearch = document.getElementById('spike-search-toggle-nav');
|
||
if (navSearch) {
|
||
navSearch.addEventListener('click', function() {
|
||
closeMenu();
|
||
var mobileToggle = document.getElementById('spike-search-toggle-mobile');
|
||
if (mobileToggle) mobileToggle.click();
|
||
});
|
||
}
|
||
|
||
document.addEventListener('keydown', function(e) {
|
||
if (e.key === 'Escape') closeMenu();
|
||
});
|
||
|
||
// ── Hide header on scroll-down, reveal on scroll-up (mobile only) ──────
|
||
var lastScrollY = window.pageYOffset;
|
||
var SCROLL_THRESHOLD = 60; // px from top where hiding activates
|
||
window.addEventListener('scroll', function() {
|
||
if (window.innerWidth > 1024) return;
|
||
var currentScrollY = window.pageYOffset;
|
||
if (currentScrollY < SCROLL_THRESHOLD) {
|
||
siteHeader.classList.remove('spike-header--hidden');
|
||
} else if (currentScrollY > lastScrollY) {
|
||
siteHeader.classList.add('spike-header--hidden');
|
||
} else {
|
||
siteHeader.classList.remove('spike-header--hidden');
|
||
}
|
||
lastScrollY = currentScrollY;
|
||
}, { passive: true });
|
||
})();
|
||
|
||
(function() {
|
||
// ── Header re-themes to match a dark hero while it's still in view ─────
|
||
// The header's initial dark/light class is rendered server-side (see the
|
||
// $spike_header_on_dark_hero PHP above) so there's no flash on load, but
|
||
// that's a static per-page choice -- it doesn't know the hero scrolls
|
||
// out of view further down the page into a light-background section.
|
||
// Any hero that wants this behavior marks itself with
|
||
// [data-header-dark-hero]; while its bottom edge is still below the
|
||
// sticky header, the header stays dark, then reverts to light once the
|
||
// hero has scrolled fully behind it.
|
||
//
|
||
// This script runs (and this file prints) before the hero markup further
|
||
// down the page exists in the DOM -- header.php's output always precedes
|
||
// the page template's -- so the querySelector has to wait for
|
||
// DOMContentLoaded instead of running immediately like the block above.
|
||
document.addEventListener('DOMContentLoaded', function() {
|
||
var darkHero = document.querySelector('[data-header-dark-hero]');
|
||
var siteHeader = document.getElementById('spike-site-header');
|
||
var mobileNav = document.getElementById('spike-mobile-nav');
|
||
// Optional: a condensed title bar (e.g. journey-archive.php's
|
||
// .spike-journey-archive__sticky-bar) that should only appear once
|
||
// the hero has scrolled out from under the header -- the inverse of
|
||
// the header's own dark/light state below.
|
||
var stickyBar = document.querySelector('[data-sticky-title-bar]');
|
||
if (!darkHero || !siteHeader) return;
|
||
|
||
function syncHeaderTheme() {
|
||
var headerHeight = siteHeader.offsetHeight;
|
||
var stillOverHero = darkHero.getBoundingClientRect().bottom > headerHeight;
|
||
siteHeader.classList.toggle('dark', stillOverHero);
|
||
if (mobileNav) mobileNav.classList.toggle('dark', stillOverHero);
|
||
if (stickyBar) {
|
||
stickyBar.style.top = headerHeight + 'px';
|
||
stickyBar.classList.toggle('is-visible', !stillOverHero);
|
||
}
|
||
}
|
||
|
||
syncHeaderTheme();
|
||
window.addEventListener('scroll', syncHeaderTheme, { passive: true });
|
||
window.addEventListener('resize', syncHeaderTheme);
|
||
});
|
||
})();
|
||
</script>
|
||
|
||
<main class="spike-single">
|
||
|
||
|
||
|
||
<nav class="spike-toc" id="spike-toc">
|
||
<button class="spike-toc__toggle" id="spike-toc-toggle" aria-expanded="false" aria-controls="spike-toc-list">
|
||
<span class="spike-toc__label">OUTLINE</span>
|
||
<span class="spike-toc__icon-wrap">
|
||
<svg class="spike-toc__icon spike-toc__icon--menu" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||
<line x1="3" y1="6" x2="21" y2="6"></line>
|
||
<line x1="3" y1="12" x2="21" y2="12"></line>
|
||
<line x1="3" y1="18" x2="21" y2="18"></line>
|
||
</svg>
|
||
<svg class="spike-toc__icon spike-toc__icon--close" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||
<line x1="18" y1="6" x2="6" y2="18"></line>
|
||
<line x1="6" y1="6" x2="18" y2="18"></line>
|
||
</svg>
|
||
</span>
|
||
</button>
|
||
<ol class="spike-toc__list" id="spike-toc-list">
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="introduction">
|
||
<a href="#introduction" class="spike-toc__link">Introduction</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="findings">
|
||
<a href="#findings" class="spike-toc__link">Findings</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="deploy-and-maintain-infrastructure">
|
||
<a href="#deploy-and-maintain-infrastructure" class="spike-toc__link">Deploy and maintain infrastructure</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="define-and-manage-slo-sli-and-error-budgets">
|
||
<a href="#define-and-manage-slo-sli-and-error-budgets" class="spike-toc__link">Define and manage SLO, SLI and error budgets</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="setup-monitoring-and-alerts">
|
||
<a href="#setup-monitoring-and-alerts" class="spike-toc__link">Setup monitoring and alerts</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="be-on-call-respond-to-incidents-and-conduct-post-mortems">
|
||
<a href="#be-on-call-respond-to-incidents-and-conduct-post-mortems" class="spike-toc__link">Be on call, respond to incidents and conduct post-mortems</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="build-tools-and-automations">
|
||
<a href="#build-tools-and-automations" class="spike-toc__link">Build tools and automations</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="other-responsibilities">
|
||
<a href="#other-responsibilities" class="spike-toc__link">Other responsibilities</a>
|
||
</li>
|
||
<li class="spike-toc__item spike-toc__item--h2" data-slug="conclusion">
|
||
<a href="#conclusion" class="spike-toc__link">Conclusion</a>
|
||
</li>
|
||
</ol>
|
||
</nav>
|
||
|
||
<!-- Mobile TOC: Glass Outline Group -->
|
||
<div class="spike-toc-m" id="spike-toc-m">
|
||
<div class="spike-toc-m__backdrop" id="spike-toc-m-backdrop"></div>
|
||
<div class="spike-toc-m__sheet" id="spike-toc-m-sheet" aria-hidden="true">
|
||
<div class="spike-toc-m__handle"></div>
|
||
<div class="spike-toc-m__header">
|
||
<span class="spike-toc-m__title">Outline</span>
|
||
<button class="spike-toc-m__close-btn" id="spike-toc-m-close" aria-label="Close outline">
|
||
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
|
||
</button>
|
||
</div>
|
||
<ol class="spike-toc-m__list" id="spike-toc-m-list">
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#introduction" class="spike-toc-m__link">Introduction</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#findings" class="spike-toc-m__link">Findings</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#deploy-and-maintain-infrastructure" class="spike-toc-m__link">Deploy and maintain infrastructure</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#define-and-manage-slo-sli-and-error-budgets" class="spike-toc-m__link">Define and manage SLO, SLI and error budgets</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#setup-monitoring-and-alerts" class="spike-toc-m__link">Setup monitoring and alerts</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#be-on-call-respond-to-incidents-and-conduct-post-mortems" class="spike-toc-m__link">Be on call, respond to incidents and conduct post-mortems</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#build-tools-and-automations" class="spike-toc-m__link">Build tools and automations</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#other-responsibilities" class="spike-toc-m__link">Other responsibilities</a>
|
||
</li>
|
||
<li class="spike-toc-m__item spike-toc-m__item--h2">
|
||
<a href="#conclusion" class="spike-toc-m__link">Conclusion</a>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
<div class="spike-toc-m__pill-anchor">
|
||
<div class="spike-toc-m__pill" id="spike-toc-m-pill" role="button" tabindex="0" aria-expanded="false">
|
||
<div class="spike-toc-m__pill-group">
|
||
<span>Outline</span>
|
||
<svg class="spike-toc-m__pill-chev" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="18 15 12 9 6 15"></polyline></svg>
|
||
</div>
|
||
<button class="spike-toc-m__pill-x" id="spike-toc-m-x" aria-label="Toggle outline">
|
||
<span class="spike-toc-m__icon-x">
|
||
<svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
|
||
</span>
|
||
<span class="spike-toc-m__icon-back">
|
||
<svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="15 18 9 12 15 6"></polyline></svg>
|
||
</span>
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<article class="spike-article post-314 post type-post status-publish format-standard has-post-thumbnail hentry category-uncategorised tag-founder tag-sre">
|
||
|
||
<!-- Only the "Blog" root is rendered here, identically for every visitor,
|
||
because this markup gets full-page cached. The "> <Collection>" /
|
||
"> <Category>" segment naming the archive this visitor came through
|
||
is appended per page view by assets/js/breadcrumb.js, which reads the
|
||
referrer in the browser -- see that file for why the server can't. -->
|
||
<nav class="spike-breadcrumb" id="spike-breadcrumb" aria-label="Breadcrumb">
|
||
<a href="https://spike.sh/blog/" class="spike-breadcrumb__link"><span class="spike-breadcrumb__arrow" aria-hidden="true">←</span> Blog</a>
|
||
</nav>
|
||
|
||
<header class="spike-article__header">
|
||
|
||
<h1 class="spike-article__title">What is expected in the SRE role? We analyzed 30 job postings to find out.</h1>
|
||
|
||
|
||
<div class="spike-article__meta">
|
||
<div class="spike-article__cats">
|
||
<a href="https://spike.sh/blog/category/uncategorised/" class="spike-cat-link">
|
||
Uncategorized </a>
|
||
</div>
|
||
<span class="spike-article__dot">·</span>
|
||
<span class="spike-article__readtime">7 MIN READ</span>
|
||
</div>
|
||
|
||
<hr class="spike-article__divider">
|
||
|
||
<div class="spike-article__author">
|
||
<div class="spike-author__avatar-wrap">
|
||
<img alt='Pruthvi' src='https://secure.gravatar.com/avatar/e9476164464b4c9fb3455f2ee4879aad90f1790dce018e71caeaca2cbd548637?s=40&d=robohash&r=g' srcset='https://secure.gravatar.com/avatar/e9476164464b4c9fb3455f2ee4879aad90f1790dce018e71caeaca2cbd548637?s=80&d=robohash&r=g 2x' class='avatar avatar-40 photo spike-author__avatar' height='40' width='40' decoding='async'/> </div>
|
||
<div class="spike-author__info">
|
||
<span class="spike-author__name">Pruthvi</span>
|
||
<time class="spike-author__date" datetime="2021-09-21T10:47:35+05:30">
|
||
21st September, 2021 </time>
|
||
</div>
|
||
</div>
|
||
|
||
</header>
|
||
|
||
<div class="spike-article__thumbnail">
|
||
<img width="1024" height="555" src="https://spike.sh/blog/wp-content/uploads/2021/09/003-1024x555.png" class="attachment-large size-large wp-post-image" alt="" loading="eager" fetchpriority="high" decoding="async" srcset="https://spike.sh/blog/wp-content/uploads/2021/09/003-1024x555.png 1024w, https://spike.sh/blog/wp-content/uploads/2021/09/003-300x163.png 300w, https://spike.sh/blog/wp-content/uploads/2021/09/003-768x416.png 768w, https://spike.sh/blog/wp-content/uploads/2021/09/003-1536x833.png 1536w, https://spike.sh/blog/wp-content/uploads/2021/09/003-2048x1111.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" data-attachment-id="795" data-permalink="https://spike.sh/blog/sre-role-2021-analysed-30-job-postings/attachment/003/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2021/09/003.png" data-orig-size="2080,1128" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}" data-image-title="003" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2021/09/003-1024x555.png" /> </div>
|
||
|
||
<div class="spike-article__content">
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="introduction"><strong>Introduction</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">In 2016, Google released the definitive <a href="https://sre.google/sre-book/preface/">book on Site Reliability Engineering (SRE)</a> – a practice that had originated in the company to take care of a monumental problem – how to keep the Google services running with high reliability. Over the years, SRE has been widely adopted by dev teams across the globe and is a popular role at startups and enterprises alike.</p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Here is a look at how search for SRE has trended over the years. </p>
|
||
|
||
|
||
|
||
<figure class="wp-block-image size-full kg-card kg-image-card kg-card-hascaption"><img decoding="async" width="842" height="351" data-attachment-id="793" data-permalink="https://spike.sh/blog/sre-role-2021-analysed-30-job-postings/spike-sh-sre-search-trend/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2021/09/spike.sh-sre-search-trend.png" data-orig-size="842,351" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}" data-image-title="spike.sh&#8212;sre-search-trend" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2021/09/spike.sh-sre-search-trend.png" src="https://spike.sh/blog/wp-content/uploads/2021/09/spike.sh-sre-search-trend.png" alt="" class="wp-image-793" srcset="https://spike.sh/blog/wp-content/uploads/2021/09/spike.sh-sre-search-trend.png 842w, https://spike.sh/blog/wp-content/uploads/2021/09/spike.sh-sre-search-trend-300x125.png 300w, https://spike.sh/blog/wp-content/uploads/2021/09/spike.sh-sre-search-trend-768x320.png 768w" sizes="(max-width: 842px) 100vw, 842px" /><figcaption class="wp-element-caption">SRE search trend</figcaption></figure>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">But as with any new practice, we are still building an understanding about what SREs should actually do. What responsibilities are core to the role? And while we can read books and watch videos to understand it, it does not paint a clear picture of what is expected of SREs in a normal day or week. </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">So we decided to analyse job descriptions for SRE roles from major companies and compile the top responsibilities of the role. Here’s the result of analyzing 30 job postings for SRE from major companies like Google, Twitter, Slack and more.</p>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="findings"><strong>Findings</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Here are the key SRE responsibilities that we identified from the job descriptions.</p>
|
||
|
||
|
||
|
||
<ul class="wp-block-list">
|
||
<li>Deploy and maintain infrastructure <em>(mentioned in 84% of job descriptions)</em></li>
|
||
|
||
|
||
|
||
<li>Define and manage SLO, SLI and error budgets<em> (34% of job descriptions)</em></li>
|
||
|
||
|
||
|
||
<li>Setup monitoring and alerts <em>(47% of job descriptions)</em></li>
|
||
|
||
|
||
|
||
<li>Be on call, respond to incidents and conduct post-mortems <em>(47% of job descriptions)</em></li>
|
||
|
||
|
||
|
||
<li>Build tools and automations <em>(56% of job descriptions)</em></li>
|
||
</ul>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="deploy-and-maintain-infrastructure"><strong>Deploy and maintain infrastructure</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">One of the important responsibilities for SRE is to design, build and maintain the infrastructure on which the company runs its products and services. This can involve working with self hosted cloud, but obviously hosting with public clouds like AWS and Google Cloud is becoming more common. One popular way is writing <strong><a href="https://en.wikipedia.org/wiki/Infrastructure_as_code">infrastructure-as-code</a></strong> with YAML and HCL (for Hashicorp products like Terraform). </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">To help make the right decisions for infrastructure, SREs will be involved in <strong>capacity planning</strong> for new and existing products – this involves discussions with the product and engineering teams to estimate the load and understand the thresholds for latency etc. </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Some roles expect SREs to make sure that the infrastructure meets <strong>compliance</strong> requirements. This is especially important for maintaining compliance with leading standards like GDPR and SOC2. Finally, with rising technology costs at most companies, <strong>cost optimization</strong> of infrastructure is also becoming an important requirement for SREs.</p>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="define-and-manage-slo-sli-and-error-budgets"><strong>Define and manage SLO, SLI and error budgets</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Maintaining reliability of production systems is an important part of SRE, I mean it’s in the title of the role itself. As such, defining what constitutes a service which is running correctly and upto internal standards becomes crucial. </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">As an SRE, you will be involved in creating SLO and SLIs for this purpose. <a href="https://spike.sh/blog/introduction-to-slo-and-sla/">Service Level Objectives (SLO)</a> specify the target levels for the service, and Service Level Indicators (SLI) help measure the service levels. The SLOs can be derived from internal discussions about customer expectations and any external promises made to the customers in the form of Service Level Agreements (SLA). </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Once the SLOs are defined, they can be used to come up with <strong>error budgets</strong>, or the allowed time that the service can be below the target level. Error budgets give dev and SRE teams some leeway, because a service can never be run at 100% reliability. These budgets can also be helpful for measuring the impacts of incidents e.g. if an incident consumes 30% of the budget, it can be labeled as a major incident. </p>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="setup-monitoring-and-alerts"><strong>Setup monitoring and alerts</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Once the team has defined SLOs, it is time to track if you are meeting those by defining SLIs (Service Level Indicators) and setting up monitoring for the same. The most common monitoring will be for infrastructure (CPU, memory spikes), service uptime (of website, APIs), performance (page load speed) etc. You will use self hosted tools like Prometheus and Grafana, or use popular SAAS vendors like Datadog and Sentry. </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Setting up monitoring and alerts is just the first step. You will also need to make sure that the monitoring thresholds are correct so your team is not overwhelmed with <a href="https://spike.sh/blog/how-to-deal-with-alert-noise/">unimportant alerts</a>. You will also need to make sure that the alerts are actionable. And finally, a good alerting system will also make sure to alert on symptoms so actions can be taken, and not after outages happen. </p>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="be-on-call-respond-to-incidents-and-conduct-post-mortems"><strong>Be on call, respond to incidents and conduct post-mortems</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Once you set up monitoring and have alerts coming in, your team will set up on-call schedules so that the load of responding to alerts at all times can be distributed across the entire team. You will be expected to use an <a href="https://spike.sh/">incident management platform</a> to ensure that all incidents and alerts are managed in one place, and there is clear ownership attached to every incident. This will also help you in calculating important metrics like MTTA (Mean Time To Acknowledge) and MTTR (Mean Time To Resolve). </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">You will also be involved in conducting post-mortems so you can explain to internal and external stakeholders about the sequence of events leading to the incident, the remediation steps taken to resolve and changes made to prevent similar issues in the future.</p>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="build-tools-and-automations"><strong>Build tools and automations</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">One of the core principles of SRE is to <strong>“eliminate toil”</strong>. Google SRE defines toil as “manual, repetitive, <em>automatable</em>, non-tactical” work that sucks up the time of dev and SRE teams and slows down other important projects. As such, building automation for repetitive tasks is one of the more important parts of the SRE role. The automation could be around responding to common alerts, setting up the CI/CD process so your team can move faster or creating products to enable dev teams to self-service common requests.</p>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="other-responsibilities"><strong>Other responsibilities</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">Depending on the company, some other responsibilities of SRE may include –</p>
|
||
|
||
|
||
|
||
<ul class="wp-block-list">
|
||
<li><strong>Debug production issues</strong>. At some roles, you will be involved in debugging production issues across all levels of the stack.</li>
|
||
|
||
|
||
|
||
<li><strong><strong><strong>Develop multi-cloud strategy. </strong></strong></strong>As companies start moving more workloads to public cloud, there is a push to be vendor agnostic for both cost and reliability purposes. Which is why many companies are working on building a strategy for making their products work across different cloud platforms.</li>
|
||
|
||
|
||
|
||
<li><strong><strong><strong>Chaos engineering. </strong></strong></strong>Chaos engineering was first pioneered by Netflix, and since then has become a growing practice across more tech companies. It usually involves purposely breaking your systems in surprising ways to see how resilient they are.</li>
|
||
</ul>
|
||
|
||
|
||
|
||
<h2 class="wp-block-heading" id="conclusion"><strong>Conclusion</strong></h2>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">As you can see, SRE role is more than just infrastructure maintenance or helping with CI/CD. The goal of keeping your services running at a high level can touch many different areas of operations and software engineering – if that sounds exciting, you should look into SRE. </p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph">If you’d like to know more about how Spike.sh can help SRE teams, <a href="/blog/cdn-cgi/l/email-protection#58303d343437182b2831333d762b30">drop us an email</a>.</p>
|
||
|
||
|
||
|
||
<hr class="wp-block-separator has-alpha-channel-opacity"/>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph"><strong>References</strong></p>
|
||
|
||
|
||
|
||
<p class="wp-block-paragraph"><em>We looked at the job descriptions from the following companies – <a href="https://careers.google.com/jobs/results/75525862415311558-software-engineer-site-reliability-engineering/">Google</a>, <a href="https://about.gitlab.com/job-families/engineering/infrastructure/site-reliability-engineer/">Gitlab</a>, <a href="https://www.themuse.com/jobs/instacart/senior-software-engineer-sre?utm_campaign=google_jobs_apply&utm_source=google_jobs_apply&utm_medium=organic">Instacart</a>, <a href="https://www.myvalleyjobstoday.com/jobs/devops-site-reliability-engineer-san-francisco-california/362863580-2">Oracle</a>, <a href="https://careers.twitter.com/en/work-for-twitter/202010/513c6aed-fad7-4d01-9402-95966454be0f/13629ae4-45fa-44d0-9ede-1095f3706013.html/site-reliability-engineer-revenue-engineering.html">Twitter</a>, <a href="https://angel.co/company/slack/jobs/1585469-">Slack</a>, <a href="https://angel.co/company/coindesk/jobs/1598849-">Coindesk</a>, <a href="https://angel.co/company/fastly/jobs/1356482-">Fastly</a>, <a href="https://angel.co/company/reddit/jobs/1140847-">Reddit</a>, <a href="https://angel.co/company/datadog/jobs/902250-">Datadog</a>, <a href="https://angel.co/company/frame-io/jobs/906299-">Frame.io</a>, <a href="https://boards.greenhouse.io/doordash/jobs/37470">Doordash</a>, <a href="https://www.linkedin.com/jobs/site-reliability-engineer-jobs-new-york-ny/?currentJobId=2699885909&position=17&pageNum=0">Coinbase</a>, <a href="https://angel.co/company/mongodb/jobs/1592525-">MongoDB</a>, <a href="https://angel.co/company/patreon/jobs/1605546-">Patreon</a>, <a href="https://angel.co/company/box/jobs/1581832-">Box</a>, <a href="https://angel.co/company/away/jobs/1331168-">Away</a>, <a href="https://www.adyen.com/it_IT/carriere/vacancies/infrastructure/position/2315602/platform-reliability-engineer">Adyen</a>, <a href="https://www.pinterestcareers.com/job/13189469/site-reliability-engineer-san-francisco-ca/">Pinterest</a>, <a href="https://angel.co/company/figma-com/jobs/692836-site-reliability-engineer">Figma</a>, <a href="https://jobs.apple.com/en-in/details/200241158/sr-site-reliability-engineer-site-reliability-engineering?team=SFTWR">Apple</a>, <a href="https://boards.greenhouse.io/twilio/jobs/3065753">Twilio</a>, <a href="https://careers.airbnb.com/positions/3066340/">Airbnb</a>, <a href="https://www.linkedin.com/jobs/site-reliability-engineer-jobs-new-york-ny/?currentJobId=2702959390&position=12&pageNum=0">Squarespace</a>, <a href="https://www.linkedin.com/jobs/site-reliability-engineer-jobs-new-york-ny/?currentJobId=2665824374&position=14&pageNum=0">Robinhood</a>, <a href="https://www.linkedin.com/jobs/site-reliability-engineer-jobs-new-york-ny/?currentJobId=2718281372&position=7&pageNum=0">Mastercard</a>, <a href="https://www.linkedin.com/jobs/site-reliability-engineer-jobs-new-york-ny/?currentJobId=2690059587&position=16&pageNum=0">Spotify</a>, <a href="https://boards.greenhouse.io/peloton/jobs/2061415?gh_src=839cb4b41us&s=LinkedIn&source=LinkedIn">Peloton</a>, <a href="https://www.linkedin.com/jobs/site-reliability-engineer-jobs-new-york-ny/?currentJobId=2646069824&position=25&pageNum=0">Duolingo</a>, <a href="https://jobs.bytedance.com/referral/pc/position/detail/?token=MTsxNjMxMjIzNzkzNzc0OzY5OTQyNjgzNTIxNzI1MjUwNjM7NzAwMzQyNTc5MTk0MjM5NjE3Mw">Tiktok</a></em></p>
|
||
</div>
|
||
|
||
</article>
|
||
|
||
|
||
</main>
|
||
|
||
<section class="spike-related">
|
||
<p class="spike-section-label">Related articles</p>
|
||
<div class="spike-grid">
|
||
<article class="spike-card">
|
||
|
||
<div class="spike-card__image">
|
||
<a href="https://spike.sh/blog/migrating-from-opsgenie-to-jsm/" aria-label="Migrating from OpsGenie to JSM? Read this first">
|
||
<img width="768" height="416" src="https://spike.sh/blog/wp-content/uploads/2026/05/background-48-768x416.png" class="attachment-medium_large size-medium_large wp-post-image" alt="" loading="lazy" decoding="async" srcset="https://spike.sh/blog/wp-content/uploads/2026/05/background-48-768x416.png 768w, https://spike.sh/blog/wp-content/uploads/2026/05/background-48-300x163.png 300w, https://spike.sh/blog/wp-content/uploads/2026/05/background-48-1024x555.png 1024w, https://spike.sh/blog/wp-content/uploads/2026/05/background-48-1536x833.png 1536w, https://spike.sh/blog/wp-content/uploads/2026/05/background-48-2048x1111.png 2048w" sizes="auto, (max-width: 768px) 100vw, 768px" data-attachment-id="5908" data-permalink="https://spike.sh/blog/migrating-from-opsgenie-to-jsm/background-48-2/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2026/05/background-48.png" data-orig-size="2080,1128" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0","alt":""}" data-image-title="background 48" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2026/05/background-48-1024x555.png" /> </a>
|
||
</div>
|
||
|
||
<div class="spike-card__body">
|
||
|
||
<div class="spike-card__cats">
|
||
<a href="https://spike.sh/blog/category/uncategorised/" class="spike-cat-link">
|
||
Uncategorized </a>
|
||
</div>
|
||
|
||
<h3 class="spike-card__title">
|
||
<a href="https://spike.sh/blog/migrating-from-opsgenie-to-jsm/">Migrating from OpsGenie to JSM? Read this first</a>
|
||
</h3>
|
||
|
||
</div>
|
||
</article>
|
||
<article class="spike-card">
|
||
|
||
<div class="spike-card__image">
|
||
<a href="https://spike.sh/blog/how-to-migrate-from-opsgenie/" aria-label="How to migrate from OpsGenie before the shutdown">
|
||
<img width="768" height="416" src="https://spike.sh/blog/wp-content/uploads/2026/05/Basics-of-Incident-Management-1-768x416.png" class="attachment-medium_large size-medium_large wp-post-image" alt="" loading="lazy" decoding="async" srcset="https://spike.sh/blog/wp-content/uploads/2026/05/Basics-of-Incident-Management-1-768x416.png 768w, https://spike.sh/blog/wp-content/uploads/2026/05/Basics-of-Incident-Management-1-300x163.png 300w, https://spike.sh/blog/wp-content/uploads/2026/05/Basics-of-Incident-Management-1-1024x555.png 1024w, https://spike.sh/blog/wp-content/uploads/2026/05/Basics-of-Incident-Management-1.png 1040w" sizes="auto, (max-width: 768px) 100vw, 768px" data-attachment-id="5885" data-permalink="https://spike.sh/blog/how-to-migrate-from-opsgenie/basics-of-incident-management-71/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2026/05/Basics-of-Incident-Management-1.png" data-orig-size="1040,564" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0","alt":""}" data-image-title="Basics of Incident Management" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2026/05/Basics-of-Incident-Management-1-1024x555.png" /> </a>
|
||
</div>
|
||
|
||
<div class="spike-card__body">
|
||
|
||
<div class="spike-card__cats">
|
||
<a href="https://spike.sh/blog/category/uncategorised/" class="spike-cat-link">
|
||
Uncategorized </a>
|
||
</div>
|
||
|
||
<h3 class="spike-card__title">
|
||
<a href="https://spike.sh/blog/how-to-migrate-from-opsgenie/">How to migrate from OpsGenie before the shutdown</a>
|
||
</h3>
|
||
|
||
</div>
|
||
</article>
|
||
<article class="spike-card">
|
||
|
||
<div class="spike-card__image">
|
||
<a href="https://spike.sh/blog/what-is-jira-service-management/" aria-label="What is Jira Service Management (JSM)? Key Features & Benefits Explained">
|
||
<img width="768" height="416" src="https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5-768x416.png" class="attachment-medium_large size-medium_large wp-post-image" alt="Blog cover titled "What is Jira Service Management (JSM)"" loading="lazy" decoding="async" srcset="https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5-768x416.png 768w, https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5-300x163.png 300w, https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5-1024x555.png 1024w, https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5-1536x833.png 1536w, https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5-2048x1111.png 2048w" sizes="auto, (max-width: 768px) 100vw, 768px" data-attachment-id="4323" data-permalink="https://spike.sh/blog/what-is-jira-service-management/basics-of-incident-management-25/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5.png" data-orig-size="2080,1128" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}" data-image-title="Basics of Incident Management" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2025/11/Basics-of-Incident-Management-5-1024x555.png" /> </a>
|
||
</div>
|
||
|
||
<div class="spike-card__body">
|
||
|
||
<div class="spike-card__cats">
|
||
<a href="https://spike.sh/blog/category/uncategorised/" class="spike-cat-link">
|
||
Uncategorized </a>
|
||
</div>
|
||
|
||
<h3 class="spike-card__title">
|
||
<a href="https://spike.sh/blog/what-is-jira-service-management/">What is Jira Service Management (JSM)? Key Features & Benefits Explained</a>
|
||
</h3>
|
||
|
||
</div>
|
||
</article>
|
||
<article class="spike-card">
|
||
|
||
<div class="spike-card__image">
|
||
<a href="https://spike.sh/blog/introducing-new-spike/" aria-label="Introducing Spike’s new look: designed to scale.">
|
||
<img width="768" height="402" src="https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover-768x402.png" class="attachment-medium_large size-medium_large wp-post-image" alt="" loading="lazy" decoding="async" srcset="https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover-768x402.png 768w, https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover-300x157.png 300w, https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover-1024x536.png 1024w, https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover-1536x804.png 1536w, https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover-2048x1072.png 2048w" sizes="auto, (max-width: 768px) 100vw, 768px" data-attachment-id="6431" data-permalink="https://spike.sh/blog/introducing-new-spike/blog-cover-19/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover.png" data-orig-size="5613,2937" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0","alt":""}" data-image-title="blog cover" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2026/09/blog-cover-1024x536.png" /> </a>
|
||
</div>
|
||
|
||
<div class="spike-card__body">
|
||
|
||
<div class="spike-card__cats">
|
||
<a href="https://spike.sh/blog/category/building-spike/" class="spike-cat-link">
|
||
Building Spike </a>
|
||
</div>
|
||
|
||
<h3 class="spike-card__title">
|
||
<a href="https://spike.sh/blog/introducing-new-spike/">Introducing Spike’s new look: designed to scale.</a>
|
||
</h3>
|
||
|
||
</div>
|
||
</article>
|
||
<article class="spike-card">
|
||
|
||
<div class="spike-card__image">
|
||
<a href="https://spike.sh/blog/we-made-our-blog-easier-to-read/" aria-label="We made our blog easier to read">
|
||
<img width="768" height="416" src="https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap-768x416.png" class="attachment-medium_large size-medium_large wp-post-image" alt="" loading="lazy" decoding="async" srcset="https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap-768x416.png 768w, https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap-300x163.png 300w, https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap-1024x555.png 1024w, https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap-1536x833.png 1536w, https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap-2048x1111.png 2048w" sizes="auto, (max-width: 768px) 100vw, 768px" data-attachment-id="6360" data-permalink="https://spike.sh/blog/we-made-our-blog-easier-to-read/2025-recap-3/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap.png" data-orig-size="2080,1128" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0","alt":""}" data-image-title="2025 recap" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2026/08/2025-recap-1024x555.png" /> </a>
|
||
</div>
|
||
|
||
<div class="spike-card__body">
|
||
|
||
<div class="spike-card__cats">
|
||
<a href="https://spike.sh/blog/category/building-spike/" class="spike-cat-link">
|
||
Building Spike </a>
|
||
</div>
|
||
|
||
<h3 class="spike-card__title">
|
||
<a href="https://spike.sh/blog/we-made-our-blog-easier-to-read/">We made our blog easier to read</a>
|
||
</h3>
|
||
|
||
</div>
|
||
</article>
|
||
<article class="spike-card">
|
||
|
||
<div class="spike-card__image">
|
||
<a href="https://spike.sh/blog/introducing-spike-mcp/" aria-label="Introducing Spike’s MCP">
|
||
<img width="768" height="432" src="https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x-768x432.png" class="attachment-medium_large size-medium_large wp-post-image" alt="MCP feature image" loading="lazy" decoding="async" srcset="https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x-768x432.png 768w, https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x-300x169.png 300w, https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x-1024x576.png 1024w, https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x-1536x864.png 1536w, https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x-2048x1152.png 2048w" sizes="auto, (max-width: 768px) 100vw, 768px" data-attachment-id="6330" data-permalink="https://spike.sh/blog/introducing-spike-mcp/mcp-launch-peach4x/" data-orig-file="https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x.png" data-orig-size="6400,3600" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0","alt":""}" data-image-title="mcp-launch-peach@4x" data-image-description="" data-image-caption="" data-large-file="https://spike.sh/blog/wp-content/uploads/2026/07/mcp-launch-peach@4x-1024x576.png" /> </a>
|
||
</div>
|
||
|
||
<div class="spike-card__body">
|
||
|
||
<div class="spike-card__cats">
|
||
<a href="https://spike.sh/blog/category/building-spike/" class="spike-cat-link">
|
||
Building Spike </a>
|
||
</div>
|
||
|
||
<h3 class="spike-card__title">
|
||
<a href="https://spike.sh/blog/introducing-spike-mcp/">Introducing Spike’s MCP</a>
|
||
</h3>
|
||
|
||
</div>
|
||
</article>
|
||
</div>
|
||
</section>
|
||
|
||
<script data-cfasync="false" src="/blog/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script><script>
|
||
(function() {
|
||
var toggle = document.getElementById('spike-toc-toggle');
|
||
var list = document.getElementById('spike-toc-list');
|
||
if (!toggle || !list) return;
|
||
|
||
// ── Clamp TOC within article bounds ───────────────────────────────────
|
||
var tocEl = document.getElementById('spike-toc');
|
||
var article = document.querySelector('.spike-article');
|
||
var TOC_TOP = 200; // matches CSS top: 200px
|
||
|
||
function clampToc() {
|
||
if (!tocEl || !article || window.innerWidth <= 1200) return;
|
||
var articleBottom = article.getBoundingClientRect().bottom;
|
||
var tocHeight = tocEl.offsetHeight;
|
||
if (articleBottom < TOC_TOP + tocHeight) {
|
||
tocEl.style.top = (articleBottom - tocHeight) + 'px';
|
||
} else {
|
||
tocEl.style.top = '';
|
||
}
|
||
}
|
||
|
||
toggle.addEventListener('click', function() {
|
||
var expanded = toggle.getAttribute('aria-expanded') === 'true';
|
||
toggle.setAttribute('aria-expanded', !expanded);
|
||
list.classList.toggle('is-open');
|
||
// Re-calculate clamp when opening/closing
|
||
clampToc();
|
||
});
|
||
|
||
// Close on outside click (but not when clicking the theme toggle)
|
||
document.addEventListener('click', function(e) {
|
||
var tocNav = document.getElementById('spike-toc');
|
||
var isDarkToggle = e.target.closest('#spike-dark-mode-toggle');
|
||
if (tocNav && !tocNav.contains(e.target) && !isDarkToggle) {
|
||
toggle.setAttribute('aria-expanded', 'false');
|
||
list.classList.remove('is-open');
|
||
}
|
||
});
|
||
|
||
var links = list.querySelectorAll('.spike-toc__link');
|
||
var items = list.querySelectorAll('.spike-toc__item');
|
||
|
||
function setActive(slug) {
|
||
for (var i = 0; i < items.length; i++) {
|
||
var link = items[i].querySelector('.spike-toc__link');
|
||
if (items[i].getAttribute('data-slug') === slug) {
|
||
link.classList.add('is-active');
|
||
} else {
|
||
link.classList.remove('is-active');
|
||
}
|
||
}
|
||
}
|
||
|
||
var headings = [];
|
||
for (var i = 0; i < items.length; i++) {
|
||
var id = items[i].getAttribute('data-slug');
|
||
var el = document.getElementById(id);
|
||
if (el) headings.push({ el: el, slug: id });
|
||
}
|
||
|
||
if (headings.length === 0) return;
|
||
|
||
var scrollTimer;
|
||
window.addEventListener('scroll', function() {
|
||
clearTimeout(scrollTimer);
|
||
scrollTimer = setTimeout(function() {
|
||
var scrollY = window.scrollY + 120;
|
||
var current = headings[0].slug;
|
||
for (var i = 0; i < headings.length; i++) {
|
||
if (headings[i].el.offsetTop <= scrollY) {
|
||
current = headings[i].slug;
|
||
}
|
||
}
|
||
setActive(current);
|
||
}, 150);
|
||
});
|
||
|
||
for (var i = 0; i < links.length; i++) {
|
||
links[i].addEventListener('click', function(e) {
|
||
e.preventDefault();
|
||
var slug = this.getAttribute('href').substring(1);
|
||
var target = document.getElementById(slug);
|
||
if (target) {
|
||
window.scrollTo({ top: target.getBoundingClientRect().top + window.scrollY - 100, behavior: 'smooth' });
|
||
setActive(slug);
|
||
}
|
||
});
|
||
}
|
||
|
||
// ── Clamp TOC logic listeners ────────────────────────────────────────
|
||
if (tocEl && article) {
|
||
window.addEventListener('scroll', clampToc, { passive: true });
|
||
window.addEventListener('resize', clampToc, { passive: true });
|
||
clampToc();
|
||
}
|
||
|
||
// ── Mobile TOC: Glass Outline Group ──────────────────────────────────
|
||
var mPill = document.getElementById('spike-toc-m-pill');
|
||
var mX = document.getElementById('spike-toc-m-x');
|
||
var mSheet = document.getElementById('spike-toc-m-sheet');
|
||
var mBackdrop = document.getElementById('spike-toc-m-backdrop');
|
||
var mCloseBtn = document.getElementById('spike-toc-m-close');
|
||
|
||
if (mPill && mSheet && mBackdrop) {
|
||
function mOpen() {
|
||
mSheet.classList.add('is-open');
|
||
mBackdrop.classList.add('is-visible');
|
||
mPill.setAttribute('aria-expanded', 'true');
|
||
mSheet.setAttribute('aria-hidden', 'false');
|
||
document.body.style.overflow = 'hidden';
|
||
}
|
||
function mClose() {
|
||
mSheet.classList.remove('is-open');
|
||
mBackdrop.classList.remove('is-visible');
|
||
mPill.setAttribute('aria-expanded', 'false');
|
||
mSheet.setAttribute('aria-hidden', 'true');
|
||
document.body.style.overflow = '';
|
||
}
|
||
function mHide() {
|
||
mPill.classList.add('is-gone');
|
||
mClose();
|
||
}
|
||
|
||
// Tapping the pill group (not the X button) toggles the sheet
|
||
mPill.addEventListener('click', function(e) {
|
||
if (mX && (e.target === mX || mX.contains(e.target))) return;
|
||
mSheet.classList.contains('is-open') ? mClose() : mOpen();
|
||
});
|
||
|
||
// X button toggles collapsed/expanded; shows back-chevron when collapsed
|
||
if (mX) {
|
||
mX.addEventListener('click', function(e) {
|
||
e.stopPropagation();
|
||
if (mPill.classList.contains('is-collapsed')) {
|
||
mPill.classList.remove('is-collapsed');
|
||
} else {
|
||
mPill.classList.add('is-collapsed');
|
||
mClose();
|
||
}
|
||
});
|
||
}
|
||
|
||
if (mCloseBtn) mCloseBtn.addEventListener('click', mClose);
|
||
mBackdrop.addEventListener('click', mClose);
|
||
|
||
document.addEventListener('keydown', function(e) {
|
||
if (e.key === 'Escape') mClose();
|
||
});
|
||
|
||
// Close sheet and scroll to heading on link tap
|
||
var mLinks = mSheet.querySelectorAll('.spike-toc-m__link');
|
||
for (var j = 0; j < mLinks.length; j++) {
|
||
mLinks[j].addEventListener('click', function(e) {
|
||
e.preventDefault();
|
||
var slug = this.getAttribute('href').substring(1);
|
||
var target = document.getElementById(slug);
|
||
mClose();
|
||
if (target) {
|
||
setTimeout(function() {
|
||
window.scrollTo({ top: target.getBoundingClientRect().top + window.scrollY - 100, behavior: 'smooth' });
|
||
}, 50);
|
||
}
|
||
});
|
||
}
|
||
|
||
// Drag pill downward to permanently dismiss
|
||
var mTy = 0, mDragging = false;
|
||
mPill.addEventListener('touchstart', function(e) {
|
||
mTy = e.touches[0].clientY;
|
||
mDragging = true;
|
||
}, { passive: true });
|
||
mPill.addEventListener('touchmove', function(e) {
|
||
if (!mDragging) return;
|
||
var dy = e.touches[0].clientY - mTy;
|
||
if (dy > 0) {
|
||
// Preserve the collapsed x-offset if active
|
||
var xOffset = mPill.classList.contains('is-collapsed') ? 'translateX(calc(50vw - 28px)) ' : '';
|
||
mPill.style.transform = xOffset + 'translateY(' + dy + 'px)';
|
||
mPill.style.opacity = Math.max(0, 1 - dy / 80);
|
||
}
|
||
}, { passive: true });
|
||
mPill.addEventListener('touchend', function(e) {
|
||
if (!mDragging) return;
|
||
mDragging = false;
|
||
var dy = e.changedTouches[0].clientY - mTy;
|
||
if (dy > 50) {
|
||
mHide();
|
||
} else {
|
||
mPill.style.transform = '';
|
||
mPill.style.opacity = '';
|
||
}
|
||
}, { passive: true });
|
||
|
||
// Hide pill when user scrolls past the article into related posts (or before article)
|
||
var mAnchor = document.querySelector('.spike-toc-m__pill-anchor');
|
||
var mArticle = document.querySelector('.spike-article');
|
||
if (mAnchor && mArticle) {
|
||
function mUpdateBounds() {
|
||
if (mPill.classList.contains('is-gone')) return;
|
||
var rect = mArticle.getBoundingClientRect();
|
||
var pastArticle = rect.bottom < 80;
|
||
var beforeArticle = rect.top > window.innerHeight;
|
||
if (pastArticle || beforeArticle) {
|
||
mAnchor.classList.add('is-out-of-article');
|
||
if (pastArticle) mClose();
|
||
} else {
|
||
mAnchor.classList.remove('is-out-of-article');
|
||
}
|
||
}
|
||
window.addEventListener('scroll', mUpdateBounds, { passive: true });
|
||
mUpdateBounds();
|
||
}
|
||
|
||
// Scrollspy — keep active link in sync with scroll position
|
||
if (headings.length > 0) {
|
||
var mItems = mSheet.querySelectorAll('.spike-toc-m__item');
|
||
function mSetActive(slug) {
|
||
for (var k = 0; k < mItems.length; k++) {
|
||
var lnk = mItems[k].querySelector('.spike-toc-m__link');
|
||
if (lnk) {
|
||
if (lnk.getAttribute('href') === '#' + slug) {
|
||
lnk.classList.add('is-active');
|
||
} else {
|
||
lnk.classList.remove('is-active');
|
||
}
|
||
}
|
||
}
|
||
}
|
||
window.addEventListener('scroll', function() {
|
||
var scrollY = window.scrollY + 120;
|
||
var current = headings[0].slug;
|
||
for (var k = 0; k < headings.length; k++) {
|
||
if (headings[k].el.offsetTop <= scrollY) {
|
||
current = headings[k].slug;
|
||
}
|
||
}
|
||
mSetActive(current);
|
||
});
|
||
}
|
||
}
|
||
})();
|
||
</script>
|
||
|
||
|
||
<footer class="spike-site-footer spike-site-footer--desktop">
|
||
<div class="spike-site-footer__inner">
|
||
|
||
<div class="spike-site-footer__left">
|
||
<a href="https://spike.sh" class="spike-site-footer__brand" target="_blank" rel="noopener noreferrer" aria-label="spike.sh">
|
||
<img
|
||
src="https://spike.sh/blog/wp-content/themes/spike-theme/assets/images/spike-2.0.svg"
|
||
alt="spike.sh"
|
||
class="spike-footer-logo__img"
|
||
>
|
||
</a>
|
||
</div>
|
||
|
||
<nav class="spike-site-footer__nav" aria-label="Footer">
|
||
<a href="https://spike.sh/changelog" class="spike-site-footer__link" target="_blank" rel="noopener noreferrer">Changelog</a>
|
||
<a href="https://spike.sh/quiz?utm_source=blog" class="spike-site-footer__link" target="_blank" rel="noopener noreferrer">What's the root cause?🔥</a>
|
||
<a href="https://spike.sh/glossary" class="spike-site-footer__link" target="_blank" rel="noopener noreferrer">Glossary</a>
|
||
</nav>
|
||
|
||
<div class="spike-site-footer__social">
|
||
<a href="https://x.com/SpikedHQ" class="spike-site-footer__social-link" target="_blank" rel="noopener noreferrer" aria-label="Follow us on X">
|
||
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
||
<path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/>
|
||
</svg>
|
||
</a>
|
||
<a href="https://in.linkedin.com/company/spike-hq" class="spike-site-footer__social-link" target="_blank" rel="noopener noreferrer" aria-label="Follow us on LinkedIn">
|
||
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
||
<path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/>
|
||
</svg>
|
||
</a>
|
||
<a href="https://youtube.com/@spikehq" class="spike-site-footer__social-link" target="_blank" rel="noopener noreferrer" aria-label="Subscribe on YouTube">
|
||
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
||
<path d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"/>
|
||
</svg>
|
||
</a>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<div class="spike-site-footer__bottom">
|
||
<span class="spike-site-footer__copy">
|
||
© 2026 <a href="https://spike.sh" class="spike-site-footer__copy-link" target="_blank" rel="noopener noreferrer">FatSync Software Private Limited</a>. All rights reserved.
|
||
</span>
|
||
</div>
|
||
</footer>
|
||
|
||
<footer class="spike-mobile-footer">
|
||
|
||
<div class="spike-mobile-footer__glass-bottom">
|
||
<div class="spike-mobile-footer__logo-wrap">
|
||
<a href="https://spike.sh" target="_blank" rel="noopener noreferrer" aria-label="spike.sh">
|
||
<img
|
||
src="https://spike.sh/blog/wp-content/themes/spike-theme/assets/images/spike-2.0.svg"
|
||
alt="spike.sh"
|
||
class="spike-footer-logo__img spike-mobile-footer__logo"
|
||
>
|
||
</a>
|
||
</div>
|
||
|
||
<nav class="spike-mobile-footer__links" aria-label="Footer">
|
||
<a href="https://spike.sh/changelog" class="spike-mobile-footer__link" target="_blank" rel="noopener noreferrer">Changelog</a>
|
||
<a href="https://spike.sh/quiz?utm_source=blog" class="spike-mobile-footer__link" target="_blank" rel="noopener noreferrer">Quiz</a>
|
||
<a href="https://spike.sh/glossary" class="spike-mobile-footer__link" target="_blank" rel="noopener noreferrer">Glossary</a>
|
||
</nav>
|
||
|
||
<div class="spike-mobile-footer__divider"></div>
|
||
|
||
<div class="spike-mobile-footer__bottom">
|
||
<p class="spike-mobile-footer__copy">
|
||
© 2026 <a href="https://spike.sh" class="spike-site-footer__copy-link" target="_blank" rel="noopener noreferrer">FatSync Software Private Limited</a>. All rights reserved.
|
||
</p>
|
||
|
||
<div class="spike-mobile-footer__social">
|
||
<a href="https://x.com/SpikedHQ" class="spike-mobile-footer__social-link" target="_blank" rel="noopener noreferrer" aria-label="Follow us on X">
|
||
<svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/></svg>
|
||
</a>
|
||
<a href="https://in.linkedin.com/company/spike-hq" class="spike-mobile-footer__social-link" target="_blank" rel="noopener noreferrer" aria-label="Follow us on LinkedIn">
|
||
<svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg>
|
||
</a>
|
||
<a href="https://youtube.com/@spikehq" class="spike-mobile-footer__social-link" target="_blank" rel="noopener noreferrer" aria-label="Subscribe on YouTube">
|
||
<svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor"><path d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"/></svg>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</footer>
|
||
|
||
<!-- -->
|
||
<script type="speculationrules">
|
||
{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/spike-theme/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
|
||
</script>
|
||
<meta id="bilmur" property="bilmur:data" content="" data-customproperties="{"woo_active":"0","logged_in":"0","wptheme":"spike-theme","wptheme_is_block":"0"}" data-provider="wordpress.com" data-service="atomic" data-site-tz="Asia/Kolkata" >
|
||
<script defer src="https://s0.wp.com/wp-content/js/bilmur.min.js?m=202637"></script>
|
||
<div class="jetpack-subscription-modal">
|
||
<div class="jetpack-subscription-modal__modal-content">
|
||
|
||
<div class="wp-block-group has-border-color jetpack-subscription-modal__modal-content-form" style="border-color:#dddddd;border-width:1px;margin-top:0;margin-bottom:0;padding:32px"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
|
||
|
||
|
||
<h2 class="wp-block-heading has-text-align-center" style="margin-top:4px;margin-bottom:10px;font-size:26px;font-style:normal;font-weight:600">Discover more from Welcome to Spike's blog</h2>
|
||
|
||
|
||
|
||
<p class="has-text-align-center wp-block-paragraph" style='margin-top:4px;margin-bottom:0px;font-size:15px'>Subscribe now to keep reading and get access to the full archive.</p>
|
||
|
||
|
||
<div class="wp-block-jetpack-subscriptions__supports-newline is-style-compact wp-block-jetpack-subscriptions">
|
||
<div class="wp-block-jetpack-subscriptions__container is-not-subscriber">
|
||
<form
|
||
action="https://wordpress.com/email-subscriptions"
|
||
method="post"
|
||
accept-charset="utf-8"
|
||
data-blog="233138900"
|
||
data-post_access_level="everybody"
|
||
data-subscriber_email=""
|
||
id="subscribe-blog"
|
||
>
|
||
<div class="wp-block-jetpack-subscriptions__form-elements">
|
||
<p id="subscribe-email">
|
||
<label
|
||
id="subscribe-field-label"
|
||
for="subscribe-field"
|
||
class="screen-reader-text"
|
||
>
|
||
Type your email… </label>
|
||
<input
|
||
required="required"
|
||
type="email"
|
||
name="email"
|
||
autocomplete="email"
|
||
|
||
style="font-size: 16px;padding: 15px 23px 15px 23px;border-radius: 50px;border-width: 1px;"
|
||
placeholder="Type your email…"
|
||
value=""
|
||
id="subscribe-field"
|
||
title="Please fill in this field."
|
||
/> </p>
|
||
<p id="subscribe-submit"
|
||
>
|
||
<input type="hidden" name="action" value="subscribe"/>
|
||
<input type="hidden" name="blog_id" value="233138900"/>
|
||
<input type="hidden" name="source" value="https://spike.sh/blog/sre-role-2021-analysed-30-job-postings/"/>
|
||
<input type="hidden" name="sub-type" value="subscribe-block"/>
|
||
<input type="hidden" name="app_source" value="atomic-subscription-modal-lo"/>
|
||
<input type="hidden" name="redirect_fragment" value="subscribe-blog"/>
|
||
<input type="hidden" name="lang" value="en_GB"/>
|
||
<input type="hidden" id="_wpnonce" name="_wpnonce" value="1bcefe58bc" /><input type="hidden" name="_wp_http_referer" value="/sre-role-2021-analysed-30-job-postings/" /><input type="hidden" name="post_id" value="314"/> <button type="submit"
|
||
class="wp-block-button__link"
|
||
style="font-size: 16px;padding: 15px 23px 15px 23px;margin: 0; margin-left: 10px;border-radius: 50px;border-width: 1px;"
|
||
name="jetpack_subscriptions_widget"
|
||
>
|
||
Subscribe </button>
|
||
</p>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
<p class="has-text-align-center jetpack-subscription-modal__close wp-block-paragraph" style="margin-top:20px;font-size:14px"><a href="#">Continue reading</a></p>
|
||
|
||
</div></div>
|
||
</div>
|
||
</div>
|
||
<div style="display:none">
|
||
<div class="grofile-hash-map-4262555b83397cba71760d14850c9516">
|
||
</div>
|
||
</div>
|
||
<div id="jp-carousel-loading-overlay" style="display: none;">
|
||
<div id="jp-carousel-loading-wrapper">
|
||
<span id="jp-carousel-library-loading"><svg class="jetpack-spinner" width="40" height="40" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><circle cx="50" cy="50" r="46" fill="none" stroke="#ddd" stroke-width="8"/><path d="M 50 4 A 46 46 0 0 1 96 50" fill="none" stroke="currentColor" stroke-width="8" stroke-linecap="round"><animateTransform attributeName="transform" type="rotate" dur="1.4s" from="0 50 50" to="360 50 50" repeatCount="indefinite"/></path></svg></span>
|
||
</div>
|
||
</div>
|
||
<div class="jp-carousel-overlay" style="display: none;">
|
||
|
||
<div class="jp-carousel-container">
|
||
<!-- The Carousel Swiper -->
|
||
<div
|
||
class="jp-carousel-wrap swiper jp-carousel-swiper-container jp-carousel-transitions"
|
||
itemscope
|
||
itemtype="https://schema.org/ImageGallery">
|
||
<div class="jp-carousel swiper-wrapper"></div>
|
||
<div class="jp-swiper-button-prev swiper-button-prev">
|
||
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<mask id="maskPrev" mask-type="alpha" maskUnits="userSpaceOnUse" x="8" y="6" width="9" height="12">
|
||
<path d="M16.2072 16.59L11.6496 12L16.2072 7.41L14.8041 6L8.8335 12L14.8041 18L16.2072 16.59Z" fill="white"/>
|
||
</mask>
|
||
<g mask="url(#maskPrev)">
|
||
<rect x="0.579102" width="23.8823" height="24" fill="#FFFFFF"/>
|
||
</g>
|
||
</svg>
|
||
</div>
|
||
<div class="jp-swiper-button-next swiper-button-next">
|
||
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<mask id="maskNext" mask-type="alpha" maskUnits="userSpaceOnUse" x="8" y="6" width="8" height="12">
|
||
<path d="M8.59814 16.59L13.1557 12L8.59814 7.41L10.0012 6L15.9718 12L10.0012 18L8.59814 16.59Z" fill="white"/>
|
||
</mask>
|
||
<g mask="url(#maskNext)">
|
||
<rect x="0.34375" width="23.8822" height="24" fill="#FFFFFF"/>
|
||
</g>
|
||
</svg>
|
||
</div>
|
||
</div>
|
||
<!-- The main close buton -->
|
||
<div class="jp-carousel-close-hint">
|
||
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<mask id="maskClose" mask-type="alpha" maskUnits="userSpaceOnUse" x="5" y="5" width="15" height="14">
|
||
<path d="M19.3166 6.41L17.9135 5L12.3509 10.59L6.78834 5L5.38525 6.41L10.9478 12L5.38525 17.59L6.78834 19L12.3509 13.41L17.9135 19L19.3166 17.59L13.754 12L19.3166 6.41Z" fill="white"/>
|
||
</mask>
|
||
<g mask="url(#maskClose)">
|
||
<rect x="0.409668" width="23.8823" height="24" fill="#FFFFFF"/>
|
||
</g>
|
||
</svg>
|
||
</div>
|
||
<!-- Image info, comments and meta -->
|
||
<div class="jp-carousel-info">
|
||
<div class="jp-carousel-info-footer">
|
||
<div class="jp-carousel-pagination-container">
|
||
<div class="jp-swiper-pagination swiper-pagination"></div>
|
||
<div class="jp-carousel-pagination"></div>
|
||
</div>
|
||
<div class="jp-carousel-photo-title-container">
|
||
<div class="jp-carousel-photo-caption"></div>
|
||
</div>
|
||
<div class="jp-carousel-photo-icons-container">
|
||
<a href="#" class="jp-carousel-icon-btn jp-carousel-icon-info" aria-label="Toggle photo metadata visibility">
|
||
<span class="jp-carousel-icon">
|
||
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<mask id="maskInfo" mask-type="alpha" maskUnits="userSpaceOnUse" x="2" y="2" width="21" height="20">
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.7537 2C7.26076 2 2.80273 6.48 2.80273 12C2.80273 17.52 7.26076 22 12.7537 22C18.2466 22 22.7046 17.52 22.7046 12C22.7046 6.48 18.2466 2 12.7537 2ZM11.7586 7V9H13.7488V7H11.7586ZM11.7586 11V17H13.7488V11H11.7586ZM4.79292 12C4.79292 16.41 8.36531 20 12.7537 20C17.142 20 20.7144 16.41 20.7144 12C20.7144 7.59 17.142 4 12.7537 4C8.36531 4 4.79292 7.59 4.79292 12Z" fill="white"/>
|
||
</mask>
|
||
<g mask="url(#maskInfo)">
|
||
<rect x="0.8125" width="23.8823" height="24" fill="#FFFFFF"/>
|
||
</g>
|
||
</svg>
|
||
</span>
|
||
</a>
|
||
<a href="#" class="jp-carousel-icon-btn jp-carousel-icon-comments" aria-label="Toggle photo comments visibility">
|
||
<span class="jp-carousel-icon">
|
||
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<mask id="maskComments" mask-type="alpha" maskUnits="userSpaceOnUse" x="2" y="2" width="21" height="20">
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.3271 2H20.2486C21.3432 2 22.2388 2.9 22.2388 4V16C22.2388 17.1 21.3432 18 20.2486 18H6.31729L2.33691 22V4C2.33691 2.9 3.2325 2 4.3271 2ZM6.31729 16H20.2486V4H4.3271V18L6.31729 16Z" fill="white"/>
|
||
</mask>
|
||
<g mask="url(#maskComments)">
|
||
<rect x="0.34668" width="23.8823" height="24" fill="#FFFFFF"/>
|
||
</g>
|
||
</svg>
|
||
|
||
<span class="jp-carousel-has-comments-indicator" aria-label="This image has comments."></span>
|
||
</span>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="jp-carousel-info-extra">
|
||
<div class="jp-carousel-info-content-wrapper">
|
||
<div class="jp-carousel-photo-title-container">
|
||
<div class="jp-carousel-photo-title"></div>
|
||
</div>
|
||
<div class="jp-carousel-comments-wrapper">
|
||
<div id="jp-carousel-comments-loading">
|
||
<span>Loading Comments...</span>
|
||
</div>
|
||
<div class="jp-carousel-comments"></div>
|
||
<div id="jp-carousel-comment-form-container">
|
||
<span id="jp-carousel-comment-form-spinner"><svg class="jetpack-spinner" width="20" height="20" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><circle cx="50" cy="50" r="46" fill="none" stroke="#ddd" stroke-width="8"/><path d="M 50 4 A 46 46 0 0 1 96 50" fill="none" stroke="currentColor" stroke-width="8" stroke-linecap="round"><animateTransform attributeName="transform" type="rotate" dur="1.4s" from="0 50 50" to="360 50 50" repeatCount="indefinite"/></path></svg></span>
|
||
<div id="jp-carousel-comment-post-results"></div>
|
||
<form id="jp-carousel-comment-form">
|
||
<label for="jp-carousel-comment-form-comment-field" class="screen-reader-text">Write a Comment...</label>
|
||
<textarea
|
||
name="comment"
|
||
class="jp-carousel-comment-form-field jp-carousel-comment-form-textarea"
|
||
id="jp-carousel-comment-form-comment-field"
|
||
placeholder="Write a Comment..."
|
||
></textarea>
|
||
<div id="jp-carousel-comment-form-submit-and-info-wrapper">
|
||
<div id="jp-carousel-comment-form-commenting-as">
|
||
<fieldset>
|
||
<label for="jp-carousel-comment-form-email-field">Email (Required)</label>
|
||
<input type="text" name="email" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-email-field" />
|
||
</fieldset>
|
||
<fieldset>
|
||
<label for="jp-carousel-comment-form-author-field">Name (Required)</label>
|
||
<input type="text" name="author" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-author-field" />
|
||
</fieldset>
|
||
<fieldset>
|
||
<label for="jp-carousel-comment-form-url-field">Website</label>
|
||
<input type="text" name="url" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-url-field" />
|
||
</fieldset>
|
||
</div>
|
||
<input
|
||
type="submit"
|
||
name="submit"
|
||
class="jp-carousel-comment-form-button"
|
||
id="jp-carousel-comment-form-button-submit"
|
||
value="Post Comment" />
|
||
</div>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
<div class="jp-carousel-image-meta">
|
||
<div class="jp-carousel-title-and-caption">
|
||
<div class="jp-carousel-photo-info">
|
||
<div class="jp-carousel-caption" itemprop="caption description"></div>
|
||
</div>
|
||
|
||
<div class="jp-carousel-photo-description"></div>
|
||
</div>
|
||
<a class="jp-carousel-image-download" href="#" aria-label="Download image" target="_blank" style="display: none;">
|
||
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="3" y="3" width="19" height="18">
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M5.84615 5V19H19.7775V12H21.7677V19C21.7677 20.1 20.8721 21 19.7775 21H5.84615C4.74159 21 3.85596 20.1 3.85596 19V5C3.85596 3.9 4.74159 3 5.84615 3H12.8118V5H5.84615ZM14.802 5V3H21.7677V10H19.7775V6.41L9.99569 16.24L8.59261 14.83L18.3744 5H14.802Z" fill="white"/>
|
||
</mask>
|
||
<g mask="url(#mask0)">
|
||
<rect x="0.870605" width="23.8823" height="24" fill="#FFFFFF"/>
|
||
</g>
|
||
</svg>
|
||
<span class="jp-carousel-download-text"></span>
|
||
</a>
|
||
<div class="jp-carousel-image-map" style="display: none;"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
<script id="spike-search-js-extra">
|
||
var spikeSearchData = {"searchUrl":"https://spike.sh/blog/wp-json/spike/v1/search","homeUrl":"https://spike.sh/blog/"};
|
||
//# sourceURL=spike-search-js-extra
|
||
</script>
|
||
<script id="spike-breadcrumb-js-extra">
|
||
var spikeBreadcrumbData = {"homeUrl":"https://spike.sh/blog/","collections":{"on-call-engineer":{"label":"If you're an on-call engineer","url":"https://spike.sh/blog/collections/on-call-engineer/"},"incident-manager":{"label":"If you're an incident manager","url":"https://spike.sh/blog/collections/incident-manager/"},"sre":{"label":"If you're a site reliability engineer","url":"https://spike.sh/blog/collections/sre/"},"founder":{"label":"If you're a startup founder","url":"https://spike.sh/blog/collections/founder/"},"drowning-in-alerts":{"label":"If you're drowning in alerts","url":"https://spike.sh/blog/collections/drowning-in-alerts/"},"reduce-mttr":{"label":"If you want to reduce MTTR","url":"https://spike.sh/blog/collections/reduce-mttr/"},"on-call-burnout":{"label":"If you're struggling with on-call burnout","url":"https://spike.sh/blog/collections/on-call-burnout/"},"handling-critical-incidents":{"label":"If you handle critical incidents","url":"https://spike.sh/blog/collections/handling-critical-incidents/"},"remote-teams":{"label":"If you manage remote teams","url":"https://spike.sh/blog/collections/remote-teams/"},"midnight-incidents":{"label":"If you're handling midnight incidents","url":"https://spike.sh/blog/collections/midnight-incidents/"},"pagerduty":{"label":"If you're switching from PagerDuty","url":"https://spike.sh/blog/collections/pagerduty/"},"opsgenie":{"label":"If you're switching from OpsGenie","url":"https://spike.sh/blog/collections/opsgenie/"},"jsm":{"label":"If you're switching from Jira Service Management","url":"https://spike.sh/blog/collections/jsm/"},"incident-io":{"label":"If you're switching from Incident.io","url":"https://spike.sh/blog/collections/incident-io/"},"squadcast":{"label":"If you're switching from Squadcast","url":"https://spike.sh/blog/collections/squadcast/"},"zenduty":{"label":"If you're switching from Zenduty","url":"https://spike.sh/blog/collections/zenduty/"}},"categories":{"alert-routing":{"label":"Alert routing","url":"https://spike.sh/blog/category/alert-routing/"},"alerting":{"label":"Alerting","url":"https://spike.sh/blog/category/alerting/"},"best-practices":{"label":"Best practices","url":"https://spike.sh/blog/category/best-practices/"},"building-spike":{"label":"Building Spike","url":"https://spike.sh/blog/category/building-spike/"},"chatops":{"label":"ChatOps","url":"https://spike.sh/blog/category/chatops/"},"critical-incidents":{"label":"Critical incidents","url":"https://spike.sh/blog/category/critical-incidents/"},"escalation-policies":{"label":"Escalation policies","url":"https://spike.sh/blog/category/escalation-policies/"},"incident-communication":{"label":"Incident communication","url":"https://spike.sh/blog/category/incident-communication/"},"incident-response":{"label":"Incident response","url":"https://spike.sh/blog/category/incident-response/"},"on-call":{"label":"On-call","url":"https://spike.sh/blog/category/on-call/"},"postmortem":{"label":"Postmortem","url":"https://spike.sh/blog/category/postmortem/"},"uncategorised":{"label":"Uncategorized","url":"https://spike.sh/blog/category/uncategorised/"}},"all":{"label":"All Posts","url":"https://spike.sh/blog/all/"}};
|
||
//# sourceURL=spike-breadcrumb-js-extra
|
||
</script>
|
||
<script type='text/javascript' src='https://spike.sh/blog/_static/??-eJyVy0sOwjAMBcALEUyRgGwQZ3GTJ/pLE/kZVdwexAnochaztZDq6lhdfEABhW2cEX4QJeGUiZLV5lBqxnHiYfszJXU8q71DG5eFeyahloY9ozdoTvYq/Xc9yr27xXg5d6dr/AB9FFSI'></script>
|
||
<script id="wp-dom-ready-js" src="https://spike.sh/blog/wp-content/plugins/gutenberg/build/scripts/dom-ready/index.min.js?ver=3fe927cab37bf38d6a23"></script>
|
||
<script id="subscription-modal-js-js-extra">
|
||
var subscriptionData = {"homeUrl":"blog.spike.sh"};
|
||
//# sourceURL=subscription-modal-js-js-extra
|
||
</script>
|
||
<script type='text/javascript' src='https://spike.sh/blog/wp-content/plugins/jetpack/modules/comments/subscription-modal-on-comment/subscription-modal.js?m=1764003632'></script>
|
||
<script id="grofiles-cards-js" src="https://secure.gravatar.com/js/gprofiles.js?ver=202637"></script>
|
||
<script id="wpgroho-js-extra">
|
||
var WPGroHo = {"my_hash":""};
|
||
//# sourceURL=wpgroho-js-extra
|
||
</script>
|
||
<script type='text/javascript' src='https://spike.sh/blog/_static/??wp-content/plugins/jetpack/modules/wpgroho.js,wp-content/plugins/jetpack/modules/likes/queuehandler.js?m=1787255688'></script>
|
||
<script id="googlesitekit-events-provider-content-events-js-before">
|
||
window._googlesitekit = window._googlesitekit || {};
|
||
window._googlesitekit.contentEvents = {"postID":314,"isSinglePost":true,"hasVimeoEmbed":false};
|
||
//# sourceURL=googlesitekit-events-provider-content-events-js-before
|
||
</script>
|
||
<script id="googlesitekit-events-provider-content-events-js" src="https://spike.sh/blog/wp-content/plugins/google-site-kit/dist/assets/js/googlesitekit-events-provider-content-events-bb83c1a0aedefa5d25d1.js" defer></script>
|
||
<script id="jetpack-stats-js-before">
|
||
_stq = window._stq || [];
|
||
_stq.push([ "view", {"v":"ext","blog":"233138900","post":"314","tz":"5.5","srv":"blog.spike.sh","hp":"atomic","ac":"2","amp":"0","j":"1:16.2"} ]);
|
||
_stq.push([ "clickTrackerInit", "233138900", "314" ]);
|
||
//# sourceURL=jetpack-stats-js-before
|
||
</script>
|
||
<script data-wp-strategy="defer" defer fetchpriority="low" id="jetpack-stats-js" src="https://stats.wp.com/e-202637.js"></script>
|
||
<script id="jetpack-carousel-js-extra">
|
||
var jetpackSwiperLibraryPath = {"url":"https://spike.sh/blog/wp-content/plugins/jetpack/_inc/blocks/swiper.js"};
|
||
var jetpackCarouselStrings = {"widths":[370,700,1000,1200,1400,2000],"is_logged_in":"","lang":"en","ajaxurl":"https://spike.sh/blog/wp-admin/admin-ajax.php","nonce":"f4af5de9ec","display_exif":"1","display_comments":"1","single_image_gallery":"1","single_image_gallery_media_file":"","background_color":"black","comment":"Comment","post_comment":"Post Comment","write_comment":"Write a Comment...","loading_comments":"Loading Comments...","image_label":"Open image in full-screen.","download_original":"View full size \u003Cspan class=\"photo-size\"\u003E{0}\u003Cspan class=\"photo-size-times\"\u003E\u00d7\u003C/span\u003E{1}\u003C/span\u003E","no_comment_text":"Please be sure to submit some text with your comment.","no_comment_email":"Please provide an email address to comment.","no_comment_author":"Please provide your name to comment.","comment_post_error":"Sorry, but there was an error posting your comment. Please try again later.","comment_approved":"Your comment was approved.","comment_unapproved":"Your comment is in moderation.","camera":"Camera","aperture":"Aperture","shutter_speed":"Shutter Speed","focal_length":"Focal Length","copyright":"Copyright","comment_registration":"0","require_name_email":"1","login_url":"https://spike.sh/blog/wp-login.php?redirect_to=https%3A%2F%2Fblog.spike.sh%2Fsre-role-2021-analysed-30-job-postings%2F","blog_id":"1","meta_data":["camera","aperture","shutter_speed","focal_length","copyright"]};
|
||
//# sourceURL=jetpack-carousel-js-extra
|
||
</script>
|
||
<script type='text/javascript' src='https://spike.sh/blog/wp-content/plugins/jetpack/_inc/build/carousel/jetpack-carousel.min.js?m=1785801844'></script>
|
||
<script id="jetpack-blocks-assets-base-url-js-before">
|
||
var Jetpack_Block_Assets_Base_Url="https://spike.sh/blog/wp-content/plugins/jetpack/_inc/blocks/";
|
||
//# sourceURL=jetpack-blocks-assets-base-url-js-before
|
||
</script>
|
||
<script type='text/javascript' src='https://spike.sh/blog/wp-includes/js/dist/vendor/wp-polyfill.min.js?m=1784059681'></script>
|
||
<script data-wp-strategy="defer" defer id="jetpack-block-subscriptions-js" src="https://spike.sh/blog/wp-content/plugins/jetpack/_inc/blocks/subscriptions/view.js?minify=false&ver=16.2"></script>
|
||
<div class="wplmi-frontend-template" style="display:none;"><p class="post-modified-info">Last Updated on 3 days ago by <a href="" target="_blank" class="last-modified-author">Sreekar</a></p></div> <script>
|
||
( function() {
|
||
const tpl = document.querySelector( '.wplmi-frontend-template' );
|
||
if ( ! tpl ) { return; }
|
||
const nodes = document.querySelectorAll( 'ul li.meta-date' );
|
||
nodes.forEach( el => el.outerHTML = tpl.innerHTML );
|
||
} )();
|
||
</script>
|
||
<script>
|
||
(function() {
|
||
document.addEventListener('click', function(e) {
|
||
var btn = e.target.closest('.wp-block-button__link');
|
||
if (!btn) return;
|
||
var href = btn.getAttribute('href');
|
||
if (!href || href === '#') return;
|
||
e.preventDefault();
|
||
e.stopPropagation();
|
||
if (btn.getAttribute('target') === '_blank') {
|
||
window.open(href, '_blank', 'noopener,noreferrer');
|
||
} else {
|
||
window.location.href = href;
|
||
}
|
||
}, true);
|
||
})();
|
||
</script>
|
||
<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"231c3acd12cf49238f5ffbb0ad722808","r":1,"spa":2}' crossorigin="anonymous"></script>
|
||
</body>
|
||
</html> |