Files
nexus/sreweekly/articles/416/02-resilience-and-incident-management-with-vanessa-huerta-granda.html
2026-09-12 17:23:01 +08:00

3189 lines
209 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- Google Optimize Anti-flicker snippet (recommended) -->
<style>.async-hide { opacity: 0 !important} </style>
<style>.promo{background:#222528;position:fixed;z-index:1001!important;left:0;top:0;right:0;max-height:48px;min-height:48px;padding-top:0!important;padding-bottom:0!important}.promo,.promo p{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.promo p{font-size:.8125rem;line-height:1rem;color:#fff;margin-bottom:0;margin-top:0;margin:0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;font-weight:700}@media only screen and (max-width:650px){.promo p{font-size:.6875rem}}.promo span{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.promo a{color:#fff!important;text-decoration:underline!important}.promo a.btn{background:#d0021b;padding:7px 20px;text-decoration:none!important;font-weight:700;margin-left:10px;margin-right:10px;white-space:nowrap;border-radius:5px}@media only screen and (max-width:650px){.promo a.btn{font-size:.6875rem;padding:7px 10px}}.promo.container{padding-top:8px;padding-bottom:8px}@media only screen and (min-width:1050px){.promo.container{padding-top:0;padding-bottom:0}}.promo .actions{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.promo .actions__left{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.promo .actions__right{-ms-flex-preferred-size:40px;flex-basis:40px;margin-top:0;margin-bottom:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.promo.hidden{display:none}.promo.show{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.promo.show .container__inner{-webkit-box-flex:1;-ms-flex:1;flex:1}.promo.fixed{position:fixed}.promo.show+header.header{margin-top:48px}.header{background:#fff;-webkit-box-shadow:0 1px 0 #dde2e5;box-shadow:0 1px 0 #dde2e5}.header .actions__left,.header__bottom__events{max-width:100%!important;margin:0}.header .header__events-all{margin:0;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative}.header .header__events-all .header__event-slot{-webkit-box-flex:1;-ms-flex:1 100%;flex:1 100%;border-right:1px solid #dde2e5;margin-top:3px;margin-bottom:3px;padding-left:15px;text-align:left;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-right:5px;min-width:300px}.header .header__events-all .header__event-slot:hover{text-decoration:none!important}.header .header__events-all .header__event-slot img{min-width:40px;height:40px}.header .header__events-all .header__event-slot div{margin-left:10px}.header .header__events-all .header__event-slot span{font-weight:700!important;font-size:.75rem;margin-bottom:0!important;margin-top:0;display:block;line-height:1.125rem;text-align:left}.header .header__events-all .header__event-slot p{font-weight:400;font-size:.625rem;line-height:130%!important;color:#495057!important;margin:0}@media only screen and (min-width:1050px){.header .header__events-all .header__event-slot p{font-size:.625rem}}.header .header__events-all .header__event-slot:first-child{padding-left:0}.header .header__events-all .header__event-slot:last-child{padding-right:0;border-right:0}@media only screen and (min-width:1050px){.header__bottom,.header__middle,.header__top{position:relative;white-space:nowrap}}.header__top{padding:10px 0}@media only screen and (min-width:800px){.header__top{padding:5px 0}}.header__bottom{padding:5px 0;z-index:29;max-width:100%}.header__bottom a{font-size:.8125rem}.header__bottom .trending{margin-left:0;margin-right:0}.header__bottom .actions{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.header__bottom .actions__left{max-width:calc(100% + 8px)}@media only screen and (min-width:800px){.header__bottom .actions__left{max-width:calc(100% + 24px)}}.header__bottom .actions__right{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;display:none}@media only screen and (min-width:1050px){.header__bottom .actions__right{display:-webkit-box;display:-ms-flexbox;display:flex}}.header__middle{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}@media only screen and (min-width:1050px){.header__middle{-ms-flex-wrap:nowrap;flex-wrap:nowrap}}.header__top .actions__left{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}@media only screen and (min-width:1050px){.header__top .actions__right{max-width:430px}}.no-style.header__nav li:nth-child(3){font-weight:700}.no-style.header__nav li:nth-child(3) a{color:#0e5ef1!important}.header__bottom__events::after{background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,0)),to(#fff));background:linear-gradient(90deg,rgba(255,255,255,0) 0,#fff 100%);content:'';position:absolute;height:60px;right:10px;width:25px}@media only screen and (min-width:1050px){.header__bottom__events::after{display:none}}.contribute-link{font-weight:400;font-size:.6875rem;color:#000!important;position:relative;padding-left:10px}.contribute-link:hover{color:#00791d!important;text-decoration:none!important}.contribute-link::before{content:'';width:1px;height:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:rgba(0,0,0,.1);left:-1px}.my-0{margin-top:0!important;margin-bottom:0!important}.header__desc.my-0{margin-left:0}.header__bottom__events .actions__left{max-width:100%!important;overflow-x:scroll;-ms-overflow-style:none;scrollbar-width:none;display:block;scroll-behavior:smooth;min-width:100%}.header__bottom__events .actions__left::-webkit-scrollbar{display:none}.header__bottom__events .actions__left:-webkit-scrollbar-thumb{background:#fff}.logo{line-height:1rem}.header{position:relative;z-index:41;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.header .input:focus,.header input[type=password]:focus,.header input[type=text]:focus{border:1px solid #00791d}.header a:not(.button):not(.login__action):not(.active){text-decoration:none;color:#222}.header a:not(.button):not(.login__action):not(.active):hover{text-decoration:underline;color:#222}.header__items{display:none;-ms-flex-wrap:wrap;flex-wrap:wrap}@media only screen and (min-width:1050px){.header__items{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.header__items nav{position:relative;background:0 0;padding:0;left:0;top:0;line-height:inherit;display:block;-webkit-box-shadow:none;box-shadow:none;max-width:100%;max-height:80px}}.header__items>div{width:100%;margin-bottom:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}@media only screen and (min-width:552px){.header__items>div:not(:nth-last-child(-n+2)){margin-bottom:32px}}@media only screen and (min-width:552px) and (max-width:1050px){.header__items>div{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;-ms-flex-preferred-size:calc(99.7% * 1/2 - (32px - 32px * 1/2));flex-basis:calc(99.7% * 1/2 - (32px - 32px * 1/2));max-width:calc(99.7% * 1/2 - (32px - 32px * 1/2));width:calc(99.7% * 1/2 - (32px - 32px * 1/2))}.header__items>div:nth-child(1n){margin-right:32px;margin-left:0}.header__items>div:last-child{margin-right:0}.header__items>div:nth-child(2n){margin-right:0;margin-left:auto}}@media only screen and (min-width:800px) and (max-width:1050px){.header__items>div{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;-ms-flex-preferred-size:calc(99.7% * 1/4 - (32px - 32px * 1/4));flex-basis:calc(99.7% * 1/4 - (32px - 32px * 1/4));max-width:calc(99.7% * 1/4 - (32px - 32px * 1/4));width:calc(99.7% * 1/4 - (32px - 32px * 1/4))}.header__items>div:nth-child(1n){margin-right:32px;margin-left:0}.header__items>div:last-child{margin-right:0}.header__items>div:nth-child(4n){margin-right:0;margin-left:auto}}@media only screen and (min-width:1050px){.header__items>div{margin-bottom:0!important;margin-right:0!important;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}}.header__items .language__switcher{display:none}.header__items .language__switcher .li-nav.active>a,.header__items .language__switcher>li.active>a{color:#fff!important}.header__items .language__switcher .li-nav.active>a:hover,.header__items .language__switcher>li.active>a:hover{color:#fff!important;background:#0e5ef1}.header__items .language__switcher .li-nav:hover>a,.header__items .language__switcher>li:hover>a{color:#fff}.header+main{display:block;min-height:210px;-webkit-transition:margin .15s ease;transition:margin .15s ease;margin-top:0!important}.header--hide .header+main{margin-top:50px}.header--hide .header__toggle{opacity:0;top:20px;visibility:hidden}.header--hide .header__logo{max-height:0}.header--hide .header__middle,.header--hide .header__top{max-height:0;overflow:hidden;padding-top:0;padding-bottom:0;border-color:transparent}.header--hide .header__bottom .vue-portal-target{top:3px;right:0;bottom:auto;left:auto;position:absolute}.header__middle,.header__top{-webkit-transition:all .15s ease;transition:all .15s ease}.header__middle{border-bottom:1px solid rgba(0,0,0,.1);z-index:33}.header__middle .vue-portal-target{width:100%}@media only screen and (min-width:1050px){.header__middle .vue-portal-target{display:none}}@media only screen and (min-width:1050px){.header__middle{line-height:5.75rem;text-align:left;padding:0;z-index:30}.header__middle .widget__heading{display:none}}.header__top>.actions__left{display:none}@media only screen and (min-width:1050px){.header__top>.actions__left{display:-webkit-box;display:-ms-flexbox;display:flex}}.header__top>.actions__right{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;margin-right:0;margin-top:0;margin-bottom:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.header__top>.actions__right .dropdown__holder{width:calc(100vw - 16px);max-height:80vh}@media only screen and (min-width:600px){.header__top>.actions__right .dropdown__holder{width:auto}}.header__top>.actions__right>*{margin:0}.header__top>.actions__right .search{display:none}@media only screen and (min-width:1050px){.header__top>.actions__right>*{display:-webkit-box;display:-ms-flexbox;display:flex;white-space:nowrap}.header__top>.actions__right .search{display:block}}.header__top .user__login{display:block}.header__top .user__login>.button,.header__top .user__login>button{border-top-right-radius:0;border-bottom-right-radius:0}@media only screen and (min-width:1050px){.header__top{position:relative;right:auto;width:100%}}.header__logo{max-width:165px;position:absolute;top:8px;overflow:hidden;-webkit-transition:all .1s ease;transition:all .1s ease;z-index:32;line-height:2.25rem;height:36px;width:100px;margin-left:50px;-ms-flex-preferred-size:190px;flex-basis:190px}@media only screen and (min-width:800px){.header__logo{top:4px}}@media only screen and (min-width:1050px){.header__logo{position:relative;top:0;overflow:visible;margin-right:20px;margin-left:0;line-height:3.125rem;height:50px}.header__logo>*{width:165px}}@media only screen and (min-width:1280px){.header__logo{margin-right:30px}}.header__desc,.header__more>button{text-transform:capitalize;color:#666;letter-spacing:0;font-size:0;font-weight:400;line-height:1.5rem;vertical-align:top;font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Variable","Segoe UI",system-ui,ui-sans-serif,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";-webkit-transition:font-size .15s ease-in-out;transition:font-size .15s ease-in-out}@media only screen and (min-width:1050px){.header__desc,.header__more>button{font-size:.6875rem}}.header__desc{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;position:relative;width:auto}.header__topics{white-space:nowrap;float:right;position:relative}.header__topics *{display:inline-block;vertical-align:top}.header__topics a{font-size:.8125rem}@media only screen and (min-width:1050px){.header__topics{float:none}}.header__more{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:top}.header__more:before{left:-12px}.header__more:after,.header__more:before{content:'';width:1px;height:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:rgba(0,0,0,.1)}.header__more:after{right:-12px}.header__more:hover{cursor:pointer;color:rgba(0,0,0,.75)}.header__user{display:inline-block;vertical-align:top;white-space:nowrap;margin-left:8px}@media only screen and (min-width:1050px){.header__user{margin-left:0}}.header__user>div{display:inline-block;vertical-align:top}.header__user-nav a:not(.button){text-transform:uppercase;font-size:.75rem;font-weight:600}.header__user-nav a:not(.button):not(.active){opacity:.5}.header__user-nav a:not(.button):not(.active):hover{opacity:.75}.header__user-nav a:not(.button):hover{text-decoration:none}.header__user-nav a:not(.button).active{color:#222;cursor:default;text-decoration:none}.header__user-nav a:not(.button):before{margin-right:0}.header__user-nav a:not(.button):not(:last-child){margin-right:16px}@media only screen and (min-width:1050px){.header__user-nav a:not(.button):not(:last-child){margin-right:32px}}@media only screen and (min-width:1050px){.header__user-nav+.header__topics{margin-left:56px}}.header__search{display:none;vertical-align:top;margin-right:0}@media only screen and (min-width:1050px){.header__search{display:inline-block}}.header__search,.header__user{line-height:inherit}.header__nav{border-bottom:1px solid rgba(0,0,0,.1)}@media only screen and (min-width:800px){.header__nav{border-bottom:0}}.header__nav .button{margin-left:0}.header__nav .button__more{margin-right:20px}.header__nav .li-nav,.header__nav>li{-webkit-transition:all .15s ease;transition:all .15s ease}@media only screen and (min-width:1050px){.header__nav .li-nav,.header__nav>li{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle;position:static;border:none;min-height:65px}.header__nav .li-nav:hover.has--subnav .nav .li-nav,.header__nav .li-nav:hover.has--subnav .nav>li,.header__nav>li:hover.has--subnav .nav .li-nav,.header__nav>li:hover.has--subnav .nav>li{white-space:normal}.header__nav .li-nav:hover.has--subnav .nav__subnav,.header__nav>li:hover.has--subnav .nav__subnav{opacity:1;top:100%;visibility:visible;-webkit-transition-delay:.25s;transition-delay:.25s}.header__nav .li-nav:hover.has--subnav .nav__category,.header__nav>li:hover.has--subnav .nav__category{width:100%}.header__nav .li-nav:hover.has--subnav .nav__category:after,.header__nav .li-nav:hover.has--subnav .nav__category:before,.header__nav>li:hover.has--subnav .nav__category:after,.header__nav>li:hover.has--subnav .nav__category:before{-webkit-transition-delay:.25s;transition-delay:.25s;opacity:1}}@media only screen and (min-width:1080px){.header__nav .li-nav:not(:last-child),.header__nav>li:not(:last-child){margin-right:23px;margin-left:23px}}@media only screen and (min-width:1280px){.header__nav .li-nav:not(:last-child),.header__nav>li:not(:last-child){margin-right:23px;margin-left:23px}}@media only screen and (min-width:1338px){.header__nav .li-nav:not(:last-child),.header__nav>li:not(:last-child){margin-right:23px;margin-left:23px}}.header__nav .li-nav>a,.header__nav>li>a{font-size:.875rem;line-height:1.5rem;padding:12px 0;color:#000;display:inline-block;max-width:100%;position:relative;z-index:61;white-space:normal}@media only screen and (min-width:1050px){.header__nav .li-nav>a,.header__nav>li>a{padding:8px 0 0;font-weight:700}}.header__nav .li-nav>a:after,.header__nav .li-nav>a:before,.header__nav>li>a:after,.header__nav>li>a:before{content:'';position:absolute;bottom:-1px;left:50%;width:0;height:0;opacity:0;-webkit-transform:translateX(-50%);transform:translateX(-50%);border-style:solid;border-width:0 5px 5px 5px;-webkit-transition:opacity .15s ease-in-out;transition:opacity .15s ease-in-out;border-color:transparent transparent #fff transparent}.header__nav .li-nav>a:before,.header__nav>li>a:before{left:50%;bottom:0;border-width:0 6px 6px 6px;border-color:transparent transparent #f5f7f8 transparent}@media only screen and (min-width:1050px){.header__nav .li-nav>a,.header__nav>li>a{font-size:1rem}}@media only screen and (min-width:1800px){.header__nav .li-nav>a,.header__nav>li>a{font-size:1.125rem}}.header--open{overflow:hidden}@media only screen and (min-width:600px){.header--open{overflow:visible}}.header--open .content-items{max-height:215px;margin:12px 0 24px}.header--open .search{margin-top:16px;display:block}.header--open .header__toggle:before{z-index:10}.header--open .header__toggle>span:nth-child(1){top:50%;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.header--open .header__toggle>span:nth-child(2){opacity:0}.header--open .header__toggle>span:nth-child(3){top:50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.header--open .header__items,.header--open .header__items .language__switcher{display:-webkit-box;display:-ms-flexbox;display:flex}.header--open .header__top{z-index:100;position:absolute;left:0;right:8px;background:#fff}@media only screen and (min-width:800px){.header--open .header__top{right:20px}}.header--open .header__top .search{display:none}.header--open .header__logo{z-index:101}.header--open .header__middle{padding-top:60px}.header--open .header__bottom{display:none}.header--open .header__container{max-height:90vh;overflow-x:hidden;overflow-y:auto}@media only screen and (min-width:1050px){.header--open .header__container{overflow:visible}}.header .subnav{position:absolute;-webkit-box-shadow:0 5px 25px 1px rgba(0,0,0,.15);box-shadow:0 5px 25px 1px rgba(0,0,0,.15);background:#fff;visibility:hidden;line-height:1.75rem;max-width:100%;width:100%;left:0;opacity:0;overflow:hidden;border:1px solid #f5f7f8;border-radius:2px;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out;top:105%;z-index:60;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.header .subnav .subnav__categories{-webkit-box-flex:0;-ms-flex:0 1 280px;flex:0 1 280px;padding:24px 0;background:#f5f7f8;margin-right:0!important}.header .subnav .subnav__categories>li{display:block;font-size:.9375rem;padding:2px 48px 2px 24px}.header .subnav .subnav__categories>li a{display:block;font-weight:700}.header .subnav .subnav__categories>li:hover{background:#e1e1e1}.header .subnav .subnav__heading{margin-bottom:20px}.header .subnav .subnav__content{position:relative;-ms-flex-item-align:start;align-self:flex-start;padding:24px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}@media only screen and (min-width:1050px){.header .subnav .subnav__content{padding-left:32px;padding-right:32px;margin:0 auto;-webkit-box-flex:1;-ms-flex:1 1 600px;flex:1 1 600px}}.header .subnav .subnav__content .heading__container{-ms-flex-preferred-size:100%;flex-basis:100%}.header .subnav .subnav__content:before{content:'';position:absolute;left:0;top:0;bottom:-100%;width:1px;background:rgba(0,0,0,.1)}.languagesEdition .active{font-weight:700}.header__more.dropdown:after{content:'';display:inline-block;vertical-align:middle;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;background-repeat:no-repeat;background-position:center;margin-bottom:2px;width:7px;height:7px;-webkit-transition:-webkit-transform .15s ease;transition:-webkit-transform .15s ease;transition:transform .15s ease;transition:transform .15s ease,-webkit-transform .15s ease;background-color:#fff!important;background-size:contain}.header__more.dropdown button{color:#000!important;margin-right:-20px;padding-right:20px;z-index:1000}.header__more.dropdown .dropdown__holder{width:165px}.header__more.dropdown .dropdown__content{padding:13px;padding-top:5px;padding-bottom:5px}.header__more.dropdown .languagesEdition li{border-bottom:1px solid #e6e6e6}.header__more.dropdown .languagesEdition li:last-child{border:0}.logo__data{display:none;color:#666;font-size:.6875rem}@media only screen and (min-width:1050px){.logo__data{display:block;line-height:.8125rem}}.container{padding-left:12px;padding-right:12px;margin:0 auto;min-width:320px;-webkit-transition:padding .15s ease-in-out;transition:padding .15s ease-in-out}@media only screen and (min-width:600px){.container{padding-left:16px;padding-right:16px}}@media only screen and (min-width:800px){.container{padding-left:20px;padding-right:20px}}@media only screen and (min-width:1250px){.container{padding-left:60px;padding-right:60px}}@media only screen and (min-width:1400px){.container{padding-left:20px;padding-right:20px}}.container.white{background:#fff}.container__inner{max-width:1290px;margin:0 auto;-webkit-transition:max-width .15s ease-out;transition:max-width .15s ease-out}.search{display:block;position:relative;z-index:33;width:100%;max-width:100%;margin:0}.search:before{position:absolute;top:50%;right:24px;-webkit-transform:translateY(-50%);transform:translateY(-50%);margin-right:0;z-index:34}.search__bar{display:block;border-radius:2px;position:relative;z-index:33}.search__bar #search{margin-bottom:0;max-width:100%;background:#fff}.search__go{top:50%;right:0;bottom:0;left:auto;position:absolute;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:32;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:36px;height:36px;line-height:2.25rem;-webkit-box-shadow:none;box-shadow:none;display:block;background:0 0;border:0;font-size:0}@media only screen and (min-width:600px){.search__go{z-index:35}}.header #search,.search__go:hover{cursor:pointer}.header #search{height:36px;position:relative;max-width:100%;background-color:#f5f7f8!important}@media only screen and (min-width:600px){.header #search{font-size:.8125rem;min-width:165px;max-width:100%;opacity:1}}.header #search:hover{cursor:auto}@media only screen and (min-width:1050px){.header #search{margin-left:auto;border-top-right-radius:0;border-bottom-right-radius:0;border-right:0}.header #search:focus{min-width:215px}}.header #search:focus{cursor:auto}.header #search .field__desc{display:none}.header #searchForm{width:100%;margin-top:8px}.header #searchForm:before{right:8px}@media only screen and (min-width:600px){.header #searchForm{margin-top:16px}}@media only screen and (min-width:1050px){.header #searchForm{margin-top:0}}</style>
<script>(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date;
h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')};
(a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c;
})(window,document.documentElement,'async-hide','dataLayer',4000,
{'GTM-W9GJ5DL':true});</script>
<script type="text/javascript">
var loggedIn = false;
if (loggedIn) {
var userCountryId = '';
}
</script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
//CookieControl tool recomendation
// Call the default command before gtag.js or Tag Manager runs to
// adjust how the tags operate when they run. Modify the defaults
// per your business requirements and prior consent granted/denied, e.g.:
gtag('consent', 'default', {
'ad_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'analytics_storage': 'denied',
wait_for_update: 500
});
gtag('set', 'ads_data_redaction', true);
gtag('set', 'url_passthrough', true);
if((typeof loggedIn != "undefined") && loggedIn){
window.dataLayer.push({'logged_in': 'true'});
} else {
window.dataLayer.push({'logged_in': 'false'});
}
window.dataLayer.push({'show_queryz': ''});
gtag('config', 'G-VMVPD4D2JY');
</script>
<!-- Google Tag Manager -->
<script>
var gtmProfile="GTM-W9GJ5DL";
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer', gtmProfile);</script>
<!-- End Google Tag Manager -->
<title>Resilience and Incident Management with Vanessa Huerta Granda - InfoQ</title>
<link rel="canonical" href="https://www.infoq.com/podcasts/incident-management-resilience/"/>
<link rel="alternate" href="https://www.infoq.com/podcasts/incident-management-resilience/" hreflang="en"/>
<link rel="alternate" href="https://www.infoq.com/podcasts/incident-management-resilience/" hreflang="x-default" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="cache-control" content="private,no-cache,no-store,must-revalidate" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="copyright" content="&copy; 2006 C4Media" />
<meta name="google-site-verification" content="0qInQx_1WYOeIIbxnh7DnXlw1XOxNgAYakO2k4GhNnY" />
<meta name="msapplication-TileColor" content="#ffffff"/>
<meta name="msapplication-TileImage" content="/styles/static/images/logo/logo.jpg"/>
<meta property="wb:webmaster" content="3eac1729a8bbe046" />
<meta content="width=device-width,initial-scale=1" name="viewport">
<meta http-equiv="X-UA-Compatible" content="IE=10, IE=edge">
<link rel="stylesheet" type="text/css" media="screen" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/style.css"/>
<link rel="stylesheet" type="text/css" media="print" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/print.css"/>
<link rel="preload" type="text/css" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/style_en.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
<link rel="preload" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/icons.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
<link rel="preload" type="text/css" media="screen" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/style_extra.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
<noscript>
<link rel="stylesheet" type="text/css" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/style_en.css"/>
<link rel="stylesheet" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/icons.css">
<link rel="stylesheet" type="text/css" media="screen" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/style_extra.css"/>
</noscript>
<link rel="stylesheet" type="text/css" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/fonts/font.css"/>
<link rel="shortcut icon" href="https://cdn.infoq.com/statics_s2_20260910111657/favicon.ico" type="image/x-icon" />
<link rel="apple-touch-icon" href="https://cdn.infoq.com/statics_s2_20260910111657/apple-touch-icon.png"/>
<script type="text/javascript">
var device='desktop';
var InfoQConstants = {};
InfoQConstants.language = 'en';
InfoQConstants.countryCode = '';
InfoQConstants.pageUrl = (typeof window.location != 'undefined' && window.location && typeof window.location.href != 'undefined' && window.location.href) ? window.location.href : "URL_UNAVAILABLE";
InfoQConstants.cet='6KVPHph6HgFezr2a';
InfoQConstants.userDetectedCountryCode = 'US';
InfoQConstants.bpadb = 'OkdrOhA8BvInkKBonZb7';
</script>
<script type="text/javascript" src="https://cdn.infoq.com/statics_s2_20260910111657/scripts/combinedJs.min.js"></script>
<script type="text/javascript">
var JSi18n = JSi18n || {}; // define only if not already defined
JSi18n.error='Error';
JSi18n.login_unverifiedAccount='Unverified account';
JSi18n.contentSummary_showPresentations_1='';
JSi18n.contentSummary_showPresentations_2='';
JSi18n.contentSummary_showPresentations_3='';
JSi18n.contentSummary_showInterviews_1='';
JSi18n.contentSummary_showInterviews_2='';
JSi18n.contentSummary_showInterviews_3='';
JSi18n.contentSummary_showMinibooks_1='';
JSi18n.contentSummary_showMinibooks_2='';
JSi18n.login_sendingRequest='Sending request ...';
JSi18n.bookmark_saved='<q>&nbsp;&nbsp;&nbsp;Saved&nbsp;&nbsp;&nbsp;&nbsp;</q>';
JSi18n.bookmark_error='<q style=color:black;>&nbsp;&nbsp;&nbsp;Error&nbsp;&nbsp;&nbsp;&nbsp;</q>';
JSi18n.categoryManagement_showpopup_viewAllLink_viewAllPrefix='View All';
JSi18n.categoryManagement_showpopup_viewAllLink_viewAllSuffix='';
JSi18n.categoryManagement_showpopup_includeExcludeLink_Exclude='Exclude';
JSi18n.categoryManagement_showpopup_includeExcludeLink_Include='Include';
JSi18n.login_invalid_email='Please specify a valid email';
JSi18n.login_email_not_found = 'No user found with that email';
JSi18n.content_datetime_format='MMM dd, yyyy';
// used by frontend
JSi18n.FE = {
labels: {
follow: "Follow",
followTopic: "Follow Topic",
unfollow: "Unfollow",
unfollowTopic: "Unfollow Topic",
following: "Following",
followers: "Followers",
like: "Like",
liked: "Liked",
authors: "Peers",
users : "Users",
topics: "Topics",
hide: "Hide Item",
hidden: "%s was hidden on your profile page.",
undo: "Undo",
showLess: "Show less",
showMore: "Show more",
moreAuthors: "And %s more",
bookmarked: "Content Bookmarked",
unbookmarked: "Content Unbookmarked",
characterLimit: "Characters Remaining"
}
}
var usersInPage = JSON.parse('[{\"id\":\"62671158\",\"ref\":\"author-Monica-Beckwith\",\"url\":\"\/profile\/Monica-Beckwith\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Monica Beckwith\",\"bio\":\"Java Champion, Monica Beckwith is a Java performance engineer. She currently works on improving OpenJDK&#39;s HotSpot VM at Microsoft. Her past experiences include working with Arm, Oracle\/Sun and AMD; optimizing the JVM for server class systems. Monica was voted a JavaOne Rock Star speaker and was the performance lead for Garbage First Garbage Collector (G1 GC). You can follow Monica on twitter &#64;mon_beck\",\"followers\":1833,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/QhDv7pXEUK1sdLsYArFmnLxecH4rYhAc.jpg\"},{\"id\":\"45723890\",\"ref\":\"author-Rags-Srinivas\",\"url\":\"\/profile\/Rags-Srinivas\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Rags Srinivas\",\"bio\":\"Raghavan &#34;Rags&#34; Srinivas (&#64;ragss) works as an Architect\/Developer Evangelist goaled with helping developers build highly scalable and available systems. As an OpenStack advocate and solutions architect at Rackspace he was constantly challenged from low level infrastructure to high level application issues. His general focus area is in distributed systems, with a specialization in Cloud Computing and Big Data. He worked on Hadoop, HBase and NoSQL during its early stages. He has spoken on a variety of technical topics at conferences around the world, written for developer portals, conducted and organized Hands-on Labs and taught graduate and online classes in the evening. Rags brings with him over 25 years of hands-on software development and over 15 years of architecture and technology evangelism experience. He has evangelized and influenced the architecture of a number of emerging technology areas. He is also a repeat JavaOne rock star speaker award winner. Rags holds a Masters degree in Computer Science from the Center of Advanced Computer Studies at the University of Louisiana at Lafayette. He likes to hike, run and generally be outdoors but most of all loves to eat.\",\"followers\":356,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/t4nyfgw1THkp4wMZ9EZ59RGJx8Hf9Rk8.jpg\"},{\"id\":\"87551248\",\"ref\":\"author-Steef~Jan-Wiggers\",\"url\":\"\/profile\/Steef~Jan-Wiggers\",\"followedByCurrentUser\":false,\"minibio\":\"Cloud Queue Lead Editor | Domain Architect | Cloud Expert\",\"name\":\"Steef-Jan Wiggers\",\"bio\":\"Steef-Jan Wiggers is one of InfoQ&#39;s senior cloud editors and works as a Domain Architect at VGZ in the Netherlands. His current technical expertise focuses on implementing integration platforms, Azure DevOps, AI, and Azure Platform Solution Architectures. Steef-Jan is a regular speaker at conferences and user groups and writes for InfoQ. Furthermore, Microsoft has recognized him as a Microsoft Azure MVP for the past sixteen years.\",\"followers\":895,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/BhZx03k3Hj0pZVXmTzGqItwZxtJ06oIb.jpg\"},{\"id\":\"80977916\",\"ref\":\"author-Thomas-Betts\",\"url\":\"\/profile\/Thomas-Betts\",\"followedByCurrentUser\":false,\"minibio\":\"Senior Laureate Application Architect at Blackbaud\",\"name\":\"Thomas Betts\",\"bio\":\"Thomas Betts is the former Lead Editor for Architecture and Design at InfoQ, a co-host of the InfoQ Podcast, and a Senior Laureate Software Architect at Blackbaud, working on Agents for Good.\\r\\n\\r\\nFor over two decades, his focus has always been on providing software solutions that delight his customers. He has worked in a variety of industries, including social good, retail, finance, health care, defense and travel.\\r\\n\\r\\nThomas lives in Denver with his wife and son, and they love hiking and otherwise exploring beautiful Colorado.\",\"followers\":1171,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/pSqI6HrU3k9rmmVjwS34OHG0bOMYiE6a.jpg\"},{\"id\":\"72028228\",\"ref\":\"author-Sergio-De-Simone\",\"url\":\"\/profile\/Sergio-De-Simone\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Sergio De Simone\",\"bio\":\"<b>Sergio De Simone<\/b> is a software engineer. Sergio has been working as a software engineer for over twenty five years across a range of different projects and companies, including such different work environments as Siemens, HP, and small startups. For the last 10&#43; years, his focus has been on development for mobile platforms and related technologies. He is currently working for BigML, Inc., where he leads iOS and macOS development.\",\"followers\":777,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/NovciOoQOAYWqYqRQBFo97SuMm0xbUiC.jpg\"},{\"id\":\"126467140\",\"ref\":\"author-Renato-Losio\",\"url\":\"\/profile\/Renato-Losio\",\"followedByCurrentUser\":false,\"minibio\":\"Cloud Expert | AWS Data Hero \",\"name\":\"Renato Losio\",\"bio\":\"Renato has extensive experience as a cloud architect, advisor, and cloud services specialist. Currently, he lives in Berlin and works remotely as a principal cloud architect. His primary areas of interest include cloud services and relational databases. He is an editor at InfoQ and a recognized AWS Data Hero. You can connect with him on LinkedIn.\",\"followers\":913,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/ptroF8HdI2vWXm0NDaKeS0JdiPxMOAra.jpg\"},{\"id\":\"126645082\",\"ref\":\"author-Vanessa-Huerta-Granda\",\"url\":\"\/profile\/Vanessa-Huerta-Granda\",\"followedByCurrentUser\":false,\"minibio\":\"Resiliency Manager @Enova\",\"name\":\"Vanessa Huerta Granda\",\"bio\":\"Vanessa Huerta Granda is an Engineering Manager at Enova leading the Resilience Engineering team focusing on their Production Incident process, learning from incidents, and leading the on-call rotation of Incident Commanders. She previously worked as a Solutions Engineer at Jeli helping companies make the most of their incidents. In 2021 she co-authored Howie: The Post-Incident Guide, an in-depth explanation for how tech organizations can learn from incidents. \\r\\n\\r\\nShe has led the Chicago Women in Technology Conference and is an admin of the Learning From Incidents community. She is passionate about continuous improvement, getting teams to talk to each other, and Diversity and Inclusion in Tech.\\r\\n\",\"followers\":3,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/6e502631d4fa0e2999b4f78a545a7588.jpg\"},{\"id\":\"31608135\",\"ref\":\"author-Shane-Hastie\",\"url\":\"\/profile\/Shane-Hastie\",\"followedByCurrentUser\":false,\"minibio\":\"Lead Editor, Culture and Methods, InfoQ Culture Podcast Host\",\"name\":\"Shane Hastie\",\"bio\":\"Shane leads the Culture and Methods editorial team for InfoQ.com where he hosts the weekly InfoQ Culture Podcast. \\r\\n\\r\\nOver the last 30&#43; years Shane has been a practitioner and leader of developers, testers, trainers, project managers and business analysts, helping teams to deliver results that align with overall business objectives. \\r\\n\\r\\nHe has worked with large and small organisations, from individual teams to large transformations all around the world. He draws on over 3 decades of practical experience across all levels of Information Technology and software intensive product development.\\r\\nShane was a director of the Agile Alliance from 2011 to 2016 and was the founding Chair of Agile Alliance New Zealand. \\r\\n\\r\\nShane is an ICF registered Professional Coach.\\r\\n\\r\\n\u201CI firmly believe that humanistic way of working and the agile mindset are desperately needed in organisations all around the globe today. Taking agile values and principles beyond software is important and making sure they are properly embedded is absolutely crucial for success \u2013 we\u2019re in an industry that touches every aspect of people\u2019s lives and massively influences society as a whole and I want to be a part of making sure that industry is both ethical and sustainable.\u201D\\r\\n\",\"followers\":405,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/lDZwKGgJkVvj51FMiZ8u6lKKqmI4jJSX.jpg\"},{\"id\":\"126464202\",\"ref\":\"author-Johan-Janssen\",\"url\":\"\/profile\/Johan-Janssen\",\"followedByCurrentUser\":false,\"minibio\":\"Architect at ASML\",\"name\":\"Johan Janssen\",\"bio\":\"Architect at ASML, loves to share knowledge mainly around Java. Spoke at conferences such as Devoxx, Oracle Code One, Devnexus, and many more. Assisted conferences by participating in program committees and invented and organized JVMCON. Received the JavaOne Rock Star and Oracle Code One Star awards. Wrote various articles both for digital and printed media. Maintainer of various Java JDK\/JRE packages for Chocolatey with around 100 thousand downloads a month.\",\"followers\":536,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/Fb4eZ0mtvMf6MhsmBIhsUVueV4xAs2FD.jpg\"},{\"id\":\"39485652\",\"ref\":\"author-Daniel-Bryant\",\"url\":\"\/profile\/Daniel-Bryant\",\"followedByCurrentUser\":false,\"minibio\":\"InfoQ News Manager | Building Platforms at Syntasso\",\"name\":\"Daniel Bryant\",\"bio\":\"Daniel Bryant is the news manager at InfoQ and the emeritus chair of QCon London. He is also a platform engineer and head of product marketing at Syntasso. Daniel&#39;s technical expertise focuses on \u2018DevOps\u2019 tooling, cloud\/container platforms, and microservice implementations. He is a long-time coder and Java Champion who has contributed to several open source projects. Daniel also writes for InfoQ, O\u2019Reilly, and The New Stack and regularly presents at international conferences such as KubeCon, QCon, and JavaOne. In his copious amounts of free time, he enjoys running, reading, and travelling.\",\"followers\":2751,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/tSe5dczMaSGtRUm18VkTR2tcF4W3SogA.jpg\"},{\"id\":\"63268344\",\"ref\":\"author-Chris-Swan\",\"url\":\"\/profile\/Chris-Swan\",\"followedByCurrentUser\":false,\"minibio\":\"Engineer, Atsign\",\"name\":\"Chris Swan\",\"bio\":\"Chris Swan is an Engineer at <a href=\\\"https:\/\/atsign.com\\\" rel=\\\"nofollow\\\">Atsign<\/a>, building the atPlatform, a technology that is putting people in control of their data and removing the frictions and surveillance associated with today\u2019s Internet. He was previously a Fellow at DXC Technology where he held various CTO roles. Before that he held CTO and Director of R&amp;D roles at Cohesive Networks, UBS, Capital SCF and Credit Suisse, where he worked on app servers, compute grids, security, mobile, cloud, networking and containers. Chris co-hosts the <a href=\\\"https:\/\/techdebtburndown.com\/\\\" rel=\\\"nofollow\\\">Tech Debt Burndown Podcast<\/a> and is a Dart Google Developer Expert (<a href=\\\"https:\/\/developers.google.com\/community\/experts\\\" rel=\\\"nofollow\\\">GDE<\/a>).\",\"followers\":1873,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/8PE76nOujWAoCM8yqLn9Hfv2HqW3VlIP.jpg\"},{\"id\":\"4927376\",\"ref\":\"author-Karsten-Silz\",\"url\":\"\/profile\/Karsten-Silz\",\"followedByCurrentUser\":false,\"minibio\":\"Full-Stack Java Developer\",\"name\":\"Karsten Silz\",\"bio\":\"Karsten Silz has worked as a full-stack Java developer for 26 years in Europe and the US. In 2004, he co-founded a software product start-up in the US. Karsten led product development for 13 years and left after the company was sold successfully. Since 2003, he has also worked as a contractor. He co-founded the SaaS start-up &#34;Your Home in Good Hands&#34; as CTO in the UK in 2020.\",\"followers\":399,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/p6zmOdOcqXiRj09iiZNeDZap7f0IglQW.jpg\"},{\"id\":\"343314\",\"ref\":\"author-Jonathan-Allen\",\"url\":\"\/profile\/Jonathan-Allen\",\"followedByCurrentUser\":false,\"minibio\":\"Software Architect\",\"name\":\"Jonathan Allen\",\"bio\":\"Jonathan Allen got his start working on MIS projects for a health clinic in the late 90&#39;s, bringing them up from Access and Excel to an enterprise solution by degrees. After spending five years writing automated trading systems for the financial sector, he became a consultant on a variety of projects including the UI for a robotic warehouse, the middle tier for cancer research software, and the big data needs of a major real estate insurance company. In his free time he enjoys studying and writing about martial arts from the 16th century.\\r\\n\",\"followers\":1833,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/Wk_C09_mzwK23YkTkKMXResJv3LKUN5D.jpg\"},{\"id\":\"114725059\",\"ref\":\"author-Holly-Cummins\",\"url\":\"\/profile\/Holly-Cummins\",\"followedByCurrentUser\":false,\"minibio\":\"Senior Technical Staff Member, IBM\",\"name\":\"Holly Cummins\",\"bio\":\"Holly Cummins is a Senior Principal Software Engineer on the Red Hat Quarkus team. Before joining Red Hat, Holly was a long time IBMer. In her time at IBM, Holly has been a full-stack javascript developer, a WebSphere Liberty build architect, a client-facing consultant, a JVM performance engineer, and an innovation leader. During her time in the IBM Garage, Holly led projects for enormous banks, tiny startups, and everything in between. Holly has used the power of cloud to understand climate risks, count fish, help a blind athlete run ultra-marathons in the desert solo, and invent stories (although not at all the same time). Holly is also a Java Champion, author, and regular keynote speaker. You can follow her on bluesky at &#64;&#64;hollycummins.com or at hollycummins.com.\\r\\n\\r\\n\\r\\nBefore joining IBM, Holly completed a PhD in Quantum Computation.\\r\\n\",\"followers\":615,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20260910111657\/images\/profiles\/cRsuGlFgKyGmGfEHvafpMO63CxbrEm22.jpg\"}]');
var topicsInPage = JSON.parse('[{\"name\":\"Careers\",\"id\":\"704\",\"url\":\"\/careers\",\"followers\":8,\"followedByCurrentUser\":false},{\"name\":\"Architecture & Design\",\"id\":\"6816\",\"url\":\"\/architecture-design\",\"followers\":10383,\"followedByCurrentUser\":false},{\"name\":\"Culture & Methods\",\"id\":\"6817\",\"url\":\"\/culture-methods\",\"followers\":3994,\"followedByCurrentUser\":false},{\"name\":\"QCon San Francisco 2023\",\"id\":\"18497\",\"url\":\"\/qcon-san-francisco-2023\",\"followers\":4,\"followedByCurrentUser\":false},{\"name\":\"Resilience\",\"id\":\"14722\",\"url\":\"\/Resilience\",\"followers\":90,\"followedByCurrentUser\":false},{\"name\":\"Culture\",\"id\":\"6243\",\"url\":\"\/Culture\",\"followers\":47,\"followedByCurrentUser\":false},{\"name\":\".NET Core\",\"id\":\"15683\",\"url\":\"\/Net-Core\",\"followers\":8030,\"followedByCurrentUser\":false},{\"name\":\"Incident Response\",\"id\":\"16293\",\"url\":\"\/incident-reponse\",\"followers\":11,\"followedByCurrentUser\":false},{\"name\":\"InfoQ\",\"id\":\"134\",\"url\":\"\/InfoQ\",\"followers\":95,\"followedByCurrentUser\":false},{\"name\":\"Machine Learning\",\"id\":\"5449\",\"url\":\"\/MachineLearning\",\"followers\":14751,\"followedByCurrentUser\":false},{\"name\":\"Microservices\",\"id\":\"15274\",\"url\":\"\/microservices\",\"followers\":22348,\"followedByCurrentUser\":false},{\"name\":\"Artificial Intelligence\",\"id\":\"3851\",\"url\":\"\/artificial_intelligence\",\"followers\":235,\"followedByCurrentUser\":false},{\"name\":\"Architecture\",\"id\":\"1389\",\"url\":\"\/architecture\",\"followers\":3366,\"followedByCurrentUser\":false},{\"name\":\"AI, ML & Data Engineering\",\"id\":\"16690\",\"url\":\"\/ai-ml-data-eng\",\"followers\":6077,\"followedByCurrentUser\":false},{\"name\":\"QCon Software Development Conference\",\"id\":\"597\",\"url\":\"\/qcon\",\"followers\":261,\"followedByCurrentUser\":false},{\"name\":\"Engineering Culture Podcast\",\"id\":\"17206\",\"url\":\"\/Engineering-Culture-Podcast\",\"followers\":29,\"followedByCurrentUser\":false},{\"name\":\"Java9\",\"id\":\"7097\",\"url\":\"\/Java9\",\"followers\":5540,\"followedByCurrentUser\":false},{\"name\":\"DevOps\",\"id\":\"6043\",\"url\":\"\/Devops\",\"followers\":5131,\"followedByCurrentUser\":false},{\"name\":\"Reactive Programming\",\"id\":\"15453\",\"url\":\"\/reactive-programming\",\"followers\":12430,\"followedByCurrentUser\":false},{\"name\":\"Development\",\"id\":\"6815\",\"url\":\"\/development\",\"followers\":4154,\"followedByCurrentUser\":false},{\"name\":\"Management\",\"id\":\"48\",\"url\":\"\/management\",\"followers\":34,\"followedByCurrentUser\":false}]');
var userContentLikesInPage = [];
var userCommentsLikesInPage = [];
var currentUserId = 2;
</script>
<!-- Latest Version -->
<script src="https://cc.cdn.civiccomputing.com/9/cookieControl-9.x.min.js" type="text/javascript"></script>
<script>
const config = {
apiKey: '8910ea974a96ffb6f927952b4ae9b9b0cc3e5973',
product: 'PRO_MULTISITE',
// general settings
consentCookieExpiry: 90,
encodeCookie: true,
sameSiteCookie: true, // if false, cookie set as SameSite=None;secure;
sameSiteValue: ';secure', // either 'Strict', 'Lax', or 'None'
subDomains: true,
initialState: 'notify', // 'notify','top','box' require pro licence
notifyOnce: false,
setInnerHTML: true,
//layout settings
layout: 'slideout',
position: 'left',
theme: 'light',
acceptButton: true,
rejectButton: true,
closeOnGlobalChange: true,
closeStyle: 'icon',
toggleType: 'slider',
notifyDismissButton: true,
settingsStyle: 'link',
excludedCountries: ['US'],
/*accessibility: {
disableSiteScrolling: true,
},*/
statement: {
description: 'For more detailed information about the cookies we use, see our',
name: 'Cookie Policy',
url: 'https://www.infoq.com/cookie-policy',
updated: '01/01/2024',
},
// cookies starting from 'cookie_expire' are from live.infoq.com but since we use the same tool on the same domain we need to specify those too so
// that infoq.com cookieControl does not delete live.infoq.com cookies(also infoq.com cookies have been specified in live.infoq.com cookieControl configs)
necessaryCookies: ['RegUserCookie', 'UserCookie', 'IdpCookie', 'ConversionTrackingV2_','PSAdialog','*P13NWN*','topbarSurvey','__bkm','JSESSIONID','mp_','_mixpanel','CloudFront-Key-Pair-Id','CloudFront-Policy','CloudFront-Signature','cookie_expire','discount_promo_closed','discount_promo_code','discount_promo_submitted','exit_survey_popup','referrer_popup','voting_popup_*','AWSALB','AWSALBCORS','aws-waf-token','iq_sub_preview'],
optionalCookies: [
{
name: 'analytics',
label: 'Analytics',
description: 'Analytical cookies help us to improve our website by collecting and reporting information on its usage.',
cookies: ['_ga', '_ga*', '_gid', '_gat', '__utma', '__utmt', '__utmb', '__utmc', '__utmz', '__utmv'],
onAccept: function(){
gtag('consent', 'update', {'analytics_storage': 'granted'});
},
onRevoke: function(){
gtag('consent', 'update', {'analytics_storage': 'denied'});
}
},
{
name: 'marketing',
label: 'Advertising',
description: 'We use advertising cookies to display advertisements to you for our products.',
onAccept: function(){
gtag('consent', 'update', {'ad_storage': 'granted', 'ad_personalization': 'granted', 'ad_user_data': 'granted'});
},
onRevoke: function(){
gtag('consent', 'update', {'ad_storage': 'denied', 'ad_personalization': 'denied', 'ad_user_data': 'denied'});
}
}
],
text : {
// main preference panels
title: '<h3>Our use of cookies</h3>',
intro: 'We use necessary cookies to make our site work. Functional cookies help enhance the performance and functionality of the site. '+
'We\'d also like to set analytics cookies to help us improve your experience by measuring how you use the site. '+
'These will be set only if you accept. ',
acceptSettings: 'I Accept',
rejectSettings: 'I Do Not Accept',
necessaryTitle : '<h3>Necessary Cookies</h3>',
necessaryDescription : 'Necessary cookies enable core functionality ' +
'such as page navigation and access to secure areas. '+
'The website cannot function properly without '+
'these cookies, and can only be disabled by changing '+
'your browser preferences.',
closeLabel: 'Close Cookie Control',
cornerButton: 'Set cookie preferences',
// main preference panel controls
on: 'On',
off : 'Off',
thirdPartyTitle : 'Some cookies require your attention',
thirdPartyDescription : 'Consent for the following cookies could not be '+
'automatically revoked. Please follow the link(s) '+
'below to opt out manually.',
// notification panels (only accessible for pro licences)
notifyTitle : 'Your choice regarding cookies on this site',
notifyDescription : 'We use cookies to optimise site functionality and '+
'give you the best possible experience.',
accept : 'I Accept',
reject: 'I Do Not Accept',
settings : 'Settings',
},
branding : {
removeAbout: true,
},
};
// do not load this for local envs only. for testing on local envs remove/modify this condition
if(InfoQConstants.pageUrl.indexOf('local')===-1){
CookieControl.load( config );
}
</script>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "NewsArticle",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.infoq.com/podcasts/incident-management-resilience/"
},
"headline": "Resilience and Incident Management with Vanessa Huerta Granda",
"image": ["https://res.infoq.com/podcasts/incident-management-resilience/en/card_header_image/generatedCard-1709188759831.jpg"
],
"datePublished": "2024-03-01T08:00:00+0000",
"dateModified": "2024-03-01T08:00:00+0000",
"author": [
{
"@type": "Person",
"name": "Shane Hastie",
"url": "https://www.infoq.com/profile/Shane-Hastie/"
}
],
"contributor": [
{
"@type": "Person",
"name": "Vanessa Huerta Granda",
"url": "https://www.infoq.com/profile/Vanessa-Huerta-Granda/"
}
],
"publisher": {
"@type": "Organization",
"name": "InfoQ",
"logo": {
"@type": "ImageObject",
"url": "https://assets.infoq.com/resources/en/infoQ-logo-big.jpg"
}
},
"description": "In this podcast Shane Hastie, Lead Editor for Culture &amp; Methods spoke to Vanessa Huerta Granda Manager of Resiliency Engineering at Enova.",
"audio":
{
"@type": "AudioObject",
"name": "Resilience and Incident Management with Vanessa Huerta Granda",
"description": "In this podcast Shane Hastie, Lead Editor for Culture &amp; Methods spoke to Vanessa Huerta Granda Manager of Resiliency Engineering at Enova.",
"uploadDate": "2024-03-01T08:00:00+0000",
"duration": "16:33",
"contentUrl": "https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/1760817732"
}
}
</script>
<meta name="ifq:pageType" content="PODCAST_PAGE"/>
<script type="text/javascript">
InfoQConstants.pageType = 'PODCAST_PAGE';
</script>
<meta property="og:type" content="website" />
<meta property="og:image" content="https://res.infoq.com/podcasts/incident-management-resilience/en/card_header_image/generatedCard-1709188759831.jpg"/>
<meta property="twitter:image" content="https://res.infoq.com/podcasts/incident-management-resilience/en/card_header_image/generatedCard-1709188759831.jpg"/>
<meta property="og:title" content="Resilience and Incident Management with Vanessa Huerta Granda "/>
<meta property="og:description" content="In this podcast Shane Hastie, Lead Editor for Culture &amp; Methods spoke to Vanessa Huerta Granda Manager of Resiliency Engineering at Enova about resilience and incident management." />
<meta property="og:site_name" content="InfoQ"/>
<meta property="og:url" content="https://www.infoq.com/podcasts/incident-management-resilience/"/>
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="Resilience and Incident Management with Vanessa Huerta Granda "/>
<meta name="twitter:description" content="In this podcast Shane Hastie, Lead Editor for Culture &amp; Methods spoke to Vanessa Huerta Granda Manager of Resiliency Engineering at Enova about resilience and incident management." />
<link rel="image_src" href="https://res.infoq.com/podcasts/incident-management-resilience/en/smallimage/engineering-culture-podcast-logo-1667540501577-1709188759831.jpeg"/>
<link rel="stylesheet" href="https://cdn.infoq.com/statics_s2_20260910111657/styles/prism.css"/>
<meta name="keywords" content="incident management resilience,Culture &amp; Methods,Engineering Culture Podcast,QCon San Francisco 2023,InfoQ,QCon Software Development Conference,Resilience,Management,Culture,Artificial Intelligence,Careers,Incident Response,Architecture,"/>
<meta name="description" content="In this podcast Shane Hastie, Lead Editor for Culture &amp; Methods spoke to Vanessa Huerta Granda Manager of Resiliency Engineering at Enova."/>
<meta name="tprox" content="1709280000000" />
<script type="text/javascript">
$(function() {
var box = jQuery('.related_sponsors');
if (box.length === 0) {
return;
}
var nextSibling = $(box).next();
if ($('#lowerFullwidthVCR').length === 0) {
moveLowerInThePage(box);
return;
}
if (blockElement(nextSibling)) {
moveLowerInThePage(box);
return;
}
while (!blockElement($(nextSibling).next())) {
nextSibling = $(nextSibling).next();
if (firstLowerThanSecond(nextSibling, box)) {
return;
}
}
moveLowerInThePage(box);
function blockElement(elem) {
if ($(elem).prop('tagName') === 'BLOCKQUOTE'
|| $(elem).prop('tagName') === 'IMG'
|| $(elem).prop('tagName') === 'PRE'
|| ($(elem).prop('tagName') === 'P' && $(elem).children().length === 1 && $(elem).children('img').length === 1)) {
return true;
}
return false;
}
function firstLowerThanSecond(elem1, elem2) {
var elem1BottomYCoordinate = $(elem1).offset().top + $(elem1).height()
var elem2BottomYCoordinate = $(elem2).offset().top + $(elem2).height();
if (elem1BottomYCoordinate > elem2BottomYCoordinate) {
return true;
}
return false;
}
function moveLowerInThePage(box) {
if ($('#lowerFullwidthVCR').length !== 0) {
$('#lowerFullwidthVCR').replaceWith(box);
}
$(box).removeClass('stacked');
}
});
</script>
<script type="text/javascript" src="https://cdn.infoq.com/statics_s2_20260910111657/scripts/relatedVcr.min.js"></script>
<script type="application/javascript">
var communityIds = "2499";
var topicIds = "5789,6986,131,593,3450,45,2064,1081,700,4910,876";
VCR.loadAllVcrs(communityIds, topicIds);
</script>
<script type="text/javascript" src="https://cdn.infoq.com/statics_s2_20260910111657/scripts/infoq.js"></script>
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', function() {
if (!window || !window.infoq) return
infoq.init()
})
</script>
<script defer data-domain="infoq.com" src="https://plausible.io/js/script.file-downloads.hash.outbound-links.pageview-props.tagged-events.js"></script>
<script>window.plausible = window.plausible || function() { (window.plausible.q = window.plausible.q || []).push(arguments) }</script>
</head>
<body >
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W9GJ5DL"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<div class="intbt">
<a href="/int/bt/" title="bt">BT</a>
</div>
<script type="text/javascript">
var allCountries = [{"id":3,"name":"Afghanistan"},{"id":244,"name":"Åland"},{"id":6,"name":"Albania"},{"id":61,"name":"Algeria"},{"id":13,"name":"American Samoa"},{"id":1,"name":"Andorra"},{"id":9,"name":"Angola"},{"id":5,"name":"Anguilla"},{"id":11,"name":"Antarctica"},{"id":4,"name":"Antigua and Barbuda"},{"id":12,"name":"Argentina"},{"id":7,"name":"Armenia"},{"id":16,"name":"Aruba"},{"id":15,"name":"Australia"},{"id":14,"name":"Austria"},{"id":17,"name":"Azerbaijan"},{"id":31,"name":"Bahamas"},{"id":24,"name":"Bahrain"},{"id":20,"name":"Bangladesh"},{"id":19,"name":"Barbados"},{"id":35,"name":"Belarus"},{"id":21,"name":"Belgium"},{"id":36,"name":"Belize"},{"id":26,"name":"Benin"},{"id":27,"name":"Bermuda"},{"id":32,"name":"Bhutan"},{"id":29,"name":"Bolivia"},{"id":254,"name":"Bonaire, Sint Eustatius, and Saba"},{"id":18,"name":"Bosnia and Herzegovina"},{"id":34,"name":"Botswana"},{"id":33,"name":"Bouvet Island"},{"id":30,"name":"Brazil"},{"id":104,"name":"British Indian Ocean Territory"},{"id":28,"name":"Brunei Darussalam"},{"id":23,"name":"Bulgaria"},{"id":22,"name":"Burkina Faso"},{"id":25,"name":"Burundi"},{"id":114,"name":"Cambodia"},{"id":46,"name":"Cameroon"},{"id":37,"name":"Canada"},{"id":52,"name":"Cape Verde"},{"id":121,"name":"Cayman Islands"},{"id":40,"name":"Central African Republic"},{"id":207,"name":"Chad"},{"id":45,"name":"Chile"},{"id":47,"name":"China"},{"id":53,"name":"Christmas Island"},{"id":38,"name":"Cocos (Keeling) Islands"},{"id":48,"name":"Colombia"},{"id":116,"name":"Comoros"},{"id":39,"name":"Congo (Democratic Republic)"},{"id":41,"name":"Congo (People\u0027s Republic)"},{"id":44,"name":"Cook Islands"},{"id":49,"name":"Costa Rica"},{"id":43,"name":"Cote D\u0027Ivoire"},{"id":97,"name":"Croatia"},{"id":51,"name":"Cuba"},{"id":253,"name":"Curaçao"},{"id":54,"name":"Cyprus"},{"id":55,"name":"Czech Republic"},{"id":58,"name":"Denmark"},{"id":57,"name":"Djibouti"},{"id":59,"name":"Dominica"},{"id":60,"name":"Dominican Republic"},{"id":213,"name":"East Timor"},{"id":62,"name":"Ecuador"},{"id":64,"name":"Egypt"},{"id":203,"name":"El Salvador"},{"id":87,"name":"Equatorial Guinea"},{"id":66,"name":"Eritrea"},{"id":63,"name":"Estonia"},{"id":68,"name":"Ethiopia"},{"id":72,"name":"Falkland Islands (Malvinas)"},{"id":74,"name":"Faroe Islands"},{"id":71,"name":"Fiji"},{"id":70,"name":"Finland"},{"id":75,"name":"France"},{"id":80,"name":"French Guiana"},{"id":170,"name":"French Polynesia"},{"id":208,"name":"French Southern Territories"},{"id":76,"name":"Gabon"},{"id":84,"name":"Gambia"},{"id":79,"name":"Georgia"},{"id":56,"name":"Germany"},{"id":81,"name":"Ghana"},{"id":82,"name":"Gibraltar"},{"id":88,"name":"Greece"},{"id":83,"name":"Greenland"},{"id":78,"name":"Grenada"},{"id":86,"name":"Guadeloupe"},{"id":91,"name":"Guam"},{"id":90,"name":"Guatemala"},{"id":249,"name":"Guernsey"},{"id":85,"name":"Guinea"},{"id":92,"name":"Guinea-Bissau"},{"id":93,"name":"Guyana"},{"id":98,"name":"Haiti"},{"id":95,"name":"Heard Island and McDonald Islands"},{"id":96,"name":"Honduras"},{"id":94,"name":"Hong Kong"},{"id":99,"name":"Hungary"},{"id":107,"name":"Iceland"},{"id":103,"name":"India"},{"id":100,"name":"Indonesia"},{"id":106,"name":"Iran"},{"id":105,"name":"Iraq"},{"id":101,"name":"Ireland"},{"id":245,"name":"Isle of Man"},{"id":102,"name":"Israel"},{"id":108,"name":"Italy"},{"id":109,"name":"Jamaica"},{"id":111,"name":"Japan"},{"id":250,"name":"Jersey"},{"id":110,"name":"Jordan"},{"id":122,"name":"Kazakhstan"},{"id":112,"name":"Kenya"},{"id":115,"name":"Kiribati"},{"id":243,"name":"Kosovo"},{"id":120,"name":"Kuwait"},{"id":113,"name":"Kyrgyzstan"},{"id":123,"name":"Laos"},{"id":132,"name":"Latvia"},{"id":124,"name":"Lebanon"},{"id":129,"name":"Lesotho"},{"id":128,"name":"Liberia"},{"id":133,"name":"Libya"},{"id":126,"name":"Liechtenstein"},{"id":130,"name":"Lithuania"},{"id":131,"name":"Luxembourg"},{"id":143,"name":"Macau"},{"id":139,"name":"Macedonia"},{"id":137,"name":"Madagascar"},{"id":151,"name":"Malawi"},{"id":153,"name":"Malaysia"},{"id":150,"name":"Maldives"},{"id":140,"name":"Mali"},{"id":148,"name":"Malta"},{"id":138,"name":"Marshall Islands"},{"id":145,"name":"Martinique"},{"id":146,"name":"Mauritania"},{"id":149,"name":"Mauritius"},{"id":238,"name":"Mayotte"},{"id":152,"name":"Mexico"},{"id":73,"name":"Micronesia"},{"id":136,"name":"Moldova"},{"id":135,"name":"Monaco"},{"id":142,"name":"Mongolia"},{"id":246,"name":"Montenegro"},{"id":147,"name":"Montserrat"},{"id":134,"name":"Morocco"},{"id":154,"name":"Mozambique"},{"id":141,"name":"Myanmar"},{"id":155,"name":"Namibia"},{"id":164,"name":"Nauru"},{"id":163,"name":"Nepal"},{"id":161,"name":"Netherlands"},{"id":8,"name":"Netherlands Antilles"},{"id":156,"name":"New Caledonia"},{"id":166,"name":"New Zealand"},{"id":160,"name":"Nicaragua"},{"id":157,"name":"Niger"},{"id":159,"name":"Nigeria"},{"id":165,"name":"Niue"},{"id":158,"name":"Norfolk Island"},{"id":118,"name":"North Korea"},{"id":144,"name":"Northern Mariana Islands"},{"id":162,"name":"Norway"},{"id":167,"name":"Oman"},{"id":173,"name":"Pakistan"},{"id":180,"name":"Palau"},{"id":178,"name":"Palestinian Territory"},{"id":168,"name":"Panama"},{"id":171,"name":"Papua New Guinea"},{"id":181,"name":"Paraguay"},{"id":169,"name":"Peru"},{"id":172,"name":"Philippines"},{"id":176,"name":"Pitcairn"},{"id":174,"name":"Poland"},{"id":179,"name":"Portugal"},{"id":177,"name":"Puerto Rico"},{"id":182,"name":"Qatar"},{"id":183,"name":"Reunion"},{"id":184,"name":"Romania"},{"id":185,"name":"Russian Federation"},{"id":186,"name":"Rwanda"},{"id":193,"name":"Saint Helena"},{"id":117,"name":"Saint Kitts and Nevis"},{"id":125,"name":"Saint Lucia"},{"id":251,"name":"Saint Martin"},{"id":175,"name":"Saint Pierre and Miquelon"},{"id":229,"name":"Saint Vincent and the Grenadines"},{"id":247,"name":"Saint-Barthélemy"},{"id":236,"name":"Samoa"},{"id":198,"name":"San Marino"},{"id":202,"name":"Sao Tome and Principe"},{"id":187,"name":"Saudi Arabia"},{"id":199,"name":"Senegal"},{"id":248,"name":"Serbia"},{"id":189,"name":"Seychelles"},{"id":197,"name":"Sierra Leone"},{"id":192,"name":"Singapore"},{"id":252,"name":"Sint Maarten"},{"id":196,"name":"Slovakia"},{"id":194,"name":"Slovenia"},{"id":188,"name":"Solomon Islands"},{"id":200,"name":"Somalia"},{"id":239,"name":"South Africa"},{"id":89,"name":"South Georgia and the South Sandwich Islands"},{"id":119,"name":"South Korea"},{"id":255,"name":"South Sudan"},{"id":67,"name":"Spain"},{"id":127,"name":"Sri Lanka"},{"id":190,"name":"Sudan"},{"id":201,"name":"Suriname"},{"id":195,"name":"Svalbard and Jan Mayen"},{"id":205,"name":"Swaziland"},{"id":191,"name":"Sweden"},{"id":42,"name":"Switzerland"},{"id":204,"name":"Syria"},{"id":220,"name":"Taiwan"},{"id":211,"name":"Tajikistan"},{"id":221,"name":"Tanzania"},{"id":210,"name":"Thailand"},{"id":209,"name":"Togo"},{"id":212,"name":"Tokelau"},{"id":216,"name":"Tonga"},{"id":218,"name":"Trinidad and Tobago"},{"id":215,"name":"Tunisia"},{"id":217,"name":"Turkey"},{"id":214,"name":"Turkmenistan"},{"id":206,"name":"Turks and Caicos Islands"},{"id":219,"name":"Tuvalu"},{"id":223,"name":"Uganda"},{"id":222,"name":"Ukraine"},{"id":2,"name":"United Arab Emirates"},{"id":77,"name":"United Kingdom"},{"id":224,"name":"United States Minor Outlying Islands"},{"id":226,"name":"Uruguay"},{"id":225,"name":"USA"},{"id":227,"name":"Uzbekistan"},{"id":234,"name":"Vanuatu"},{"id":228,"name":"Vatican City (Holy See)"},{"id":230,"name":"Venezuela"},{"id":233,"name":"Vietnam"},{"id":231,"name":"Virgin Islands (British)"},{"id":232,"name":"Virgin Islands (U.S.)"},{"id":235,"name":"Wallis and Futuna"},{"id":65,"name":"Western Sahara"},{"id":237,"name":"Yemen"},{"id":241,"name":"Zaire"},{"id":240,"name":"Zambia"},{"id":242,"name":"Zimbabwe"}];
var gdprCountriesIds = [196,194,191,184,179,174,161,148,132,131,130,108,101,99,97,88,77,75,70,67,63,58,56,55,54,37,23,21,14];
</script>
<section data-nosnippet class="section container subscribe-box hidden">
<div class="container__inner">
<div class="actions">
<div class="actions__left">
<h2>InfoQ Software Architects' Newsletter</h2>
<span><p>A monthly overview of things you need to know as an architect or aspiring architect.</p>
<p><a href="https://www.infoq.com/software-architects-newsletter#placeholderPastIssues">View an example</a></p>
</span>
<div class="newsletter__subscribe">
<form class="form gdpr" name="dataCollectCampaignNewsletterForm" id="dataCollectCampaignNewsletterForm" action="#" onsubmit="dataCollectNewsletter.saveSubscription(); return false;">
<div class="field newsletter__mail input__text input__no-label input__medium email">
<label for="email-dataCollectnewsletter-infoq" class="label field__label">Enter your e-mail address</label>
<input id="email-dataCollectnewsletter-infoq" name="footerNewsletterEmail" placeholder="Enter your e-mail address" class="input field__input" type="email"/>
<input type="text" name="emailH" id="input_email_h_d" aria-required="false" style="display:none !important" tabindex="-1" autocomplete="off"/>
<input type="hidden" id="fnt_d" name="fnt_d" value="6KVPHph6HgFezr2a"/>
<input type="hidden" id="dataCollectNewsletterType" name="dataCollectNewsletterType" value="regular"/>
<input type="hidden" id="cmpi_d" name="cmpi_d" value="4"/>
</div>
<div class="hidden">
<span class="input__select field country">
<label for="input-dataCollect-newsletter-country" class="label field__label">Select your country</label>
<select id="input-dataCollect-newsletter-country" class="select field__input">
<option value="" class="select__option">Select a country</option>
</select>
<p class="input__message field__desc"></p>
</span>
<span class="input__checkbox field hidden">
<input type="checkbox" id="gdpr-consent-campaign">
<label for="gdpr-consent-campaign" class="label"><span>I consent to InfoQ.com handling my data as explained in this <a href="https://www.infoq.com/privacy-notice">Privacy Notice</a>.</span></label>
</span>
</div>
<input type="submit" role="button" value="Subscribe" class="button button__medium button__red" onclick="return dataCollectNewsletter.validateEmail('Invalid email address');"/>
</form>
<p class="meta">
<a href="/privacy-notice/" target="_blank">We protect your privacy.</a>
</p>
<span class="success" style="display:none;" id="dataCollectNewsletterMessage"></span>
</div>
</div>
<div class="actions__right">
<button aria-label="Close" class="close closeBox button button__unstyled button__icon icon icon__close-black icon--only">Close</button>
</div>
</div>
</div>
</section>
<script type="text/javascript">
var dataCollectNewsletter = new Newsletter('Enter your e-mail address',
'email-dataCollectnewsletter-infoq', 'dataCollectNewsletterType','dataCollectNewsletterMessage', 'fnt_d', 'input_email_h_d', 'input-dataCollect-newsletter-country', 'cmpi_d','popup_all_pages');
</script>
<div class="infoq" id="infoq">
<!-- ####### SITE START ######### -->
<section class="section container promo hidden">
<div class="container__inner">
<div class="actions">
<div class="actions__left">
<p>
<span>QCon San Francisco (Nov 16-20): What's next in AI? What's next in software? Learn from the teams already doing it.</span>
<a class="btn" href="/url/pb/0dff86f7-3e36-485f-ac4d-20fd0bfba8fc/" target="_blank" rel="nofollow">
Register Now
</a>
</p>
</div>
<div class="actions__right">
<button aria-label="Close"
class="close button button__unstyled button__icon icon icon__close-white icon--only close-top-promo">Close
</button>
</div>
</div>
</div>
</section>
<header class="header">
<button aria-label="Toggle Navigation" tabindex="0" class="burger header__toggle button">Toggle Navigation <span></span><span></span><span></span></button>
<div class="header__container container">
<div class="container__inner">
<div data-nosnippet class="actions header__top">
<div class="actions__left">
<p class="header__desc my-0">
Facilitating the Spread of Knowledge and Innovation in Professional Software Development
</p>
<div class="button__dropdown dropdown header__more my-0 dropdown__center">
<button aria-label="English edition" class="button button__unstyled button__small">English edition </button>
<div class="dropdown__holder">
<!---->
<div class="dropdown__content">
<ul class="no-style dropdown__nav languagesEdition">
<li class="active"><a href="#" onclick="return false;">English edition</a></li>
<li><a href="https://www.infoq.cn">Chinese edition</a></li>
<li><a href="/jp/">Japanese edition</a></li>
<li><a href="/fr/">French edition</a></li>
</ul>
</div>
<!---->
</div>
</div>
<a class="my-0 contribute-link" role="button" href="/write-for-infoq/" title="Write for InfoQ">
Write for InfoQ
</a>
</div>
<div class="actions__right">
<div>
<form id="searchForm" name="search-form" action="/search.action" enctype="multipart/form-data" class="search icon__search icon icon__green">
<div class="field search__bar input__text input__no-label input__small">
<label for="search" class="label field__label">Search</label>
<input name="queryString" type="text" id="search" value="" placeholder="Search" class="input field__input">
<input type="hidden" name="page" value="1"/>
<input type="hidden" size="15" name="searchOrder">
</div>
<input value="Search" type="submit" class="search__go">
</form>
</div>
<div class="action_button__group">
<a href="/reginit.action?" onclick="return UserActions_Login.addLoginInfo(this);" class="button button__green button__small">Register</a>
<a href="/social/keycloakLogin.action?fl=login" onclick="return UserActions_Login.addLoginInfo(this);" class="button button__small button__outline">Sign in</a>
</div>
<div class="modal_auth_required">
<div class="modal_auth_required__actions">
<h2 class="h2">Unlock the full InfoQ experience</h2>
<p>Unlock the full InfoQ experience by logging in! Stay updated with your favorite authors and topics, engage with content, and download exclusive resources.</p>
<a href="/social/keycloakLogin.action?fl=login" onclick="return UserActions_Login.addLoginInfo(this);" class="button button__has-transition">Log In</a>
<div class="separator"><span>or</span></div>
<h3 class="h3">Don't have an InfoQ account?</h3>
<a href="/reginit.action?" onclick="return UserActions_Login.addLoginInfo(this);" class="button__outline button__has-transition">Register</a>
</div>
<div class="modal_auth_required__content">
<ul class="newsletter__features">
<li><strong>Stay updated on topics and peers that matter to you</strong>Receive instant alerts on the latest insights and trends.</li>
<li><strong>Quickly access free resources for continuous learning</strong>Minibooks, videos with transcripts, and training materials.</li>
<li><strong>Save articles and read at anytime</strong>Bookmark articles to read whenever youre ready.</li>
</ul>
</div>
<form id="login-form" data-vv-scope="login" class="login__form form" action="#" data-gtm-form-interact-id="0">
<input type="hidden" id="loginWidgetOrigin" name="loginWidgetOrigin" value="mainLogin">
<input type="hidden" name="fromP13N" id="isP13n" value="">
<input type="hidden" name="fromP13NId" id="p13n-id" value="">
<input type="hidden" name="fromP13NType" id="p13n-type" value="">
</form>
</div>
</div>
</div>
<div class="header__middle">
<div class="logo header__logo">
<a href="/" class="logo__symbol active">
Logo - Back to homepage
</a>
</div>
<div class="content-items">
<a href="/news/" class="icon icon__news">News</a>
<a href="/articles/" class="icon icon__articles">Articles</a>
<a href="/presentations/" class="icon icon__presentations">Presentations</a>
<a href="/podcasts/" class="icon icon__podcasts">Podcasts</a>
<a href="/minibooks/" class="icon icon__guides">Guides</a>
</div>
<div class="header__items columns">
<div>
<h3 class="widget__heading">Topics</h3>
<nav class="nav header__nav topics" data-trk-ref="header_personas">
<div class="has--subnav li-nav">
<a href="/development/" title="Development" class="nav__category">Development</a>
<div class="nav__subnav subnav">
<ul class="subnav__categories no-style">
<li><a href="/java/" title="Java">Java</a></li>
<li><a href="/kotlin/" title="Kotlin">Kotlin</a></li>
<li><a href="/dotnet/" title=".Net">.Net</a></li>
<li><a href="/c_sharp/" title="C#">C#</a></li>
<li><a href="/swift/" title="Swift">Swift</a></li>
<li><a href="/golang/" title="Go">Go</a></li>
<li><a href="/rust/" title="Rust">Rust</a></li>
<li><a href="/javascript/" title="JavaScript">JavaScript</a></li>
</ul>
<div class="subnav__content" data-id="6815">
<div class="heading__container actions">
<div class="actions__left">
<h3 class="heading section__heading">Featured in Development</h3>
</div>
</div>
<ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style">
<li>
<div class="card__content">
<div class="card__data">
<h4 class="card__title">
<a href="/presentations/solopreneur-journey">A Solopreneur's Journey: From Engineer to Puzzle Master and Storyteller</a>
</h4>
<p class="card__excerpt">Joe Cassavaugh shares his journey from software engineer to successful solopreneur with a $2M+ indie franchise. He explains how he scaled production to 10 games in 5 years, adopted Unity to boost velocity 4-6x, optimized content pipelines, and leveraged refactoring patterns. He discusses key trade-offs between corporate engineering and solopreneurship for senior devs and leaders.</p>
<div class="card__footer"></div>
</div>
<a href="/presentations/solopreneur-journey" class="card__header">
<img loading="lazy" alt="A Solopreneur's Journey: From Engineer to Puzzle Master and Storyteller" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/presentations/solopreneur-journey/en/smallimage/joe-cassavaugh-thumbnail-1788338336404.jpg" class="card__image"/>
</a>
</div>
</li>
</ul>
<a href="/development/" class="button__more button button__large button__arrow arrow__right">All in development</a>
</div>
</div>
</div>
<div class="has--subnav li-nav">
<a href="/architecture-design/" title="Architecture &amp; Design" class="nav__category">Architecture &amp; Design</a>
<div class="nav__subnav subnav">
<ul class="subnav__categories no-style">
<li><a href="/architecture/" title="Architecture">Architecture</a></li>
<li><a href="/enterprise-architecture/" title="Enterprise Architecture">Enterprise Architecture</a></li>
<li><a href="/performance-scalability/" title="Scalability/Performance">Scalability/Performance</a></li>
<li><a href="/design/" title="Design">Design</a></li>
<li><a href="/Case_Study/" title="Case Studies">Case Studies</a></li>
<li><a href="/microservices/" title="Microservices">Microservices</a></li>
<li><a href="/servicemesh/" title="Service Mesh">Service Mesh</a></li>
<li><a href="/DesignPattern/" title="Patterns">Patterns</a></li>
<li><a href="/Security/" title="Security">Security</a></li>
</ul>
<div class="subnav__content" data-id="6816">
<div class="heading__container actions">
<div class="actions__left">
<h3 class="heading section__heading">Featured in Architecture &amp; Design</h3>
</div>
</div>
<ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style">
<li>
<div class="card__content">
<div class="card__data">
<h4 class="card__title">
<a href="/minibooks/next-gen-architecture-ai-era">Next-Gen Architecture Playbook: Insights and Patterns for the AI Era</a>
</h4>
<p class="card__excerpt">This eMag examines how architects can lead with clarity in a rapidly evolving engineering world, distilling industry insights into field-tested practices for teams. Together, these stories reveal a core theme: the technology leader’s role is expanding from building systems to guiding how tech behaves and learns, while enabling engineers and organizations to bring out their best.</p>
<div class="card__footer"></div>
</div>
<a href="/minibooks/next-gen-architecture-ai-era" class="card__header">
<img loading="lazy" alt="Next-Gen Architecture Playbook: Insights and Patterns for the AI Era" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/minibooks/next-gen-architecture-ai-era/en/smallimage/thumb-image-emag-next-gen-architecture-playbook-1787922032442.jpg" class="card__image"/>
</a>
</div>
</li>
</ul>
<a href="/architecture-design/" class="button__more button button__large button__arrow arrow__right">All in architecture-design</a>
</div>
</div>
</div>
<div class="has--subnav li-nav">
<a href="/ai-ml-data-eng/" title="AI Infrastructure" class="nav__category">AI Infrastructure</a>
<div class="nav__subnav subnav">
<ul class="subnav__categories no-style">
<li><a href="/bigdata/" title="Big Data">Big Data</a></li>
<li><a href="/machinelearning/" title="Machine Learning">Machine Learning</a></li>
<li><a href="/nosql/" title="NoSQL">NoSQL</a></li>
<li><a href="/database/" title="Database">Database</a></li>
<li><a href="/data-analytics/" title="Data Analytics">Data Analytics</a></li>
<li><a href="/streaming/" title="Streaming">Streaming</a></li>
</ul>
<div class="subnav__content" data-id="16690">
<div class="heading__container actions">
<div class="actions__left">
<h3 class="heading section__heading">Featured in AI, ML &amp; Data Engineering</h3>
</div>
</div>
<ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style">
<li>
<div class="card__content">
<div class="card__data">
<h4 class="card__title">
<a href="/articles/when-spec-driven-development-pays-off">When Spec-Driven Development Pays Off</a>
</h4>
<p class="card__excerpt">AI coding assistants have become a core part of software development. AI-generated code has shown productivity gains, but it's also contributing to security weaknesses and familiar bug patterns. In this article, author Nitin Garg highlights the bottleneck has moved from code generation to code verification, and how to detect &amp; mitigate it when the AI-generated behavior diverges from the intent.</p>
<div class="card__footer"></div>
</div>
<a href="/articles/when-spec-driven-development-pays-off" class="card__header">
<img loading="lazy" alt="When Spec-Driven Development Pays Off" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/when-spec-driven-development-pays-off/en/smallimage/When-Spec-Driven-Development-Pays-Off-thumb-1788790605567.jpg" class="card__image"/>
</a>
</div>
</li>
</ul>
<a href="/ai-ml-data-eng/" class="button__more button button__large button__arrow arrow__right">All in ai-ml-data-eng</a>
</div>
</div>
</div>
<div class="has--subnav li-nav">
<a href="/culture-methods/" title="Culture &amp; Methods" class="nav__category">Culture &amp; Methods</a>
<div class="nav__subnav subnav">
<ul class="subnav__categories no-style">
<li><a href="/agile/" title="Agile">Agile</a></li>
<li><a href="/diversity/" title="Diversity">Diversity</a></li>
<li><a href="/leadership/" title="Leadership">Leadership</a></li>
<li><a href="/lean/" title="Lean/Kanban">Lean/Kanban</a></li>
<li><a href="/personal-growth/" title="Personal Growth">Personal Growth</a></li>
<li><a href="/scrum/" title="Scrum">Scrum</a></li>
<li><a href="/sociocracy/" title="Sociocracy">Sociocracy</a></li>
<li><a href="/software_craftsmanship/" title="Software Craftmanship">Software Craftmanship</a></li>
<li><a href="/team-collaboration/" title="Team Collaboration">Team Collaboration</a></li>
<li><a href="/testing/" title="Testing">Testing</a></li>
<li><a href="/ux/" title="UX">UX</a></li>
</ul>
<div class="subnav__content" data-id="6817">
<div class="heading__container actions">
<div class="actions__left">
<h3 class="heading section__heading">Featured in Culture &amp; Methods</h3>
</div>
</div>
<ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style">
<li>
<div class="card__content">
<div class="card__data">
<h4 class="card__title">
<a href="/presentations/rust-refactoring">Accelerating Performance by Incrementally Integrating Rust Into Existing Codebase</a>
</h4>
<p class="card__excerpt">Lily Mara explains how to avoid high-risk software rewrites through incremental FFI refactoring. She shares how engineering teams can replace Python bottlenecks with Rust via PyO3, demonstrating how to achieve dramatic function-level speedups, seamless integration testing, and meaningful infrastructure cost savings without microservice overhead.</p>
<div class="card__footer"></div>
</div>
<a href="/presentations/rust-refactoring" class="card__header">
<img loading="lazy" alt="Accelerating Performance by Incrementally Integrating Rust Into Existing Codebase" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/presentations/rust-refactoring/en/smallimage/lily-mara-thumbnail-1788338447565.jpeg" class="card__image"/>
</a>
</div>
</li>
</ul>
<a href="/culture-methods/" class="button__more button button__large button__arrow arrow__right">All in culture-methods</a>
</div>
</div>
</div>
<div class="has--subnav li-nav">
<a href="/devops/" class="nav__category">DevOps</a>
<div class="nav__subnav subnav">
<ul class="subnav__categories no-style">
<li><a href="/infrastructure/" title="Infrastructure">Infrastructure</a></li>
<li><a href="/continuous_delivery/" title="Continuous Delivery">Continuous Delivery</a></li>
<li><a href="/automation/" title="Automation">Automation</a></li>
<li><a href="/containers/" title="Containers">Containers</a></li>
<li><a href="/cloud-computing/" title="Cloud">Cloud</a></li>
<li><a href="/observability/" title="Observability">Observability</a></li>
</ul>
<div class="subnav__content" data-id="6043">
<div class="heading__container actions">
<div class="actions__left">
<h3 class="heading section__heading">Featured in DevOps</h3>
</div>
</div>
<ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style">
<li>
<div class="card__content">
<div class="card__data">
<h4 class="card__title">
<a href="/presentations/ai-platform-engineering-roundtable">Platform Engineering in the Age of AI</a>
</h4>
<p class="card__excerpt">The panelists explain how platform teams adapt to support AI-assisted engineering, highlighting which capabilities belong in the platform. They discuss trade-offs between standardization and developer autonomy, while sharing strategies to manage AI tooling, security guardrails, and shifting workflows.</p>
<div class="card__footer"></div>
</div>
<a href="/presentations/ai-platform-engineering-roundtable" class="card__header">
<img loading="lazy" alt="Platform Engineering in the Age of AI" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/presentations/ai-platform-engineering-roundtable/en/smallimage/thumb-1788861349861.jpg" class="card__image"/>
</a>
</div>
</li>
</ul>
<a href="/devops/" class="button__more button button__large button__arrow arrow__right">All in devops</a>
</div>
</div>
</div>
<div class="li-nav">
<a rel="noreferrer noopener" href="https://events.infoq.com/" class="nav__category" title="Events" target="_blank">Events</a>
</div>
</nav>
</div>
<div>
<h3 class="widget__heading">Helpful links</h3>
<ul class="no-style header__nav">
<li>
<a href="/about-infoq" title="About InfoQ">
About InfoQ
</a>
</li>
<li>
<a href="/infoq-editors" title="InfoQ Editors">
InfoQ Editors
</a>
</li>
<li>
<a href="/write-for-infoq" title="Write for InfoQ">
Write for InfoQ
</a>
</li>
<li>
<a href="https://c4media.com/" target="_blank" title="About C4Media">
About C4Media
</a>
</li>
<li>
<a rel="noreferrer noopener" href="https://c4media.com/diversity" title="Diversity" target="_blank">Diversity</a>
</li>
</ul>
</div>
<div>
<h3 class="widget__heading">Choose your language</h3>
<ul class="language__switcher no-style">
<li class="active"><a href="#" onclick="return false;" title="InfoQ English">En</a></li>
<li><a href="https://www.infoq.cn">中文</a></li>
<li><a href="/jp/">日本</a></li>
<li><a href="/fr/">Fr</a></li>
</ul>
</div>
</div>
</div>
<div data-nosnippet class="actions header__bottom header__bottom__events">
<div class="actions__left">
<div class="events-list" role="list" aria-label="Upcoming events">
<div class="event-item" role="listitem" data-event-type="certification" data-sort-date="2026-09-14">
<a class="event-card" href="https://certification.qconferences.com/architecture?utm_source=infoq&amp;utm_medium=referral&amp;utm_campaign=homepageheader_onlinecohortarchitecture26" target="_blank" rel="noopener noreferrer" aria-label="Online InfoQ Architect Certification, Sep 14, 2026">
<div class="event-date">
<div class="event-date-box" aria-hidden="true"><span>Sep</span><span>14,</span><span>2026</span></div>
</div>
<div class="event-content">
<p class="event-title">Architect Certification</p>
<p class="event-description">Distributed systems, decentralized decisions, platform engineering, and AI architecture. <br/><strong>Online. Register Now.</strong></p>
</div>
</a>
</div>
<div class="event-item" role="listitem" data-event-type="certification" data-sort-date="2026-09-18">
<a class="event-card" href="https://certification.qconferences.com/ai-assisted-engineering?utm_source=infoq&utm_medium=referral&utm_campaign=homepageheader_onlinecohortaiassistedengineering26" target="_blank" rel="noopener noreferrer" aria-label="AI-Assisted Engineering Certification, Sep 18, 2026">
<div class="event-date">
<div class="event-date-box" aria-hidden="true"><span>Sep</span><span>18,</span><span>2026</span></div>
</div>
<div class="event-content">
<p class="event-title">AI-Assisted Engineering Certification</p>
<p class="event-description">Your coding agent moves fast. Who checks whether it's making the codebase better? <br/><strong>Online. Register Now.</strong></p>
</div>
</a>
</div>
<div class="event-item" role="listitem" data-event-type="certification" data-sort-date="2026-10-14">
<a class="event-card" href="https://certification.qconferences.com/ai-security-privacy?utm_source=infoq&amp;utm_medium=referral&amp;utm_campaign=homepageheader_onlinecohortaisecurity26" target="_blank" rel="noopener noreferrer" aria-label="Online InfoQ AI Security &amp; Privacy Engineering Certification, August 26, 2026">
<div class="event-date">
<div class="event-date-box" aria-hidden="true"><span>Oct</span><span>14,</span><span>2026</span></div>
</div>
<div class="event-content">
<p class="event-title">AI Security &amp; Privacy Engineering Certification</p>
<p class="event-description">Secure and govern production AI systems, from sensitive data to guardrails, evals, and audits.<br><strong>Online. Register now.</strong></p>
</div>
</a>
</div>
<div class="event-item" role="listitem" data-event-type="qcon" data-sort-date="2026-11-16">
<a class="event-card" href="https://qconsf.com/?utm_source=infoq&amp;utm_medium=referral&amp;utm_campaign=homepageheader_qsf26" target="_blank" rel="noopener noreferrer" aria-label="QCon San Francisco, Nov 16-20, 2026">
<div class="event-date">
<div class="event-date-box" aria-hidden="true"><span>Nov</span><span>16-20,</span><span>2026</span></div>
</div>
<div class="event-content">
<p class="event-title">QCon San Francisco</p>
<p class="event-description">What's working across AI, architecture, and leadership, from the teams doing it. <br/><strong>Register. Early bird ends August 11.</strong></p>
</div>
</a>
</div>
<div class="event-item" role="listitem" data-event-type="qcon" data-sort-date="2026-12-15">
<a class="event-card" href="https://newyork.qcon.ai/?utm_source=infoq&utm_medium=referral&utm_campaign=homepageheader_qainy26" target="_blank" rel="noopener noreferrer" aria-label="QCon AI New York, December 15-16, 2026">
<div class="event-date">
<div class="event-date-box" aria-hidden="true"><span>Dec</span><span>15-16,</span><span>2026</span></div>
</div>
<div class="event-content">
<p class="event-title">QCon AI New York</p>
<p class="event-description">Production AI across agents, context, evals, security, and infrastructure, from the senior engineers building it.<br/><strong>Registration open.</strong></p>
</div>
</a>
</div>
<div class="event-item" role="listitem" data-event-type="qcon" data-sort-date="2027-04-13">
<a class="event-card" href="https://qconlondon.com/?utm_source=infoq&amp;utm_medium=referral&amp;utm_campaign=homepageheader_qconlondon27" target="_blank" rel="noopener noreferrer" aria-label="QCon London, April 13-16, 2027">
<div class="event-date">
<div class="event-date-box" aria-hidden="true"><span>Apr</span><span>13-16,</span><span>2027</span></div>
</div>
<div class="event-content">
<p class="event-title">QCon London</p>
<p class="event-description">What early-adopter teams have proven in production, across 15 engineering tracks. <br/><strong> Register. Early bird ends August 11.</strong></p>
</div>
</a>
</div>
</div>
</div>
<!---->
</div>
</div>
</div>
</header>
<!-- ####### CONTENT START ######### -->
<main>
<article data-type="podcast" class="article">
<section class="container section white">
<div class="container__inner">
<p class="crumbs">
<span data-nosnippet><a href="/" title="InfoQ Homepage">InfoQ Homepage</a></span>
<span data-nosnippet><a href="/podcasts" title="Podcasts">Podcasts</a></span>
<span data-nosnippet class="active">Resilience and Incident Management with Vanessa Huerta Granda</span>
</p>
<div class="actions">
<div class="actions__left">
<div class="article__category culture-methods">
<a
href="/culture-methods/"
class="article__tag box--info" title="Culture &amp; Methods">
Culture &amp; Methods
</a>
</div>
</div>
<div class="actions__right">
<div data-nosnippet class="notice">
<div class="box--warning">
<a target="_blank" rel="nofollow" href="https://www.infoq.com/url/t/e62b6ae5-1f0e-4213-a673-9dd537e7ffb5/?label=Harness-EventPromoBox ">Beyond the PR: The New Control Plane for Agentic Software Delivery (Webinar Sept 17th) </a>
</div>
</div>
</div>
</div>
<div class="actions heading__container article__heading">
<div class="actions__left">
<h1 class="heading">
Resilience and Incident Management with Vanessa Huerta Granda
</h1>
</div>
</div>
<script type="text/javascript">
$("#translated_"+InfoQConstants.userDetectedCountryCode.toLowerCase()).show();
</script>
<div class="columns article__explore">
<div class="article__main" data-col="4/6">
<div class="article__metadata metadata">
<p class="article__readTime date">
Mar 01, 2024
</p>
<div class="widget article__authors">
<div>
<p class="meta">Podcast with</p>
<ul class="no-style authors">
<li data-id="author-Vanessa-Huerta-Granda">
<p class="meta author__bio">
<a href="/profile/Vanessa-Huerta-Granda/" class="avatar author__avatar" aria-label="Vanessa Huerta Granda"></a>
<span class="author__name">
<a href="/profile/Vanessa-Huerta-Granda/" class="author__link">Vanessa Huerta Granda</a>
</span>
</p>
</li>
</ul>
</div>
<div>
<p class="meta">by</p>
<ul class="no-style authors">
<li data-id="author-Shane-Hastie">
<p class="meta author__bio">
<a href="/profile/Shane-Hastie/" class="avatar author__avatar" aria-label="Shane Hastie"></a>
<span class="author__name">
<a href="/profile/Shane-Hastie/" class="author__link">Shane Hastie</a>
</span>
</p>
</li>
</ul>
</div>
</div>
<div class="widgets"></div>
</div>
<div class="article__content">
<div class="actions__left actions__sidebar article__actions">
<button id="toggleLikeContent" class="icon button button__icon like button__gray icon__like" aria-label="Like">Like</button>
<div class="bookmarkReading">
<button id="bookmarkBtn" data-ref="bookmarkPage" aria-label="Read later" class="login button__gray button button__icon icon icon__bookmark icon--only"> </button>
<!-- new dropdown rading list -->
<div class="my-0 button__dropdown dropdown reading_list dropdown__center" id="showBookmarks">
<button aria-label="Reading list" class="button button__unstyled button__small"></button>
<div class="dropdown__holder">
<div class="dropdown__content">
<ul class="no-style dropdown__nav">
<li class="active"><a href="/showbookmarks.action">Reading list</a></li>
</ul>
</div>
</div>
</div>
<div id="toastContainer" class="toast-none toast-hide">
<div class="toast"><span></span></div>
</div>
</div>
<script type="text/javascript">
if(loggedIn){
$('#showBookmarks').css('display', 'flex');
}
function performBookmark() {
Bookmarks.toggleBookmark('podcasts', 'incident-management-resilience');
}
infoq.event.on('bookmarkRequested', function(e) {
Bookmarks.toggleBookmark('podcasts', 'incident-management-resilience');
});
infoq.event.on("loaded", function(){
if(loggedIn){
var href = window.location.href;
if(href.indexOf("#bookmarkPage") != -1){
$('#bookmarkBtn').click();
}
}
});
$(document).ready(function() {
if(Bookmarks.isContentBookmarked == 'true'){
$('#bookmarkBtn').addClass('button__green');
$('#bookmarkBtn').removeClass('button__gray');
}else{
$('#bookmarkBtn').removeClass('button__green');
$('#bookmarkBtn').addClass('button__gray');
}
});
</script>
</div>
<div class="intro article__data">
<div class="intro__text">
<p>In this podcast Shane Hastie, Lead Editor for Culture &amp; Methods spoke to Vanessa Huerta Granda Manager of Resiliency Engineering at Enova about resilience and incident management.</p>
</div>
<div class="separator separator__three-dots center"></div>
</div>
<div class="article__data">
<div class="takeaways">
<h3 class="icon icon__takeaways heading">Key Takeaways</h3>
<ul>
<li>It is vitally important to consider the sociotechnical aspects in tech systems</li>
<li>Resilience is the ability to sustain challenges and recover from failures</li>
<li>A culture of resilience means that people in an organization can handle whatever is thrown at them and work together to find solutions</li>
<li>Good incident management involves allowing engineers to do their best work and focusing on communication and coordination</li>
<li>After an incident, it is important to have a retrospective to learn from the experience and make improvements for the future</li>
</ul>
<div class="separator separator__three-dots center"></div>
</div>
</div>
<div class="podcast__subscribe__list">
<h3>Subscribe on:</h3>
<button aria-label="Apple podcasts" class="button button__unstyled button__medium" onclick="window.location.href='https://itunes.apple.com/gb/podcast/engineering-culture-by-infoq/id1161431874?mt=2'">Apple Podcasts</button>
<button aria-label="Youtube Podcasts" class="button button__unstyled button__medium" onclick="window.location.href='https://youtube.com/playlist?list=PLndbWGuLoHeYaFgbuLnvO5Qab2pFBaSWX&amp;si=CbKqeKewkXZSXYW-'">YouTube</button>
<button aria-label="Soundcloud" class="button button__unstyled button__medium" onclick="window.location.href='https://soundcloud.com/infoq-engineering-culture'">Soundcloud</button>
<button aria-label="Spotify" class="button button__unstyled button__medium" onclick="window.location.href='https://open.spotify.com/show/5YAzpmLjbNhQVVg7HkfIHP'">Spotify</button>
<button aria-label="Overcast" class="button button__unstyled button__medium" onclick="window.location.href='https://overcast.fm/itunes1161431874/engineering-culture-by-infoq'">Overcast</button>
<button aria-label="Podcast Feed" class="button button__unstyled button__medium" onclick="window.open('http://feeds.soundcloud.com/users/soundcloud:users:258266127/sounds.rss','_blank')">Podcast Feed</button>
</div>
<script type="text/javascript" src="https://w.soundcloud.com/player/api.js"></script>
<iframe title="Resilience and Incident Management with Vanessa Huerta Granda" frameborder="no" height="166" id="player" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/1760817732&amp;color=3A6EA9&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false" width="100%"></iframe>
<script type="text/javascript">
var player = SC.Widget('player');
var milliseconds = -1;
player.bind(SC.Widget.Events.PLAY, function() {
if (milliseconds >= 0) {
player.seekTo(milliseconds);
}
});
seekTo = function(minutes, seconds) {
milliseconds = ((minutes * 60) + seconds) * 1000;
player.isPaused(function isPaused(p) {
if (p == true) {
player.play();
} else {
player.seekTo(milliseconds);
}
});
}
</script>
<script type="text/javascript">
var uriMapping = "podcasts";
var showVcr = "true";
var fillWithVcr = "false";
var sponsorshipsJson = "{&quot;links&quot;:null}";
var sponsoredLinks = $.parseJSON($("<div/>").html(sponsorshipsJson).text()).links;
var numberOfSponsoredVcrIds = sponsoredLinks != null ? sponsoredLinks.length : 0;
var maxItems = 5 - numberOfSponsoredVcrIds;
var intervalVcrSponsorship = setInterval(function() {
if (window.vcrsLoaded) {
clearInterval(intervalVcrSponsorship);
if(showVcr || fillWithVcr) {
if(fillWithVcr) {
for(var index in window.vcrList) {
if(VCR.isVcrSponsored(sponsoredLinks, window.vcrList[index])) {
VCR.addToExcludedList(window.vcrList[index]);
}
}
}
var vcrs = VCR.getByTopicsAndCommunities(window.vcrList, topicIds, communityIds, maxItems, false, null);
if (vcrs != null && vcrs.length > 0 || (sponsoredLinks != null && sponsoredLinks.length > 0)) {
VCR.addToExcludedList(vcrs);
var $widget = jQuery('.related__vc');
getCommonElements(vcrs, uriMapping, "EMBEDDED");
$widget.css("display", "flex");
} else {
var $widget = jQuery('.related__vc');
$widget.remove();
}
}
window.contentVcrFinished = true;
// search for infoq.event.on("contentVcrFinished",... to see how/where it is used
infoq.event.trigger("contentVcrFinished");
}
}, 200);
</script>
<input type="hidden" name="" value="2499" id="cont_item_primary_topic"/>
<div class="related__group related__vc nocontent f_rvcbox" data-trk-view="true" data-trk-impr="true" data-place="EMBEDDED"
style="display: flex"
>
<ul class="no-style rvc__list">
<h4 class="heading">Related Sponsors</h4>
<div class="f_rvcList"></div>
</ul>
<div class="related__prsp f_sponsorship" data-trk-view="true" data-place="EMBEDDED" data-trk-impr="true" jsh="{&quot;topic&quot;:&quot;Artificial Intelligence&quot;,&quot;id&quot;:&quot;df5f1bb5-de51-4d94-b2fd-530d26d04f55&quot;,&quot;title&quot;:&quot;Harness September 17th Webinar 08/13/2026 - 09/17/2026&quot;}">
<h4 class="heading">Related Sponsor</h4>
<a href="/url/f/991cd841-7021-49ef-bc91-51a348fbb47b/" target="_blank" rel="nofollow">
<img loading="lazy" src="https://imgopt.infoq.com//fit-in/290x500/filters:quality(100)/filters:no_upscale()/sponsorship/topic/df5f1bb5-de51-4d94-b2fd-530d26d04f55/HarnessWebinarSept17-RSB-1786634005234.png" class="related__img" alt="Related sponsor icon"/>
</a>
<div class="related__desc">
<ul class="cards no-style" style="margin-top: 12px;">
<li class="rsb__webinar" data-col="1/1" data-type="webinar" hoverables=""><span class="date" style=" padding-top: 0; line-height: 16px; font-size: 11px; ">September 17, 2026, 1 PM EDT</span>
<h5 class="title rvc__title"><a href="/url/f/21226b4a-38b0-434a-b3b6-024a57ad0694/" target="_blank" rel="nofollow">Beyond the PR: The New Control Plane for Agentic Software Delivery</a></h5>
<p class="card__excerpt" style="margin-top: 0; "><a href="/url/f/08cf1fa9-ce28-4d7b-a236-7869d4aea49f/" target="_blank" rel="nofollow">Presented by: Mohit Suman - Staff Product Manager at Harness</a></p>
<footer>
<div class="authors"><span><a href="/url/f/a0125dc4-d84a-40b4-a789-b4bfe13528da/" target="_blank" rel="nofollow">SPONSORED BY HARNESS</a></span></div>
<p class="button__cta"><a href="/url/f/d18c46e9-03ce-49ff-8957-c4a0546ab9e2/" target="_blank" rel="nofollow">Save your seat</a></p>
</footer>
</li>
</ul>
</div>
</div>
</div>
<div id="lowerFullwidthVCR"></div>
<div class="article__data">
<h2>Transcript</h2>
<p>Good day, folks. This is Shane Hastie for the InfoQ Engineering Culture podcast. Today I&#39;m sitting down with Vanessa Huerta Granda. Welcome. Thanks for taking the time to talk to us today.</p>
<p><b>Vanessa Huerta Granda</b>: Thank you for having me.</p>
<p><b>Shane Hastie</b>: So Vanessa, you were the track host for the Resilience Engineering, and I love the second half of that, Culture As a System Requirement track at QCon San Francisco. Let&#39;s start delving into the track. What was the message you were trying to convey when putting that track together?</p>
<h2>Resiliency in sociotechnical systems [<a href="javascript:void(0);" onclick="seekTo(00,52)">00:52</a>]</h2>
<p><b>Vanessa Huerta Granda</b>:&nbsp;I, and a lot of folks from the Learning from Incidents community, when we&#39;re thinking about our tech systems, we don&#39;t just think of them as technological systems. We like to think about the sociotechnical system. And so socio, that people part is part of our systems. Everything that we do, it depends on people, it&#39;s running because people are making decisions at some point or another. Maybe when something is getting first developed, when something&#39;s first getting architected, but also when you&#39;re maintaining something, when you&#39;re handling issues, incidents, when you&#39;re learning from them or anything like that. So the idea here is that culture is part of the system, is part of that sociotechnical system. And resiliency, making sure that your organization is a resilient culture is a huge part of that.</p>
<p><b>Shane Hastie</b>: Taking a step backwards, what brought you to focusing on this? What&#39;s your background?</p>
<h2>Introducing Vanessa [<a href="javascript:void(0);" onclick="seekTo(01,43)">01:43</a>]</h2>
<p><b>Vanessa Huerta Granda</b>:&nbsp;I am an industrial engineer, which weirdly, actually fits in perfectly with resiliency work, with understanding how it is that people work, how it is that people create the software, write it and maintain it. So I have worked in operations as a Site Reliability Engineer and leader for the past decade. I am currently the Manager of Resiliency Engineering at Enova, and previously, I was at a startup called jeli.io, focusing on products to help people handle their incidents, learn from them, the entire lifecycle.</p>
<p>Honestly, I got into this kind of work because I just really enjoy solving problems and I really enjoy talking to people. And at some point, a boss of mine realized that was actually a good fit for this kind of work, and so I&#39;ve been doing it ever since.</p>
<p><b>Shane Hastie</b>: So going right down to first principles, what do you mean by resilience?</p>
<h2>Defining resilience [<a href="javascript:void(0);" onclick="seekTo(02,34)">02:34</a>]</h2>
<p><b>Vanessa Huerta Granda</b>: A mentor of mine once said that resilience is something your system does rather than what your system is. Resiliency is our ability to sustain challenges, to sustain fractures, failures, whatever it is. I think we often think that having a resilient system means that our system is never going to break. That&#39;s just not true at all. It means that your system, including the sociotechnical system, sometimes something bad is going to happen, something is going to break, and how do we recover from that?</p>
<p><b>Shane Hastie</b>: And what does a culture of resilience look like and feel like?</p>
<p><b>Vanessa Huerta Granda</b>: Well, I can tell you I&#39;ve experienced that all week. So a culture of resilience really means when the folks that are working at your organization are able to handle whatever is happening, whatever is thrown at them. So we have this idea that we have these plans for the quarter, we&#39;re going to get so many projects done because we have so many T-shirt size things that we&#39;re going to do. But at some point, something is going to happen, someone&#39;s going to go on vacation, someone&#39;s going to get sick, or maybe the code that we understood actually doesn&#39;t work the way that it does.</p>
<p>And so that&#39;s when you have your socio part of the system figuring out a way to make it work. And that can be through automatically having failovers in your system or just having a process where people talk to each other and figure out like, &quot;Oh, hey, can you help me with this? Can you help me with that? Let&#39;s prioritize this. Let&#39;s prioritize that.&quot;</p>
<p><b>Shane Hastie</b>: Incidents and resilience, of course go hand in hand, but incident management in my experience is something that many organizations do haphazardly at best and often very badly.</p>
<p><b>Vanessa Huerta Granda</b>: I hate that.</p>
<p><b>Shane Hastie</b>: So what does good incident management look like?</p>
<h2>Good incident management [<a href="javascript:void(0);" onclick="seekTo(04,11)">04:11</a>]</h2>
<p><b>Vanessa Huerta Granda</b>: Oh my gosh, how much time do you have? When I think about incident management, I think about allowing your engineers to do their best work. So as an incident manager, I am not here to yell at anyone, and I hate this idea. We often think of the person leading an incident, we call them incident commander. I can tell you that when I first started this job, I was 25, the only woman in the room, the only Latina woman in the room, and I definitely did not feel like a commander. What I did feel like was somebody who could talk to people and get them to actually discuss what was happening and figure out the best way forward. Incident management that actually works is understanding that we&#39;re all working for the same team, we&#39;re all working for the same goal, which is to just get our systems back to normal and that we need to work together to do that.</p>
<p>The other side of the coin is that when you&#39;re in an incident, if your company&#39;s making money, that means that during the incident you&#39;re not making money or something bad is happening. And clearly people are going to care, clearly your stakeholders, your leaders, they need to be aware of what&#39;s happening. And so I like to tell the responders to, &quot;Worry about responding, worry about doing the engineering things. Use your brain towards that. I&#39;m going to focus on the communication. I&#39;m going to focus on the coordination and the collaboration, and I&#39;m going to make sure that you&#39;re not answering a million things from your CTO, that you&#39;re not worried that your CMO is going to be upset because the website is down. I&#39;m going to take that away so we can work towards resolution.&quot;</p>
<p><b>Shane Hastie</b>: And then what happens afterwards?</p>
<p><b>Vanessa Huerta Granda</b>: Oh, my favorite part, you gossip about it. So we have an incident that&#39;s over, and I work from home a lot more nowadays than I did back then, but you&#39;re outside of the office and you&#39;re outside of the war room, whatever you want to call it. And you&#39;re talking about it, right? You&#39;re discussing, &quot;This is something that happened, that is something happened.&quot; Maybe you go to lunch, maybe you go to happy hour. People are always going to talk about it. In cultures where there&#39;s not that culture of resiliency, you have a postmortem, and that postmortem is usually some sort of document, that incident report that tells you, &quot;This incident started at 5:00 AM and it was over by 7:00 AM and it was Shane&#39;s fault, and Shane really sucks.&quot;</p>
<p><b>Shane Hastie</b>: Yes, the who-can-we-blame session?</p>
<p><b>Vanessa Huerta Granda</b>: Right?</p>
<p><b>Shane Hastie</b>: That&#39;s a really, really important part.</p>
<p><b>Vanessa Huerta Granda</b>: Oh my gosh. And that to me is really, really sad because an incident is just this big red arrow pointing to you towards something that is happening at your organization that you can learn from. And so, I like to think of incidents as learning opportunities. So a retrospective can be that people are talking about your incidents either way, people are talking after the incident, I&#39;m certainly slapping my work bestie to be like, &quot;Hey, can you believe that happened?&quot; Or during lunch afterwards we&#39;re going to talk about our incident and so we might as well talk about it together and learn from it.</p>
<p>So usually what I like to do during a retrospective is make sure that people are sharing what happened from their own point of view because at my previous role, I was doing a lot of consultant work. I was not an engineer, and for the first time when I was in an incident, I wasn&#39;t seeing what was happening in the code. I was seeing what our customer was experiencing. And so that is a different point of view than the engineer, and that can certainly make a difference in how we move forward. The idea is that you have a learning review, a postmortem, retrospective, whatever it is that you want to call it. You&#39;re learning from that. And then you&#39;re coming up with action items that are helping move the needle in the future.</p>
<p>And it can be as easy as like, &quot;You know what? Maybe we need to have better post-release checks.&quot; Or maybe it&#39;s something like, &quot;You know what? This process that we&#39;ve been working, it probably doesn&#39;t make sense anymore. It made sense back a year or two years ago. It doesn&#39;t make sense anymore. Maybe we need to do some more training,&quot; et cetera, et cetera. There&#39;s many things that you can learn from an incident.</p>
<p><b>Shane Hastie</b>: How do we avoid it being that blamestorming activity?</p>
<h2>Avoiding blamestorming &ndash; turn postmortems into learning opportunities [<a href="javascript:void(0);" onclick="seekTo(07,59)">07:59</a>]</h2>
<p><b>Vanessa Huerta Granda</b>: Well, that&#39;s the part of the culture, right? That&#39;s where you have to as an engineering leader and as individual contributors, make sure that when you&#39;re leading a retrospective, when you&#39;re leading a postmortem, that you are not just filling out a document, that you are speaking up and you&#39;re letting other voices heard. So there&#39;s a lot of good information out there. There&#39;s the Etsy&#39;s Debriefing Guide. There is the Howie Guide from jeli.io. I co-authored it a few years ago, and it helps people understand how to best position themselves so they can turn their postmortems into learning opportunities.</p>
<p>From my standpoint, I can give you the best advice that I can give you is to... If you&#39;re leading a retrospective, never be the only person that&#39;s speaking. Let other people speak up, let other people share from their points of view what happened and be forceful of that, &quot;This is not a blaming game. We&#39;re all on the same team.&quot;</p>
<p><b>Shane Hastie</b>: And communicating the outcomes. What I want to explore there is getting off the hamster wheel of just incident, incident, incident response and breaking what feels to me at times like a never-ending spiral for folks.</p>
<p><b>Vanessa Huerta Granda</b>: I think I&#39;ve mentioned this earlier, I like to think of incidents as an incident lifecycle where you have your incident, something breaks, then you have your retrospective where you&#39;re learning, out of the retrospective, there&#39;s action items. And so that&#39;s feeding into the process and there&#39;s things that you can do throughout that entire lifecycle to make things better. This is the part where I can give you my example that actually, let me understand... Not let me understand, but really highlighted how the incident lifecycle can be applied to anything.</p>
<p>I currently have 2-year-old twins and they&#39;re my only children. When they were first born and we took them home from the hospital, it was the craziest incidents I had ever had in my life. And I had had a lot of incidents, but it was kind of bananas. I was like, &quot;Shoot, I can&#39;t sleep at all.&quot; And my husband couldn&#39;t sleep either because one wasn&#39;t crying, the other one was. And so we felt like we were in this hamster wheel fighting this incident over and over again, and we just did not have the brain power to do anything about it. And so what we did was like, &quot;Let&#39;s try to make this process easier for us.&quot; And that&#39;s what I recommend a lot of organizations start doing. Make the process easier for your responders. A lot of organizations start introducing tools, introducing Slack bots or team spots, whatever sort of chat platform you&#39;re using, start communicating, automating some of the things.</p>
<p>And what we did is we hired an night nanny. So once you have the bandwidth, you&#39;re out of constantly, constantly fighting incidents, then you&#39;re able to start putting those productive retrospectives, productive postmortems and start figuring out what it is that you can do at a higher level. Right? At that point, that&#39;s when my husband and I were like, &quot;You know what? We don&#39;t have to drag our two infants in their car seats to Costco. We can just have the diapers delivered.&quot; So we&#39;re thinking of a change to the process that&#39;s going to make the entire lifecycle easier, not just one specific incident. And I think I gave that example earlier, right? After an incident, maybe once we are able to have a retrospective, we realize, &quot;You know what?We need better controls for this processor. We need to have a testing suite that makes more sense or blue-green deployments,&quot; whatever it&#39;s that you want to call it. And so those action items make it easier, lead to fewer incidents, give you more bandwidth.</p>
<p>And then the last thing that we like to do is cross-incident analysis where you&#39;ve made those easy changes, you&#39;ve addressed the low hanging fruit and then taking a holistic look at your incidents. Maybe you&#39;re taking a look at all the incidents that you had in the last quarter, and you&#39;re able to say like, &quot;Okay, you know what? This team has a lot of incidents. Let&#39;s try to maybe give them a little bit more headcount.&quot; Or, &quot;It seems like these two teams are working on something similar or it seems like a lot of these incidents are related to this antiquated pipeline. Let&#39;s maybe give more resources to do all of this.&quot; And so you go from making small changes to the incident process itself to making changes out of those incidents. And then you&#39;re making larger transformations.</p>
<p>And actually, during my time, we were able to make a case for changing, for going into more of a DevOps organization, moving away from an ops team that everything was funneled through them, through having the SRE team. And that&#39;s the funnel that not everything goes through them because we were able to look at the incidents and because we were able to try to find patterns there. And I did the same thing with my children and now I love being a mom.</p>
<p><b>Shane Hastie</b>: Two-year-old twins, your life is a hurricane.</p>
<p><b>Vanessa Huerta Granda</b>: It&#39;s fun. I do incidents for a living.</p>
<p><b>Shane Hastie</b>: One of the things that we touched on earlier, but I would like to dig in deeper is stress and burnout. How do we help folks reduce the stress and avoid burnout? Because we certainly know that burnout is a significant issue in our industry at the moment.</p>
<h2>Reducing stress and avoiding burnout [<a href="javascript:void(0);" onclick="seekTo(12,51)">12:51</a>]</h2>
<p><b>Vanessa Huerta Granda</b>: Absolutely. We&#39;ve seen it everywhere, right? Burnout. I don&#39;t see people getting burnt out because they&#39;re working so much, as much as they get burnt out because they&#39;re working hard, but it never stops. Nothing ever changes. And that&#39;s why I am so passionate about the learning part of things and not just the resolving problems, but if you&#39;re in the hamster wheel, I want to hear what you are seeing and I want to see where it is that I can help. And that&#39;s why I like to make those... You have those short-term action items that can help maybe things a little bit, but then when we&#39;re making those higher level recommendations, we include things like, &quot;Let&#39;s add more headcount because things are hitting a fan.&quot; Or you always hear engineers saying, &quot;The problem is that we have this outdated architecture that made sense a while ago, but no one&#39;s going to put the resources.&quot;</p>
<p>Well, if I&#39;m the person that has all of the data around incidents and I&#39;m able to go up to your leadership team and tell them, &quot;All of these incidents that you&#39;re having, maybe you should put in some resources into doing something different.&quot; That&#39;s going to allow people to see that their hard work isn&#39;t just for nothing. I&#39;m also a manager of my specific team, and I take that very seriously and I make sure to have personal connections with them and make sure to give them the time that they need to rest, to listen to them, and to be proactive about that, right? Like, &quot;If you were up all night working on an incident, please don&#39;t come in today. Please take some time to sleep.&quot; And the same goes with your personal life, right? Like, &quot;If you were handling your three-month-old baby overnight, there are more important things out there.&quot;</p>
<p><b>Shane Hastie</b>: You are a manager, you&#39;re a leader of a team. A lot of our audience are stepping into that role, often for the first time. What advice would you have for them?</p>
<h2>Advice for new leaders [<a href="javascript:void(0);" onclick="seekTo(14,40)">14:40</a>]</h2>
<p><b>Vanessa Huerta Granda</b>: When you&#39;re an individual contributor, it&#39;s sometimes hard to understand the constraints that management is working with. I think becoming a first-time manager, I wish I had given myself a little bit more grace and realized that I can&#39;t change everything. One of my mentors actually, her mantra was, &quot;Grit and grace.&quot; Yes, try to work through things with grit, but also give yourself grace. Give other people grace. No one&#39;s out to get you. And I feel like it&#39;s taken me a little bit to realize that, especially when you&#39;re working with incidents, when you&#39;re trying to work with people from different functions, they&#39;re all working with their own constraints. And so remember that you&#39;re on the same team, I think makes a lot of difference.</p>
<p>And then when you&#39;re managing your own team, I mentioned that I take that very seriously. These are people&#39;s livelihoods that I have on my hands, right? I&#39;m their manager, and so they spend a lot of time working, and I just want to make sure that I&#39;m listening to them, that I&#39;m understanding where they&#39;re coming from, not making assumptions, giving them grace as well.</p>
<p><b>Shane Hastie</b>: Grit and grace. I like the combination, grit and grace. Thank you very much. Vanessa, if people want to continue the conversation, where will they find you?</p>
<p><b>Vanessa Huerta Granda</b>: I guess on X is now what it&#39;s called, I am the v_hue_g. You can also find me on LinkedIn. My name, Vanessa Huerta Granda. And yeah, I talk about incidents all the time and a little bit about reality TV, mostly about incidents.</p>
<p><b>Shane Hastie</b>: Thank you so much for taking the time to talk to us today.</p>
<p><b>Vanessa Huerta Granda</b>: Thank you, Shane.</p>
<p>Mentioned:</p>
<ul>
<li><a href="https://qconsf.com/">QCon San Francisco</a> &nbsp;</li>
<li><a href="https://www.etsy.com/codeascraft/debriefing-facilitation-guide">Etsy Debriefing Guide</a></li>
<li><a href="https://www.jeli.io/howie/welcome">Howie Guide from jeli.io</a></li>
<li>Vanessa Huerta Granda on <a href="https://twitter.com/v_hue_g">X</a> and <a href="https://www.linkedin.com/in/vanessa-huerta-granda-6b3a5320/">LinkedIn</a></li>
</ul>
<div class="author-section-full"> <!-- main wrapper for authors section -->
<h2>About the Author</h2> <!-- section title -->
<div class="author" data-id="author-Vanessa-Huerta-Granda"> <!-- main wrapper for each author -->
<a href="/profile/Vanessa-Huerta-Granda/" class="avatar author__avatar" aria-label="Vanessa Huerta Granda"> </a>
<div class="content-author">
<h4><strong>Vanessa Huerta Granda</strong></h4>
<div class="show-author-bio">
<p>
<!-- author bio will be inserted by frontend -->
</p>
<span>
<div class="icon button-icon icon__plus-circle"></div><span class="show-more">Show more</span><span class="show-less">Show less</span>
</span>
</div>
</div>
</div>
</div>
</div>
<div class="clear"></div>
<h2><strong>More about our podcasts</strong></h2>
You can keep up-to-date with the podcasts via our <a href="http://www.infoq.com/podcasts/incident-management-resilience/" target="_blank">RSS Feed</a>, and they are available via
<a href="https://soundcloud.com/infoq-engineering-culture" target="_blank">SoundCloud</a>,
<a href="https://itunes.apple.com/gb/podcast/engineering-culture-by-infoq/id1161431874?mt=2" target="_blank">Apple Podcasts</a>,
<a href="https://open.spotify.com/show/5YAzpmLjbNhQVVg7HkfIHP" target="_blank">Spotify</a>,
<a href="https://overcast.fm/itunes1161431874/engineering-culture-by-infoq" target="_blank">Overcast</a>
and <a href="https://youtube.com/playlist?list=PLndbWGuLoHeYaFgbuLnvO5Qab2pFBaSWX&si=CbKqeKewkXZSXYW-" target="_blank">YouTube</a>.
From this page you also have access to our recorded show notes. They all have clickable links that will take you directly to that part of the audio.
<h2><strong>Previous podcasts</strong></h2>
<div class="previousPodcasts">
<div class="previousPodcasts__item">
<a class="previousPodcasts__img" href="/podcasts/personality-over-skillset/">
<img loading="lazy" _href="img://adam-wachtel-interviewee-1787649877840.jpeg" alt="Personality Over Skillset: How Adam Wachtel Builds Engineering Teams" src="https://res.infoq.com/podcasts/personality-over-skillset/en/mediumimage/adam-wachtel-interviewee-1787649877840.jpeg" />
</a>
<p>
<a href="/podcasts/personality-over-skillset/">
Personality Over Skillset: How Adam Wachtel Builds Engineering Teams
</a>
</p>
</div>
<div class="previousPodcasts__item">
<a class="previousPodcasts__img" href="/podcasts/building-engineering-teams-early-stage-startups/">
<img loading="lazy" _href="img://david-gudeman-interviewee-1786109915926.jpeg" alt="Founders, Friction, and Focus: Building Engineering Teams at Early-Stage Startups" src="https://res.infoq.com/podcasts/building-engineering-teams-early-stage-startups/en/mediumimage/david-gudeman-interviewee-1786109915926.jpeg" />
</a>
<p>
<a href="/podcasts/building-engineering-teams-early-stage-startups/">
Founders, Friction, and Focus: Building Engineering Teams at Early-Stage Startups
</a>
</p>
</div>
<div class="previousPodcasts__item">
<a class="previousPodcasts__img" href="/podcasts/infoq-culture-trends-2026/">
<img loading="lazy" _href="img://trends-report-podcast-290-210-logo-interviewee-pic-1785405371110.jpg" alt="Culture &amp; Methods Trends 2026: The Human Side of AI Engineering" src="https://res.infoq.com/podcasts/infoq-culture-trends-2026/en/mediumimage/trends-report-podcast-290-210-logo-interviewee-pic-1785405371110.jpg" />
</a>
<p>
<a href="/podcasts/infoq-culture-trends-2026/">
Culture &amp; Methods Trends 2026: The Human Side of AI Engineering
</a>
</p>
</div>
<div class="previousPodcasts__item">
<a class="previousPodcasts__img" href="/podcasts/formal-methods-ai-powered-future/">
<img loading="lazy" _href="img://gabriela-moreira-interviewee-1782478546952.jpeg" alt="Formal Methods for Every Engineer in an AI-Powered Future" src="https://res.infoq.com/podcasts/formal-methods-ai-powered-future/en/mediumimage/gabriela-moreira-interviewee-1782478546952.jpeg" />
</a>
<p>
<a href="/podcasts/formal-methods-ai-powered-future/">
Formal Methods for Every Engineer in an AI-Powered Future
</a>
</p>
</div>
</div>
<input type="hidden" name="" value="Thank you for your review!" id="cr_messages_submitSuccess"/>
<input type="hidden" name="" value="Rating is required" id="cr_messages_ratingRequired"/>
<input type="hidden" name="" value="Resilience and Incident Management with Vanessa Huerta Granda" id="cr_item_title"/>
<input type="hidden" name="" value="Vanessa Huerta Granda" id="cr_item_author"/>
<input type="hidden" name="" value="http://www.infoq.com/podcasts/incident-management-resilience/" id="cr_item_url"/>
<input type="hidden" name="" value="podcasts" id="cr_item_ctype"/>
<input type="hidden" name="" value="en" id="cr_item_lang"/>
<input type="hidden" name="" value="1709280000000" id="cr_item_published_time"/>
<input type="hidden" name="" value="2499" id="cr_item_primary_topic"/>
<script type="text/javascript">
ContentRating.readMessages();
ContentRating.readContentItem();
</script>
<form class="box__border box form rate contentRatingWidget">
<h3 class="heading">Rate this Article</h3>
<div class="criterias">
<div class="crit" id="relevance_fieldset">
<div class="crit__name">Adoption</div>
<span class="stars">
<input type="radio" id="relevance-star5" name="rating-relevance" value="5" /><label class="star" for="relevance-star5" title="Innovator"></label>
<input type="radio" id="relevance-star4" name="rating-relevance" value="4" /><label class="star" for="relevance-star4" title="Early adopter"></label>
<input type="radio" id="relevance-star3" name="rating-relevance" value="3" /><label class="star" for="relevance-star3" title="Early majority"></label>
<input type="radio" id="relevance-star2" name="rating-relevance" value="2" /><label class="star" for="relevance-star2" title="Late majority"></label>
<input type="radio" id="relevance-star1" name="rating-relevance" value="1" /><label class="star" for="relevance-star1" title="Laggards"></label>
</span>
<span class="stars__total"></span>
</div>
<div class="crit" id="style_fieldset">
<div class="crit__name">Style</div>
<span class="stars">
<input type="radio" id="style-star5" name="rating-style" value="5" /><label class="star" for="style-star5" title="Exceptional"></label>
<input type="radio" id="style-star4" name="rating-style" value="4" /><label class="star" for="style-star4" title="Good"></label>
<input type="radio" id="style-star3" name="rating-style" value="3" /><label class="star" for="style-star3" title="Average"></label>
<input type="radio" id="style-star2" name="rating-style" value="2" /><label class="star" for="style-star2" title="Acceptable"></label>
<input type="radio" id="style-star1" name="rating-style" value="1" /><label class="star" for="style-star1" title="Poor"></label>
</span>
<span class="stars__total"></span>
</div>
</div>
</form>
<div class="reviews tabs contentRatingWidget">
<div id="editorReview" class="tab" data-title="Editor Review">
<form class="box__border form contentRatingWidget" onsubmit="return false;">
<span class="field input__textarea" aria-required="false">
<textarea id="editor_input" placeholder="Click to leave your review..." name="textarea" value="" class="field__input"></textarea>
<p class="input__message field__desc serverCallFeedback"></p>
</span>
<input class="button button__large submit_rating" type="submit" value="Submit"/>
</form>
</div>
<div id="chiefEditorReview" class="tab" data-title="Chief Editor Action">
<form class="box__border form contentRatingWidget" onsubmit="return false;">
<span class="field input__textarea">
<textarea id="chiefEditor_input" placeholder="Chief Editor action..." value="" class="field__input"></textarea>
<p class="input__message field__desc serverCallFeedback"></p>
</span>
<div class="actions">
<div class="actions__left">
<input class="button button__large submit_rating" type="submit" value="Submit"/>
</div>
<div class="actions__right">
<span class="field input__checkbox input--small">
<input type="checkbox" id="auth-checkbox" />
<label class="label" for="auth-checkbox"><span></span> Author Contacted</label>
</span>
</div>
</div>
</form>
</div>
</div>
<script type="text/javascript">
if (!InfoQConstants.editorUser || InfoQConstants.editorUser == 'false') {
$('.contentRatingWidget').remove();
} else {
if (InfoQConstants.chiefEditor !== 'undefined' && InfoQConstants.chiefEditor == 'false') {
$('#chiefEditorReview').remove();
}
}
</script>
<div class="widget article__fromTopic topics">
<div class="widget__head related__for-topic" data-id="6817" data-trk-ref="content_primary_topic">
<h4 class="heading related__heading">
This content is in the <a href='/culture-methods/'>Culture &amp; Methods</a> topic
</h4>
</div>
<h5 class="heading related__inline">Related Topics:</h5>
<ul class="no-style topics related__topics topics__small" data-trk-ref="content_related_topic">
<li data-id="6817">
<a href="/culture-methods/" class="button related__topic button__small button__black">Culture &amp; Methods</a>
</li>
<li data-id="17206">
<a href="/Engineering-Culture-Podcast/" class="button related__topic button__small button__black">Engineering Culture Podcast</a>
</li>
<li data-id="18497">
<a href="/qcon-san-francisco-2023/" class="button related__topic button__small button__black">QCon San Francisco 2023</a>
</li>
<li data-id="134">
<a href="/InfoQ/" class="button related__topic button__small button__black">InfoQ</a>
</li>
<li data-id="597">
<a href="/qcon/" class="button related__topic button__small button__black">QCon Software Development Conference</a>
</li>
<li data-id="14722">
<a href="/Resilience/" class="button related__topic button__small button__black">Resilience</a>
</li>
<li data-id="48">
<a href="/management/" class="button related__topic button__small button__black">Management</a>
</li>
<li data-id="6243">
<a href="/Culture/" class="button related__topic button__small button__black">Culture</a>
</li>
<li data-id="3851">
<a href="/artificial_intelligence/" class="button related__topic button__small button__black">Artificial Intelligence</a>
</li>
<li data-id="704">
<a href="/careers/" class="button related__topic button__small button__black">Careers</a>
</li>
<li data-id="16293">
<a href="/incident-reponse/" class="button related__topic button__small button__black">Incident Response</a>
</li>
<li data-id="1389">
<a href="/architecture/" class="button related__topic button__small button__black">Architecture</a>
</li>
</ul>
</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
$.ajax({
url: "/api/recommendationlinks.action",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
type: 'POST',
data: {
"primaryTopicAlias": "culture-methods",
"topicIds": "45,3450,1081,6986,700,4910,5789",
"title": "Resilience and Incident Management with Vanessa Huerta Granda",
"contentPath": "/podcasts/incident-management-resilience",
"language": "en"
},
success: displayRelatedEditorial,
async: false
});
});
function displayRelatedEditorial(data) {
$('.related__editorial h4').text("Related Editorial");
if (data && data.length > 0) {
if(data[0].fromEs) {
//change title and tracking params
var box_title="Culture &amp; Methods";
//replace html entity since it conflicts with style
box_title=box_title.replace("&amp;","&");
$('.related__editorial h4').text("Popular in " + box_title);
}
for (var i = 0; i < data.length; i++) {
if (i === 5) {
break;
}
if (data[i].url.indexOf("/podcasts/incident-management-resilience") !== -1) {
console.log("Removing the current item from list...");
continue;
}
var theLinkURL = data[i].url;
if(!theLinkURL.endsWith("/")) {
theLinkURL = theLinkURL + "/";
}
var link = $('<li><h5 class="rvc__title"><a title="" href="' + theLinkURL + '/">' + data[i].title + '</a></h5></li>');
$('.related__editorial ul').append(link);
}
$('.related__editorial').show();
displayWidget = true;
}else{
$('.related__editorial').parent("li").remove();
}
if(displayWidget==true){
$('.related__group').attr("data-cols", $('.related__group').find(">li").length);
$('.related__group').css("display", "flex");
}
}
</script>
<ul class="no-style related__group nocontent cards">
<li>
<div class="related__editorial">
<h4 class="heading">Related Editorial</h4>
<ul></ul>
</div>
</li>
<li class="bg-gray is-movable">
<div class="related__prsp">
<h4 class="heading">Popular across InfoQ</h4>
<ul>
<li>
<h5 class="rvc__title">
<a href="/news/2026/09/netflix-flink-autoscaler/" class="rvc__link">
Netflix Moves toward Open Source Flink Autoscaler for 30,000+ Streaming Jobs
</a>
</h5>
</li>
<li>
<h5 class="rvc__title">
<a href="/news/2026/09/java-news-roundup-aug31-2026/" class="rvc__link">
Java News Roundup: TornadoVM 6, JReleaser, LangChain4j, Java Operator SDK, JHipster, Yupiik Fusion
</a>
</h5>
</li>
<li>
<h5 class="rvc__title">
<a href="/news/2026/09/google-mantis-vulnerability-scan/" class="rvc__link">
Google Mantis: an Agentic Vulnerability Scanning Harness for Reducing False Positives
</a>
</h5>
</li>
<li>
<h5 class="rvc__title">
<a href="/news/2026/09/blume-docs-ai/" class="rvc__link">
Blume: Zero-Config Docs Framework That Turns a Markdown Folder into an AI-Ready Website
</a>
</h5>
</li>
<li>
<h5 class="rvc__title">
<a href="/news/2026/09/cern-debian-infra/" class="rvc__link">
CERN Renounces RHEL in Favor of Debian for its Accelerator Controls Infrastructure
</a>
</h5>
</li>
<li>
<h5 class="rvc__title">
<a href="/podcasts/personality-over-skillset/" class="rvc__link">
Personality Over Skillset: How Adam Wachtel Builds Engineering Teams
</a>
</h5>
</li>
</ul>
</div>
</li>
</ul>
</div>
<div class="article__more f_article_rightbar" data-col="2/6">
<script type="text/javascript">
window.finishedRightbarVcr = false;
var _gaq = _gaq || [];
var recomJson ="[{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1789120800000,&quot;url&quot;:&quot;/news/2026/09/linkedin-ai-multi-teacher&quot;,&quot;title&quot;:&quot;How LinkedIn Trains AI Job Search 8x Faster with Multi-Teacher Distillation&quot;,&quot;authorsList&quot;:[&quot;Claudio Masolo&quot;],&quot;itemPath&quot;:&quot;/news/2026/09/linkedin-ai-multi-teacher&quot;,&quot;score&quot;:20,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1789114440000,&quot;url&quot;:&quot;/news/2026/09/observability-ai-agents&quot;,&quot;title&quot;:&quot;Session Traces and Cost Controls Help Diagnose AI Agent Failures&quot;,&quot;authorsList&quot;:[&quot;Mark Silvester&quot;],&quot;itemPath&quot;:&quot;/news/2026/09/observability-ai-agents&quot;,&quot;score&quot;:20,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1789062540000,&quot;url&quot;:&quot;/news/2026/09/openai-gpt6-astra&quot;,&quot;title&quot;:&quot;OpenAI Releases GPT-6 Astra for Coding and Computer Use&quot;,&quot;authorsList&quot;:[&quot;Daniel Dominguez&quot;],&quot;itemPath&quot;:&quot;/news/2026/09/openai-gpt6-astra&quot;,&quot;score&quot;:19,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1788868800000,&quot;url&quot;:&quot;/news/2026/09/gitlab-ai-sandbox-access&quot;,&quot;title&quot;:&quot;GitLab Warns That AI Agent Sandboxes Are Only as Secure as Their Network Access&quot;,&quot;authorsList&quot;:[&quot;Craig Risi&quot;],&quot;itemPath&quot;:&quot;/news/2026/09/gitlab-ai-sandbox-access&quot;,&quot;score&quot;:19,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/minibooks/architect-sociotechnical-craft/en/smallimage/thumb-1787566215701.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1787311800000,&quot;url&quot;:&quot;/minibooks/architect-sociotechnical-craft&quot;,&quot;title&quot;:&quot;Architecture as a Socio-Technical Craft&quot;,&quot;authorsList&quot;:[&quot;InfoQ&quot;],&quot;itemPath&quot;:&quot;/minibooks/architect-sociotechnical-craft&quot;,&quot;score&quot;:19,&quot;contentType&quot;:&quot;minibooks&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1788436620000,&quot;url&quot;:&quot;/news/2026/09/human-reviews-AI-era&quot;,&quot;title&quot;:&quot;Rigorous Yet Sustainable Human Reviews in the AI Era&quot;,&quot;authorsList&quot;:[&quot;Ben Linders&quot;],&quot;itemPath&quot;:&quot;/news/2026/09/human-reviews-AI-era&quot;,&quot;score&quot;:18,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1788288420000,&quot;url&quot;:&quot;/news/2026/09/openclaw-2-release&quot;,&quot;title&quot;:&quot;OpenClaw 2.0 Releases with Simplified Setup and Collaborative Agents&quot;,&quot;authorsList&quot;:[&quot;Daniel Dominguez&quot;],&quot;itemPath&quot;:&quot;/news/2026/09/openclaw-2-release&quot;,&quot;score&quot;:17,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1788264000000,&quot;url&quot;:&quot;/news/2026/09/hcp-terraform-ai-driven-control&quot;,&quot;title&quot;:&quot;HCP Terraform Positions Itself as the Control Plane for AI-Driven Infrastructure&quot;,&quot;authorsList&quot;:[&quot;Craig Risi&quot;],&quot;itemPath&quot;:&quot;/news/2026/09/hcp-terraform-ai-driven-control&quot;,&quot;score&quot;:17,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1787927400000,&quot;url&quot;:&quot;/news/2026/08/uber-gitfarm-git-as-a-service&quot;,&quot;title&quot;:&quot;Uber Builds GitFarm to Run Git Operations as a Service for Large-Scale Monorepos&quot;,&quot;authorsList&quot;:[&quot;Leela Kumili&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/uber-gitfarm-git-as-a-service&quot;,&quot;score&quot;:17,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1787842800000,&quot;url&quot;:&quot;/news/2026/08/google-database-operation-agents&quot;,&quot;title&quot;:&quot;Google Cloud Launches AI-powered Agents to Simplify Database Lifecycle Management&quot;,&quot;authorsList&quot;:[&quot;Sergio De Simone&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/google-database-operation-agents&quot;,&quot;score&quot;:17,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/form3-multicloud-architecture/en/smallimage/ross-mcfarlane-kevin-holditch-thumbnail-1788338652847.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1789124400000,&quot;url&quot;:&quot;/presentations/form3-multicloud-architecture&quot;,&quot;title&quot;:&quot;How To Run on Three Clouds at Once, and When Not To&quot;,&quot;authorsList&quot;:[&quot;Ross McFarlane&quot;,&quot;Kevin Holditch&quot;],&quot;itemPath&quot;:&quot;/presentations/form3-multicloud-architecture&quot;,&quot;score&quot;:16,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/claude-sre-incidents/en/smallimage/alex-palcuie-thumbnail-1786539336984.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1787742000000,&quot;url&quot;:&quot;/presentations/claude-sre-incidents&quot;,&quot;title&quot;:&quot;Can Claude Fix Itself? Using LLMs for Incident Response&quot;,&quot;authorsList&quot;:[&quot;Alex Palcuie&quot;],&quot;itemPath&quot;:&quot;/presentations/claude-sre-incidents&quot;,&quot;score&quot;:16,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1787659200000,&quot;url&quot;:&quot;/news/2026/08/bmc-vulnerabilities&quot;,&quot;title&quot;:&quot;BMC Vulnerabilities Put Thousands of Servers at Risk of Hardware-Level Compromise&quot;,&quot;authorsList&quot;:[&quot;Craig Risi&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/bmc-vulnerabilities&quot;,&quot;score&quot;:16,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1787313600000,&quot;url&quot;:&quot;/news/2026/08/cloudflare-ai-enforcement&quot;,&quot;title&quot;:&quot;Cloudflare Turns Engineering Standards into an AI-Enforced Control System&quot;,&quot;authorsList&quot;:[&quot;Craig Risi&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/cloudflare-ai-enforcement&quot;,&quot;score&quot;:16,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1787227200000,&quot;url&quot;:&quot;/news/2026/08/ai-assisted-engineering&quot;,&quot;title&quot;:&quot;InfoQ Opens Enrollment for New AI-Assisted Engineering Online Certification Program&quot;,&quot;authorsList&quot;:[&quot;Artenisa Chatziou&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/ai-assisted-engineering&quot;,&quot;score&quot;:16,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1787225100000,&quot;url&quot;:&quot;/news/2026/08/code-AI-write-only-disposable&quot;,&quot;title&quot;:&quot;How Code in the Age of Artificial Intelligence Becomes Write-Only and Disposable&quot;,&quot;authorsList&quot;:[&quot;Ben Linders&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/code-AI-write-only-disposable&quot;,&quot;score&quot;:16,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1786620480000,&quot;url&quot;:&quot;/news/2026/08/AI-disrupts-engineering-progress&quot;,&quot;title&quot;:&quot;How Artificial Intelligence Disrupts Engineering Progression&quot;,&quot;authorsList&quot;:[&quot;Ben Linders&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/AI-disrupts-engineering-progress&quot;,&quot;score&quot;:16,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/articles/when-spec-driven-development-pays-off/en/smallimage/When-Spec-Driven-Development-Pays-Off-thumb-1788790605567.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1789030800000,&quot;url&quot;:&quot;/articles/when-spec-driven-development-pays-off&quot;,&quot;title&quot;:&quot;When Spec-Driven Development Pays Off&quot;,&quot;authorsList&quot;:[&quot;Nitin Garg&quot;],&quot;itemPath&quot;:&quot;/articles/when-spec-driven-development-pays-off&quot;,&quot;score&quot;:15,&quot;contentType&quot;:&quot;articles&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/unikraft-microvm-sandboxes-cloud-scaling/en/smallimage/felipe-huici-thumbnail-1787813506607.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1788951600000,&quot;url&quot;:&quot;/presentations/unikraft-microvm-sandboxes-cloud-scaling&quot;,&quot;title&quot;:&quot;Fixing the AI Infra Scale Problem by Stuffing 1M Sandboxes in a Single Server&quot;,&quot;authorsList&quot;:[&quot;Felipe Huici&quot;],&quot;itemPath&quot;:&quot;/presentations/unikraft-microvm-sandboxes-cloud-scaling&quot;,&quot;score&quot;:15,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/ai-platform-engineering-roundtable/en/smallimage/thumb-1788861349861.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1788876000000,&quot;url&quot;:&quot;/presentations/ai-platform-engineering-roundtable&quot;,&quot;title&quot;:&quot;Platform Engineering in the Age of AI&quot;,&quot;authorsList&quot;:[&quot;St&#xE9;phane Di Cesare&quot;,&quot;Davide de Paolis&quot;,&quot;Stephen Cihak&quot;,&quot;Camila Macedo&quot;,&quot;Renato Losio&quot;],&quot;itemPath&quot;:&quot;/presentations/ai-platform-engineering-roundtable&quot;,&quot;score&quot;:15,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1786989720000,&quot;url&quot;:&quot;/news/2026/08/grok-bot-agent&quot;,&quot;title&quot;:&quot;SpaceXAI Launches Grok Bot for Autonomous AI Agents&quot;,&quot;authorsList&quot;:[&quot;Daniel Dominguez&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/grok-bot-agent&quot;,&quot;score&quot;:15,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1786974060000,&quot;url&quot;:&quot;/news/2026/08/grab-ai-analytics-agents&quot;,&quot;title&quot;:&quot;Grab Cuts Mechanical Analytics Work from 44% to 30% with AI Agents&quot;,&quot;authorsList&quot;:[&quot;Leela Kumili&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/grab-ai-analytics-agents&quot;,&quot;score&quot;:15,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:null,&quot;topicsIds&quot;:null,&quot;date&quot;:1786635420000,&quot;url&quot;:&quot;/news/2026/08/vercel-v0-api&quot;,&quot;title&quot;:&quot;Vercel Launches v0 API for Headless App Building&quot;,&quot;authorsList&quot;:[&quot;Daniel Dominguez&quot;],&quot;itemPath&quot;:&quot;/news/2026/08/vercel-v0-api&quot;,&quot;score&quot;:15,&quot;contentType&quot;:&quot;news&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/ebpf-ai-gateway-kubernetes-security/en/smallimage/dan-finneran-thumbnail-1786539181222.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1787310000000,&quot;url&quot;:&quot;/presentations/ebpf-ai-gateway-kubernetes-security&quot;,&quot;title&quot;:&quot;Enchant Your AI and APIs with eBPF Magic 🪄&quot;,&quot;authorsList&quot;:[&quot;Dan Finneran&quot;],&quot;itemPath&quot;:&quot;/presentations/ebpf-ai-gateway-kubernetes-security&quot;,&quot;score&quot;:14,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/progressive-collapse-system-resilience/en/smallimage/sam-newman-thumbnail-1785845419904.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1787137200000,&quot;url&quot;:&quot;/presentations/progressive-collapse-system-resilience&quot;,&quot;title&quot;:&quot;Understanding Progressive Collapse: How To Avoid A Cascading Failure&quot;,&quot;authorsList&quot;:[&quot;Sam Newman&quot;],&quot;itemPath&quot;:&quot;/presentations/progressive-collapse-system-resilience&quot;,&quot;score&quot;:14,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/articles/agentic-fitness-functions-evolutionary-architecture/en/smallimage/thumbnail-1786428822427.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1786964400000,&quot;url&quot;:&quot;/articles/agentic-fitness-functions-evolutionary-architecture&quot;,&quot;title&quot;:&quot;Agentic Fitness Functions: Extending Evolutionary Architecture Beyond Deterministic Rules&quot;,&quot;authorsList&quot;:[&quot;Hemant Kumar Mahato&quot;,&quot;Łukasz Sieczkowski&quot;,&quot;Vijayasenthilkumar Kuppusamy&quot;],&quot;itemPath&quot;:&quot;/articles/agentic-fitness-functions-evolutionary-architecture&quot;,&quot;score&quot;:14,&quot;contentType&quot;:&quot;articles&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/architecture-context-engineering/en/smallimage/partick-baruch-thumbnail-1786008501700.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1786705200000,&quot;url&quot;:&quot;/presentations/architecture-context-engineering&quot;,&quot;title&quot;:&quot;The Right 300 Tokens Beat 100k Noisy Ones: The Architecture of Context Engineering&quot;,&quot;authorsList&quot;:[&quot;Patrick Debois&quot;,&quot;Baruch Sadogursky&quot;],&quot;itemPath&quot;:&quot;/presentations/architecture-context-engineering&quot;,&quot;score&quot;:14,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/ai-token-price/en/smallimage/meryem-arik-thumbnail-1785844873071.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1786442700000,&quot;url&quot;:&quot;/presentations/ai-token-price&quot;,&quot;title&quot;:&quot;Producing the World's Cheapest Tokens: A How-to Guide&quot;,&quot;authorsList&quot;:[&quot;Meryem Arik&quot;],&quot;itemPath&quot;:&quot;/presentations/ai-token-price&quot;,&quot;score&quot;:14,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/emulation-genai/en/smallimage/KennedyTorkura-thumbnail-1785396173788.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1786354320000,&quot;url&quot;:&quot;/presentations/emulation-genai&quot;,&quot;title&quot;:&quot;Leveraging Adversary Emulation for GenAI Red Teaming&quot;,&quot;authorsList&quot;:[&quot;Kennedy Torkura&quot;],&quot;itemPath&quot;:&quot;/presentations/emulation-genai&quot;,&quot;score&quot;:14,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/articles/culture-trends-2026/en/smallimage/infoq-trends-report-small-logo-1784644382346.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1786093200000,&quot;url&quot;:&quot;/articles/culture-trends-2026&quot;,&quot;title&quot;:&quot;InfoQ Culture and Methods Trends Report - 2026&quot;,&quot;authorsList&quot;:[&quot;Shane Hastie&quot;,&quot;Ben Linders&quot;,&quot;Vanessa Formicola&quot;,&quot;Shawna Martell&quot;,&quot;Rafiq Gemmail&quot;,&quot;Craig Smith&quot;,&quot;Phillip Mortimer&quot;,&quot;Yinka Omole&quot;],&quot;itemPath&quot;:&quot;/articles/culture-trends-2026&quot;,&quot;score&quot;:13,&quot;contentType&quot;:&quot;articles&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/tech-hype-cycles-architectural-tradeoffs/en/smallimage/holly-cummins-thumbnail-1783578321356.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1785495600000,&quot;url&quot;:&quot;/presentations/tech-hype-cycles-architectural-tradeoffs&quot;,&quot;title&quot;:&quot;The Free-Lunch Guide to Idea Circularity&quot;,&quot;authorsList&quot;:[&quot;Holly Cummins&quot;],&quot;itemPath&quot;:&quot;/presentations/tech-hype-cycles-architectural-tradeoffs&quot;,&quot;score&quot;:13,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/ai-lead-interview/en/smallimage/daniel-thumbnail-1784808762941.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1785320700000,&quot;url&quot;:&quot;/presentations/ai-lead-interview&quot;,&quot;title&quot;:&quot;Getting Rid of LeetCode Interviews in the World of AI&quot;,&quot;authorsList&quot;:[&quot;Daniel Doubrovkine&quot;],&quot;itemPath&quot;:&quot;/presentations/ai-lead-interview&quot;,&quot;score&quot;:13,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/ai-future-engineering/en/smallimage/ben-greene-thumbnail-1784809015374.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1785237000000,&quot;url&quot;:&quot;/presentations/ai-future-engineering&quot;,&quot;title&quot;:&quot;The Future of Engineering: Mindsets That Matter When Code Isn’t Enough&quot;,&quot;authorsList&quot;:[&quot;Ben Greene&quot;],&quot;itemPath&quot;:&quot;/presentations/ai-future-engineering&quot;,&quot;score&quot;:13,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/articles/self-building-agent-langchain4j/en/smallimage/the-self-building-agent-a-langChain4j-experiment-thumb-1784637877074.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1784883600000,&quot;url&quot;:&quot;/articles/self-building-agent-langchain4j&quot;,&quot;title&quot;:&quot;The Self-Building Agent: a LangChain4j Experiment&quot;,&quot;authorsList&quot;:[&quot;Kevin Dubois&quot;,&quot;Mario Fusco&quot;],&quot;itemPath&quot;:&quot;/articles/self-building-agent-langchain4j&quot;,&quot;score&quot;:13,&quot;contentType&quot;:&quot;articles&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/dbos/en/smallimage/thumbnail-1784107354116.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1784802360000,&quot;url&quot;:&quot;/presentations/dbos&quot;,&quot;title&quot;:&quot;Compiling Workflows into Databases: the Architecture That Shouldn't Work (But Does)&quot;,&quot;authorsList&quot;:[&quot;Jeremy Edberg&quot;,&quot;Qian Li&quot;],&quot;itemPath&quot;:&quot;/presentations/dbos&quot;,&quot;score&quot;:13,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/agent-software-engineering/en/smallimage/jake-thumbnail-1784183841742.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1784721420000,&quot;url&quot;:&quot;/presentations/agent-software-engineering&quot;,&quot;title&quot;:&quot;From Copy-Paste to Composition: Building Agents Like Real Software&quot;,&quot;authorsList&quot;:[&quot;Jake Mannix&quot;],&quot;itemPath&quot;:&quot;/presentations/agent-software-engineering&quot;,&quot;score&quot;:12,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/ai-mobile/en/smallimage/thumbanil-1784107227726.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1784629200000,&quot;url&quot;:&quot;/presentations/ai-mobile&quot;,&quot;title&quot;:&quot;Engineering AI for Creativity and Curiosity on Mobile&quot;,&quot;authorsList&quot;:[&quot;Bhavuk Jain&quot;],&quot;itemPath&quot;:&quot;/presentations/ai-mobile&quot;,&quot;score&quot;:12,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/otel-slm-ai/en/smallimage/benomahony-thumbnail-1783500827260.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1784294220000,&quot;url&quot;:&quot;/presentations/otel-slm-ai&quot;,&quot;title&quot;:&quot;From OTEL to SLMs: Distilling Frontier Model Behaviour from Production Telemetry&quot;,&quot;authorsList&quot;:[&quot;Ben O'Mahony&quot;],&quot;itemPath&quot;:&quot;/presentations/otel-slm-ai&quot;,&quot;score&quot;:12,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/presentations/postgres-ai-agents/en/smallimage/gwen-shapira-thumbnail-1783500671134.jpeg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1784120220000,&quot;url&quot;:&quot;/presentations/postgres-ai-agents&quot;,&quot;title&quot;:&quot;Postgres for Production Agents: Your Relational Foundation for Enterprise AI&quot;,&quot;authorsList&quot;:[&quot;Gwen Shapira&quot;],&quot;itemPath&quot;:&quot;/presentations/postgres-ai-agents&quot;,&quot;score&quot;:12,&quot;contentType&quot;:&quot;presentations&quot;},{&quot;imageStoragePath&quot;:&quot;https://imgopt.infoq.com/fit-in/50x50/filters:quality(80)/articles/ai-speed-context-store-architecture/en/smallimage/ai-speed-context-store-architecture-thumbnail-1783673492911.jpg&quot;,&quot;topicsIds&quot;:null,&quot;date&quot;:1784019600000,&quot;url&quot;:&quot;/articles/ai-speed-context-store-architecture&quot;,&quot;title&quot;:&quot;Comprehension at AI Speed: Building a Context Store for Evolutionary Architecture&quot;,&quot;authorsList&quot;:[&quot;Stella Berhe&quot;,&quot;Stephan Bragner&quot;,&quot;Vikram Maran&quot;,&quot;Anand Jayaraman&quot;],&quot;itemPath&quot;:&quot;/articles/ai-speed-context-store-architecture&quot;,&quot;score&quot;:12,&quot;contentType&quot;:&quot;articles&quot;}]";
var whitepaperVcrsJson = null;
var topicSponsorshipJson = "";
var vcrOptionalListJson = null;
/* do not delete these two, as they are used further in the code */
var contentDatetimeFormat='MMM dd, yyyy';
var contentUriMapping="podcasts";
JSi18n.relatedRightbar_relatedContent='Related Content';
JSi18n.relatedRightbar_sponsoredContent='Related Sponsors';
JSi18n.relatedRightbar_sponsoredBy='Sponsored by';
var topicIds = "5789,6986,131,593,3450,45,2064,1081,700,4910,876";
var communityIds = "2499";
var company = "Harness";
// this event is fired by frontend once all the necessary things have been done(mobile display, moving vcr boxes around when needed...)
var canStartTrackingCustomRightbar = false;
infoq.event.on('loaded', function(e) {
canStartTrackingCustomRightbar = true;
});
var intervalRightbar = setInterval(function() {
if (window.vcrsLoaded) {
clearInterval(intervalRightbar);
if(company != null && company != "") {
whitepaperVcrsJson = VCR.filterByCompany(company, window.vcrList);
} else {
whitepaperVcrsJson = VCR.getByTopicsAndCommunities(window.vcrList, topicIds, communityIds, 5, false, null);
}
vcrOptionalListJson = VCR.getByTopicsAndCommunities(window.vcrList, topicIds, communityIds, 10, true, null);
VCR.displayCustomRightbar(recomJson, whitepaperVcrsJson, topicSponsorshipJson);
VCR.displayCustomRightbarOptionalVcrWidget(vcrOptionalListJson);
window.finishedRightbarVcr = true;
}
}, 200);
// these two events can happen one before another async(no precedence any can be first or second). Make sure tracking starts when both happened
var intervalTrackingRightbar = setInterval(function() {
if(canStartTrackingCustomRightbar && window.finishedRightbarVcr){
clearInterval(intervalTrackingRightbar);
VCR.doTrackingCustomRightbar();
}
}, 200);
</script>
<noscript>
<div class="widget related__content article__widget">
<h3 class="widget__heading">Related Content</h3>
<ul class="no-style cards" data-horizontal="true" data-size="xs" data-tax="">
</ul>
</div>
</noscript>
<div class="newsletter widget" data-bg="infoq">
<h3 class="heading"><strong>The InfoQ</strong> Newsletter</h3>
<p class="intro">
A round-up of last week&#x2019;s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers.
<a target="_blank" href="https://assets.infoq.com/newsletter/regular/en/newsletter_sample/newsletter_sample.html">View an example</a>
</p>
<div class="newsletter__subscribe">
<form class="form gdpr" id="floatingNewsletterForm" action="#" onsubmit="floatingNewsletterForm.saveSubscription(); return false;">
<div class="field input__text input__no-label input__medium newsletter__mail email">
<label class="field__label label" for="email-newsletter-infoq-guide">Enter your e-mail address</label>
<input class="field__input input" id="email-newsletter-infoq-guide" placeholder="Enter your e-mail address" type="email">
<input type="text" name="emailH" id="input_floating_email_h" aria-required="false" style="display:none !important" tabindex="-1" autocomplete="off">
<input type="hidden" id="floating_fnt" name="fnt" value="6KVPHph6HgFezr2a"/>
<input type="hidden" id="floatingNewsletterType" name="footerNewsletterType" value="regular"/>
<input type="hidden" id="cmpi_f" name="cmpi" value="1"/>
</div>
<div class="hidden">
<span class="input__select field country">
<label for="input-floating-newsletter-country" class="label field__label">Select your country</label>
<select id="input-floating-newsletter-country" class="select field__input">
<option value="" class="select__option">Select a country</option>
</select>
<p class="input__message field__desc"></p>
</span>
<span class="input__checkbox field hidden">
<input type="checkbox" id="gdpr-consent-simple-floating-nl">
<label for="gdpr-consent-simple-floating-nl" class="label"><span>I consent to InfoQ.com handling my data as explained in this <a href="https://www.infoq.com/privacy-notice">Privacy Notice</a>.</span></label>
</span>
</div>
<input class="button button__medium button__yellow" type="submit" role="button" value="Subscribe" onclick="return floatingNewsletterForm.validateEmail('Invalid email address');">
</form>
<p class="meta">
<a href="/privacy-notice/" target="_blank">We protect your privacy.</a>
</p>
<span class="success" style="display:none;" id="floatingNewsletterEmailMessage"></span>
</div>
</div>
<script type="text/javascript">
var floatingNewsletterForm = new Newsletter('Enter your e-mail address',
'email-newsletter-infoq-guide', 'floatingNewsletterType','floatingNewsletterEmailMessage', 'floating_fnt', 'input_floating_email_h', 'input-floating-newsletter-country','cmpi_f','floating_box');
</script>
</div>
</div>
</div>
</section>
</article>
<script type="text/javascript">
// global vars that can be used for this page, us ethis section to add more.
var contentTitle = "Resilience and Incident Management with Vanessa Huerta Granda",
contentPath = "/podcasts/incident-management-resilience",
contentUUID = "3efd6c36-ea61-4578-8a6b-5f664a2f4e74",
authorUserCSVIds = "126645082";
</script>
<script src="https://cdn.infoq.com/statics_s2_20260910111657/scripts/prism-build.js"></script>
<script src="https://cdn.infoq.com/statics_s2_20260910111657/scripts/lib/MathJax/MathJax.js?config=TeX-AMS_HTML"></script>
</main>
<footer class="footer ">
<section data-nosnippet class="section container">
<div class="container__inner">
<ul data-cols="5" class="no-style columns boxes topic__boxes">
<li class="development">
<div class="box__header">
<a class="t_all_footer_more-boxes-header" href="/development/">Development</a>
</div>
<div class="box__content">
<ul class="no-style box__list small">
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/tinygo-devkit/" title="Advancing Embedded Go: Recoverable Panics, UEFI, Radio and Hardware Dev Kit">Advancing Embedded Go: Recoverable Panics, UEFI, Radio and Hardware Dev Kit</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/riscv-cpython/" title="CPython Officially Adds RISC-V Support as a Tier 3 Platform">CPython Officially Adds RISC-V Support as a Tier 3 Platform</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/async-lua-neovim/" title="vim.async&#039;s Addition Modernizes Neovim&amp;rsquo;s Async Architecture for Better Stability">vim.async's Addition Modernizes Neovim&rsquo;s Async Architecture for Better Stability</a></h5>
</li>
</ul>
</div>
</li>
<li class="architecture-design">
<div class="box__header">
<a class="t_all_footer_more-boxes-header" href="/architecture-design/">Architecture &amp; Design</a>
</div>
<div class="box__content">
<ul class="no-style box__list small">
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/netflix-conductor-4-workflow/" title="Netflix Reworks Conductor for 420 Million Monthly Workflow Executions and 10X Larger Workflows">Netflix Reworks Conductor for 420 Million Monthly Workflow Executions and 10X Larger Workflows</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/meta-organizational-agents/" title="Meta&#039;s Recipe for Building Agents as &amp;quot;Organizational Second Brains&amp;quot;">Meta's Recipe for Building Agents as &quot;Organizational Second Brains&quot;</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/netflix-flink-autoscaler/" title="Netflix Moves toward Open Source Flink Autoscaler for 30,000+ Streaming Jobs">Netflix Moves toward Open Source Flink Autoscaler for 30,000+ Streaming Jobs</a></h5>
</li>
</ul>
</div>
</li>
<li class="culture-methods">
<div class="box__header">
<a class="t_all_footer_more-boxes-header" href="/culture-methods/">Culture &amp; Methods</a>
</div>
<div class="box__content">
<ul class="no-style box__list small">
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/autonomous-software-teams/" title="Beyond Autonomous Teams in Software Product Development">Beyond Autonomous Teams in Software Product Development</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/presentations/rust-refactoring/" title="Accelerating Performance by Incrementally Integrating Rust Into Existing Codebase">Accelerating Performance by Incrementally Integrating Rust Into Existing Codebase</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/podcasts/personality-over-skillset/" title="Personality Over Skillset: How Adam Wachtel Builds Engineering Teams">Personality Over Skillset: How Adam Wachtel Builds Engineering Teams</a></h5>
</li>
</ul>
</div>
</li>
<li class="ai-ml-data-eng">
<div class="box__header">
<a class="t_all_footer_more-boxes-header" href="/ai-ml-data-eng/">AI, ML &amp; Data Engineering</a>
</div>
<div class="box__content">
<ul class="no-style box__list small">
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/nvidia-pair-ai-task-router/" title="NVIDIA Personal AI Router Distributes AI Tasks across Local Compute">NVIDIA Personal AI Router Distributes AI Tasks across Local Compute</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/linkedin-ai-multi-teacher/" title="How LinkedIn Trains AI Job Search 8x Faster with Multi-Teacher Distillation">How LinkedIn Trains AI Job Search 8x Faster with Multi-Teacher Distillation</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/openai-gpt6-astra/" title="OpenAI Releases GPT-6 Astra for Coding and Computer Use">OpenAI Releases GPT-6 Astra for Coding and Computer Use</a></h5>
</li>
</ul>
</div>
</li>
<li class="devops">
<div class="box__header">
<a class="t_all_footer_more-boxes-header" href="/devops/">DevOps</a>
</div>
<div class="box__content">
<ul class="no-style box__list small">
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/terraform-aws-provider-6-62/" title="Terraform AWS Provider Continues Rapid Expansion as AWS Infrastructure Becomes More Complex">Terraform AWS Provider Continues Rapid Expansion as AWS Infrastructure Becomes More Complex</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/observability-ai-agents/" title="Session Traces and Cost Controls Help Diagnose AI Agent Failures">Session Traces and Cost Controls Help Diagnose AI Agent Failures</a></h5>
</li>
<li>
<h5><a class="t_all_footer_more-boxes-item" href="/news/2026/09/hashicorp-packer-verification/" title="HashiCorp Packer 1.16 Adds Native SLSA Provenance Generation and Verification for Machine Images">HashiCorp Packer 1.16 Adds Native SLSA Provenance Generation and Verification for Machine Images</a></h5>
</li>
</ul>
</div>
</li>
</ul>
</div>
</section>
<section data-nosnippet class="container section section__newsletter">
<div class="columns container__inner">
<div class="newsletter" data-col="1/2"
id="infoq-nl"
>
<h2 class="heading">
<strong>The InfoQ</strong> Newsletter
</h2>
<p class="intro">A round-up of last week&#x2019;s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers.
<a target="_blank" href="https://assets.infoq.com/newsletter/regular/en/newsletter_sample/newsletter_sample.html">View an example</a>
</p>
<ul class="newsletter__features">
<li>Get a quick overview of content published on a variety of innovator and early adopter technologies</li>
<li>Learn what you don&#x2019;t know that you don&#x2019;t know</li>
<li>Stay up to date with the latest information from the topics you are interested in</li>
</ul>
<div class="newsletter__subscribe">
<form class="form gdpr" name="footerNewsletterForm" id="footerNewsletterForm" action="#" onsubmit="footerNewsletter.saveSubscription(); return false;">
<div class="field newsletter__mail input__text input__no-label input__medium email">
<label for="email-newsletter-infoq" class="label field__label">Enter your e-mail address</label>
<input id="email-newsletter-infoq" name="footerNewsletterEmail" placeholder="Enter your e-mail address" class="input field__input" type="email"/>
<input type="text" name="emailH" id="input_email_h" aria-required="false" style="display:none !important" tabindex="-1" autocomplete="off"/>
<input type="hidden" id="fnt" name="fnt" value="6KVPHph6HgFezr2a"/>
<input type="hidden" id="footerNewsletterType" name="footerNewsletterType" value="regular"/>
<input type="hidden" id="cmpi" name="cmpi" value="1"/>
</div>
<div class="hidden">
<span class="input__select field country">
<label for="input-simple-newsletter-country" class="label field__label">Select your country</label>
<select id="input-simple-newsletter-country" class="select field__input">
<option value="" class="select__option">Select a country</option>
</select>
<p class="input__message field__desc"></p>
</span>
<span class="input__checkbox field hidden">
<input type="checkbox" id="gdpr-consent-simple-nl">
<label for="gdpr-consent-simple-nl" class="label"><span>I consent to InfoQ.com handling my data as explained in this <a href="https://www.infoq.com/privacy-notice">Privacy Notice</a>.</span></label>
</span>
</div>
<input type="submit" role="button" value="Subscribe" class="button button__medium button__red" onclick="return footerNewsletter.validateEmail('Invalid email address');"/>
</form>
<p class="meta">
<a href="/privacy-notice/" target="_blank">We protect your privacy.</a>
</p>
<span class="success" style="display:none;" id="footerNewsletterMessage"></span>
</div>
<script type="text/javascript">
var footerNewsletter = new Newsletter('Enter your e-mail address',
'email-newsletter-infoq', 'footerNewsletterType','footerNewsletterMessage', 'fnt', 'input_email_h', 'input-simple-newsletter-country', 'cmpi','footer_except_homepage');
</script>
</div>
<div data-col="1/2" data-bg="certification" class="event__container" style="padding-right: 20px;">
<a href="https://certification.qconferences.com/?utm_source=infoq&amp;utm_medium=referral&amp;utm_campaign=largefooterad_onlinecohorts26" target="_blank" class="qconplus__events-slider" style="">
<div>
<div class="logo-certification"></div>
</div>
<p class="intro" style="margin-bottom: 0;color: white !important;">
<b>InfoQ Online Certification Programs</b>
<br>For Senior Engineers, Architects, and Technical Leaders
</p>
<ul style="margin-bottom: 0;">
<li style="color: white !important;"><b>Architect</b> with Luca Mezzalira | September 14</li>
<li style="color: white !important;"><b>Engineering Leadership</b> with Michelle Brush | September 18</li>
<li style="color: white !important;"><b>AI-Assisted Engineering</b> with Zichuan Xiong & Premanand Chandrasekaran | September 18</li>
<li style="color: white !important;"><b>AI Security &amp; Privacy Engineering</b> with Katharine Jarmul | October 14</li>
</ul>
<br>
<p class="intro" style="margin-bottom: 0;color: white !important;">As your role becomes more senior, the work changes. You're no longer just implementing decisions; you're shaping the systems, trade-offs, and technical direction other teams depend on.<br>These 5-week online programs give you a structured way to work through real decisions from your current role with senior peers from other companies.</p>
<strong class="button button__green cta__button">RESERVE YOUR PLACE</strong>
<small style="color: white;"><br>Live online. 4 hours a week, for 5 weeks.</small>
</a>
</div>
</div>
</section>
<section data-nosnippet class="section container footer__subfooter align__left">
<div class="container__inner columns">
<div data-col="1/4" class="columns footer__links-wrap">
<div class="footer__links">
<a href="/" class="nuxt-link-exact-active active" title="Home">Home</a>
<a href="/reginit.action" class="emphasis" title="Create account">Create account</a>
<button aria-label="Log In" class="login" data-ref="mainLogin">Log In</button>
<a rel="noreferrer noopener" href="http://qconferences.com/" target="_blank" title="QCon Conferences">QCon Conferences</a>
<a rel="noreferrer noopener" href="https://events.infoq.com/" target="_blank">Events</a>
<a href="/write-for-infoq/" title="Write for InfoQ">Write for InfoQ</a>
<a href="/infoq-editors/" title="InfoQ Editors">InfoQ Editors</a>
<a href="/about-infoq/" title="About InfoQ">About InfoQ</a>
<a href="https://c4media.com/" target="_blank" title="About C4Media">About C4Media</a>
<a rel="noreferrer noopener" href="https://get.infoq.com/infoq-mediakit/" title="Media Kit" target="_blank">
Media Kit
</a>
<a href="https://devmarketing.c4media.com/?utm_source=infoq" title="InfoQ Developer Marketing Blog" target="_blank">InfoQ Developer Marketing Blog</a>
<a rel="noreferrer noopener" href="https://c4media.com/diversity" title="Diversity" target="_blank">Diversity</a>
</div>
</div>
<div data-col="1/4" class="events__list">
<h4 class="heading footer__heading">Events</h4>
<ul class="qcons__list no-style">
<li><span class="icon event__type conference"></span>
<div class="qcon__detail">
<h5 class="heading">
<a rel="noreferrer noopener" href="https://certification.qconferences.com/architecture?utm_source=infoq&utm_medium=referral&utm_campaign=footer_onlinecohortarchitecture26" target="_blank">Online InfoQ Architect Certification</a>
</h5>
<span class="meta date">September 14, 2026</span>
</div>
</li>
<li><span class="icon event__type conference"></span>
<div class="qcon__detail">
<h5 class="heading">
<a rel="noreferrer noopener" href="https://certification.qconferences.com/ai-assisted-engineering?utm_source=infoq&utm_medium=referral&utm_campaign=footer_onlinecohortaiassistedengineering26" target="_blank">Online InfoQ AI-Assisted Engineering Certification</a>
</h5>
<span class="meta date">September 18, 2026</span>
</div>
</li>
<li><span class="icon event__type conference"></span>
<div class="qcon__detail">
<h5 class="heading">
<a rel="noreferrer noopener" href="https://certification.qconferences.com/ai-security-privacy?utm_source=infoq&utm_medium=referral&utm_campaign=footer_onlinecohortaisecurity26" target="_blank">Online InfoQ AI Security & Privacy Engineering Program</a>
</h5>
<span class="meta date">October 14, 2026</span>
</div>
</li>
<li><span class="icon event__type conference"></span>
<div class="qcon__detail">
<h5 class="heading">
<a rel="noreferrer noopener" href="https://qconsf.com/?utm_source=infoq&utm_medium=referral&utm_campaign=footer_qsf26" target="_blank">QCon San Francisco</a>
</h5>
<span class="meta date">November 16-20, 2026</span>
</div>
</li>
<li><span class="icon event__type conference"></span>
<div class="qcon__detail">
<h5 class="heading">
<a rel="noreferrer noopener" href="https://newyork.qcon.ai/?utm_source=infoq&utm_medium=referral&utm_campaign=footer_qainy26" target="_blank">QCon AI New York</a>
</h5>
<span class="meta date">December 15-16, 2026</span>
</div>
</li>
<li><span class="icon event__type conference"></span>
<div class="qcon__detail">
<h5 class="heading">
<a rel="noreferrer noopener" href="https://qconlondon.com/?utm_source=infoq&utm_medium=referral&utm_campaign=footer_qlondon27" target="_blank">QCon London 2027</a>
</h5>
<span class="meta date">April 13-16, 2027</span>
</div>
</li>
</ul>
</div>
<div data-col="1/4" class="footer__social-wrap">
<h4 class="heading text-left footer__heading">Follow us on </h4>
<div class="social__links columns social__links__row">
<a href="https://www.youtube.com/infoq"><span class="icon icon__large icon__social icon__youtube"></span><div><span class="social__count">Youtube</span><span class="social__followers">232K Followers</span></div></a>
<a href="http://www.linkedin.com/company/infoq"><span class="icon icon__large icon__social icon__linkedin"></span><div><span class="social__count">Linkedin</span><span class="social__followers">26K Followers</span></div></a>
<a rel="noreferrer noopener" href="https://www.instagram.com/infoqdotcom/" target="_blank"><span class="icon icon__large icon__social icon__instagram"></span><div><span class="social__count">Instagram</span><span class="social__followers">New</span></div></a>
<a href="#" id="footerNewsletterRssLink"><span class="icon icon__large icon__social icon__rss"></span><div><span class="social__count">RSS</span><span class="social__followers">19K Readers</span></div></a>
<a rel="noreferrer noopener" href="http://twitter.com/infoq" target="_blank"><span class="icon icon__large icon__social icon__twitter"></span><div><span class="social__count">X</span><span class="social__followers">57.1k Followers</span></div></a>
<a rel="noreferrer noopener" href="https://www.facebook.com/InfoQ-75911537320" target="_blank"><span class="icon icon__large icon__social icon__fb"></span><div><span class="social__count">Facebook</span><span class="social__followers">21K Likes</span></div></a>
<a rel="noreferrer noopener" href="https://bsky.app/profile/infoq.com" target="_blank"><span class="icon icon__large icon__social icon__bluesky"></span><div><span class="social__count">Bluesky</span><span class="social__followers">New</span></div></a>
</div>
</div>
<div data-col="1/4" class="footer__stayin-wrap">
<h4 class="heading text-left footer__heading">Stay in the know</h4>
<div class="stayIn_panel_container">
<a href="/podcasts/" class="stayIn_panel" target="_blank" rel="noreferrer noopener"><span>The InfoQ Podcast</span><picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QuanBnIiwiZWRpdHMiOiB7IndlYnAiOiB7ICJxdWFsaXR5Ijo4MH19fQ==" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QuanBnIiwiZWRpdHMiOiB7ImpwZWciOiB7ICJxdWFsaXR5Ijo4MH19fQ==" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QuanBnIiwiZWRpdHMiOiB7ImpwZWciOiB7ICJxdWFsaXR5Ijo4MH19fQ==" loading="lazy" width="65px" height="64px" alt="The InfoQ Podcast Logo - Stay in the know"></picture></a>
<a href="/podcasts/#engineering_culture" class="stayIn_panel" target="_blank" rel="noreferrer noopener"><span>Engineering Culture Podcast</span><picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QtZW5naW5lZXJpbmctY3VsdHVyZS5qcGciLCJlZGl0cyI6IHsid2VicCI6IHsgInF1YWxpdHkiOjgwfX19" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QtZW5naW5lZXJpbmctY3VsdHVyZS5qcGciLCJlZGl0cyI6IHsianBlZyI6IHsgInF1YWxpdHkiOjgwfX19" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QtZW5naW5lZXJpbmctY3VsdHVyZS5qcGciLCJlZGl0cyI6IHsianBlZyI6IHsgInF1YWxpdHkiOjgwfX19" loading="lazy" width="65px" height="64px" alt="Engineering Culture Podcast Logo - Stay in the knoww"></picture></a>
<a href="/software-architects-newsletter/" class="stayIn_panel" target="_blank" rel="noreferrer noopener"><span>The Software Architects' Newsletter</span><picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLWFyY2hpdGVjdC1uZXdzbGV0dGVyLmpwZyIsImVkaXRzIjogeyJ3ZWJwIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLWFyY2hpdGVjdC1uZXdzbGV0dGVyLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLWFyY2hpdGVjdC1uZXdzbGV0dGVyLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" loading="lazy" width="65px" height="64px" alt="The Software Architects' Newsletter Logo - Stay in the know"></picture></a>
</div>
</div>
</div>
</section>
<section data-nosnippet class="container footer__bottom section white align__left">
<div class="container__inner columns">
<div data-col="2/3" class="column">
<div class="footer__contact contact columns">
<span data-col="1/6">
General Feedback
<a href="mailto:feedback@infoq.com">feedback@infoq.com</a>
</span>
<span data-col="1/6">
Advertising
<a href="mailto:sales@infoq.com">sales@infoq.com</a>
</span>
<span data-col="1/6">
Editorial
<a href="mailto:editors@infoq.com">editors@infoq.com</a>
</span>
<span data-col="1/6">
Marketing
<a href="mailto:marketing@infoq.com">marketing@infoq.com</a>
</span>
</div>
</div>
<div class="column" data-col="1/3">
<p class="footer__more">
InfoQ.com and all content copyright &#169; 2006-2026 C4Media Inc.<br/>
<a href="/privacy-notice" target="_blank">Privacy Notice</a>, <a href="/terms-and-conditions " target="_blank">Terms And Conditions</a>, <a href="/cookie-policy " target="_blank">Cookie Policy</a>
</p>
</div>
</div>
</section>
</footer>
<!-- ####### SITE END ######### -->
</div>
<div class="intbt">
<a href="/int/bt/" title="bt">BT</a>
</div>
<script type="text/javascript">
$.when(humanDetectionAsync()).then(
function(status) {
$.getScript("/scripts/__hd.ifq?hdt=6KVPHph6HgFezr2a&ha=" + status);
}
);
</script>
<script type="text/javascript">
var pageFullyLoaded = false;
// this event is fired by frontend once all the necessary things have been done(mobile display, moving vcr boxes around when needed...)
infoq.event.on('loaded', function(e) {
pageFullyLoaded = true;
});
infoq.event.on('pageWidthChanged', function(e) {
// re-execute tracking vcr impressions when this event happens (it only happens when elements are added/removed from page)
// doTrackVcrImpressions takes into account the data-trk-impr="true" if =false the element was already tracked.
// this is needed when switching from mobile to desktop or when layout on mobile changes and desktop version is displayed. New elements become visible.
Tracker.safeExec(Tracker.doTrackVcrImpressions);
// these 2 need to be called also because we might be on a content page. In case we are not nothing happens
VCR.doTrackingCustomRightbar();
VCR.doTrackingCustomRightbarForPresentations()
});
//check to see if error page
if(window.device !== undefined) {
var intervalImpressions = setInterval(function() {
var shouldTrack = false;
// no vcr widgets on index pages
if(window.isIndexPage) {
if(window.sponsoredPodcastDone === undefined || window.sponsoredPodcastDone) {
shouldTrack = true;
}
} else
//on homepage, bottom widget + 2 native widgets
if(InfoQConstants.pageType == "HOMEPAGE" && window.finishedVcrOptional1 && window.finishedRelatedVcr && (window.finishedVcrOptional2 === undefined || window.finishedVcrOptional2)) {
shouldTrack = true;
} else
// rightbar widgets + native widgets + content vcr widgets
if((InfoQConstants.pageType == "NEWS_PAGE" || InfoQConstants.pageType == "ARTICLE_PAGE")
&& ((window.finishedRightbarVcr || window.finishedRightbarVcr === undefined) && window.contentVcrFinished)) {
shouldTrack = true;
} else if ((InfoQConstants.pageType == "PRESENTATION_PAGE")
&& (window.contentVcrFinished || window.contentVcrFinished === undefined)
&& (window.finishedRightbarVcr || window.finishedRightbarVcr === undefined)
) {
shouldTrack = true;
} else
// native widgets + content widgets
if(window.contentVcrFinished && (window.finishedVcrOptional1 || window.finishedVcrOptional1 === undefined)
&& (window.finishedVcrOptional2 || window.finishedVcrOptional2 === undefined)) {
shouldTrack = true;
}
// we start tracking only after the page is fully loaded, frontend signals that they finished everything related to page display.
if(shouldTrack && pageFullyLoaded) {
clearInterval(intervalImpressions);
Tracker.safeExec(Tracker.doTrackVcrImpressions);
// start tracking viewable impressions also only after everything is ready
function callbackRouter(entries, observer) {
var targets = new Array();
entries.forEach(function (entry) {
var target = entry.target;
if (target.dataset.trkView === 'false') return;
if (entry.intersectionRatio > 0) {
target.dataset.trkView = false;
targets.push(target);
}
});
Tracker.doTrackViewableImpressions(targets);
}
var elementsForTrackingViewableImpressions = document.querySelectorAll('[data-trk-view="true"]')
var observer = new IntersectionObserver(callbackRouter, { threshold: 0.3 });
elementsForTrackingViewableImpressions.forEach(observer.observe.bind(observer));
}
}, 500);
}
$(document).ready(function () {
// desktop notifications widget
Tracker.encodeNotificationLinks($(".f_notificationWidget"));
// mobile notifications widget
Tracker.encodeNotificationLinks($(".h_notifications"));
// desktop notifications page
Tracker.encodeNotificationLinks($(".notification-page"));
// mobile notifications page
Tracker.encodeNotificationLinks($(".notifications_page"));
});
</script>
<script type="text/javascript">
if(window.location.hash){
var hash = window.location.hash.substring(1);
if(hash == 'subscribe'){
$('html,body').animate({scrollTop: $('.ftxt3 > .newsletter').offset().top}, 'slow');
}
}
</script>
<script type="text/javascript">
var newsletterSubscriptionURL ='/newsletter/subscribe.action';
DynamicLinks.updateRssLinks('XnLuCjIf6z9BHCGZ6Nd4R76O32258ENr');
ContentSummary.setSelectedTab('en');
//when user enters the main content area show default topics in the topics bar
$("#content-wrapper").mouseenter(function() {
showDefaultTopics();
});
Bookmarks.contentTitle = "Resilience and Incident Management with Vanessa Huerta Granda";
Bookmarks.apiUrl = '/widgets/bookmark.action';
Bookmarks.isContentBookmarked = "false";
</script>
<script type="text/javascript">
var $buoop = {vs:{i:6,f:1,o:10.1,s:1}}
$buoop.ol = window.onload;
$(document).ready(function() {
try {if ($buoop.ol) $buoop.ol();}catch (e) {}
var e = document.createElement("script");
e.setAttribute("type", "text/javascript");
e.setAttribute("src", "https://cdn.infoq.com/statics_s2_20260910111657/scripts/lib/browser-update-org/update.js");
document.body.appendChild(e);
});
</script>
<script>
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window,document,'script',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '842388869148196');
fbq('track', 'PageView');
</script>
<noscript>
<img height="1" width="1" src="https://www.facebook.com/tr?id=842388869148196&ev=PageView&noscript=1"/>
</noscript>
<script type='text/javascript'>
try {
mixpanel.track('page viewed', {
'page name' : document.title,
'url' : window.location.pathname
});
}
catch(err) {
}
</script>
</body>
</html>
<!-- s2 -->