<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[LifeOfQA]]></title><description><![CDATA[5-minute testing notes, stories, and insights. No fluff.!]]></description><link>https://www.lifeofqa.com</link><image><url>https://substackcdn.com/image/fetch/$s_!7ABd!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png</url><title>LifeOfQA</title><link>https://www.lifeofqa.com</link></image><generator>Substack</generator><lastBuildDate>Tue, 05 May 2026 09:04:22 GMT</lastBuildDate><atom:link href="https://www.lifeofqa.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Deepak Karn]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[lifeofqa@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[lifeofqa@substack.com]]></itunes:email><itunes:name><![CDATA[Deepak Karn]]></itunes:name></itunes:owner><itunes:author><![CDATA[Deepak Karn]]></itunes:author><googleplay:owner><![CDATA[lifeofqa@substack.com]]></googleplay:owner><googleplay:email><![CDATA[lifeofqa@substack.com]]></googleplay:email><googleplay:author><![CDATA[Deepak Karn]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[When We Build, We Get Biased]]></title><description><![CDATA[Clear eyes beat crossed fingers. How creator attachment blinds us and how teams can catch it early.]]></description><link>https://www.lifeofqa.com/p/when-we-build-we-get-biased</link><guid isPermaLink="false">https://www.lifeofqa.com/p/when-we-build-we-get-biased</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Mon, 04 May 2026 09:08:08 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9bb543f1-000e-4167-a608-9339e715c448_1512x1006.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>There&#8217;s a belief that shows up in almost every team:</p><p><em>The person who built it is the best person to test it.</em></p><p>It sounds practical. Efficient. Even responsible.</p><p>Who else understands the system better? Who else knows the edge cases, the constraints, the intent?</p><p>But it carries a quiet assumption.</p><p>That understanding leads to objectivity.</p><p>It doesn&#8217;t.</p><div><hr></div><h2>The hidden mechanism</h2><p>When you build something, you don&#8217;t just write code.</p><p>You build a story.</p><p>You decide how it should behave. You resolve tradeoffs just enough to move forward. Over time, that story stabilizes. It starts to feel like reality.</p><p>And then it becomes your lens.</p><p>From that point on, you don&#8217;t see the system directly. You see your version of it.</p><p>The shift is subtle.</p><p>You stop asking, <em>&#8220;What could go wrong?&#8221;</em></p><p>You start thinking, <em>&#8220;This should work.&#8221;</em></p><p>That&#8217;s the moment bias enters.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Rev6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Rev6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 424w, https://substackcdn.com/image/fetch/$s_!Rev6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 848w, https://substackcdn.com/image/fetch/$s_!Rev6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 1272w, https://substackcdn.com/image/fetch/$s_!Rev6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Rev6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png" width="1456" height="966" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:966,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1803870,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/196396867?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Rev6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 424w, https://substackcdn.com/image/fetch/$s_!Rev6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 848w, https://substackcdn.com/image/fetch/$s_!Rev6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 1272w, https://substackcdn.com/image/fetch/$s_!Rev6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0082eca1-167c-4f89-860a-4f900633965c_1516x1006.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Because now, if something breaks, it&#8217;s not just the system that&#8217;s wrong.</p><p>It&#8217;s you.</p><div><hr></div><h2>A real scenario</h2><p>A team had just finished a new checkout flow.</p><p>The developer who built it walked me through the feature. Clean structure. Edge cases handled. Logging in place.</p><p>He ran through a few scenarios.</p><p>Everything passed.</p><p>He leaned back. &#8220;Looks solid.&#8221;</p><p>Then, almost under his breath: &#8220;Unless I&#8217;m missing something.&#8221;</p><p>He was.</p><p>Later that day, during exploratory testing, we found a pricing issue.</p><p>Switch currency mid-session. Apply a discount code. The total became inconsistent.</p><p>A real user could hit it in minutes.</p><p>No crash. No error. Just the wrong price.</p><p>That&#8217;s the kind of bug that quietly costs money and trust.</p><p>He didn&#8217;t miss it because he lacked skill.</p><p>He missed it because he followed the path he designed.</p><p>We didn&#8217;t.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bHNE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bHNE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 424w, https://substackcdn.com/image/fetch/$s_!bHNE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 848w, https://substackcdn.com/image/fetch/$s_!bHNE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!bHNE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bHNE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png" width="1264" height="1008" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1008,&quot;width&quot;:1264,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1596666,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/196396867?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bHNE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 424w, https://substackcdn.com/image/fetch/$s_!bHNE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 848w, https://substackcdn.com/image/fetch/$s_!bHNE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!bHNE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2e96bf-0c99-4dd7-b104-b5e0be398a86_1264x1008.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>The frame shift</h2><p>Here&#8217;s the shift that matters:</p><p><em>Expertise narrows your search space. Testing needs you to widen it again.</em></p><p>Clarity helps you build.</p><p>It can blind you when you evaluate.</p><p>Testing needs someone willing to say, &#8220;I don&#8217;t trust this yet,&#8221; even when everything looks clean.</p><p>Not out of cynicism.</p><p>Out of respect for how systems behave outside our intent.</p><div><hr></div><h2>What this looks like in practice</h2><p>Watch someone test their own work.</p><p>They follow intended flows, use expected data, and confirm outcomes that match design. When it passes, there&#8217;s a quiet relief.</p><p>That relief is the tell. The goal wasn&#8217;t just learning. It was confirmation.</p><p>On one team, we made this visible.</p><p>Developers tested their own features first.</p><p>Then someone else explored the same feature with no prior context.</p><p>We compared findings.</p><p>Developers caught setup issues and obvious failures quickly.</p><p>Testers found inconsistencies, confusing flows, and state problems that didn&#8217;t break the system but broke understanding.</p><p>The overlap was small.</p><p>Different lenses. Different risks uncovered.</p><div><hr></div><h2>The core assumption</h2><p>The assumption underneath all of this is simple:</p><p><em>If I understand the system deeply, I can test it thoroughly.</em></p><p>Understanding helps you explain.</p><p>Testing requires you to question.</p><p>And questioning your own work is harder than it sounds.</p><p>Because now your judgment is involved.</p><p>If something fails, it means you missed something.</p><p>If behavior is unclear, it means your design wasn&#8217;t as clear as you thought.</p><p>Most people don&#8217;t explore well under those conditions.</p><p>So the brain protects you.</p><p>&#8220;It&#8217;s probably fine.&#8221;</p><p>&#8220;Users won&#8217;t do that.&#8221;</p><p>&#8220;I already tested this.&#8221;</p><p>Those aren&#8217;t technical conclusions.</p><p>They&#8217;re self-defense.</p><div><hr></div><h2>The tension we avoid</h2><p>Now hold two things at once:</p><p>The builder understands the system better than anyone.</p><p>The builder is also the easiest person to mislead.</p><p>So who do you trust?</p><p>The one who knows the most?</p><p>Or the one who doubts the most?</p><p>You don&#8217;t resolve this by choosing.</p><p>You resolve it by designing for both.</p><p>Let builders test. Their insight matters.</p><p>But don&#8217;t let that be the final word.</p><p>Bring in someone who doesn&#8217;t share the same story.</p><p>Someone who is still allowed to be confused.</p><p>That confusion is not a weakness.</p><p>It&#8217;s signal.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7ZGZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 424w, https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 848w, https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 1272w, https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png" width="1456" height="965" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:965,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1744861,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/196396867?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 424w, https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 848w, https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 1272w, https://substackcdn.com/image/fetch/$s_!7ZGZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b3bb2-2c65-41b0-b2dd-17534572390c_1518x1006.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>At a team level, this compounds. Shared ownership can quietly turn into shared blind spots when everyone buys into the same story.</p><div><hr></div><h2>Practical application</h2><p>You don&#8217;t need a new process.</p><p>You need clearer intent.</p><h3>1. Separate confirmation from testing</h3><p>Let builders verify their work. Call it confirmation.</p><p>Then create a second step focused on exploration by someone else.</p><p>Different goal. Different mindset.</p><div><hr></div><h3>2. Bring in fresh eyes earlier</h3><p>Don&#8217;t wait until something is &#8220;done.&#8221;</p><p>Invite another perspective while the feature is still forming.</p><p>Misunderstandings at this stage are valuable. They expose assumptions before they harden.</p><div><hr></div><h3>3. Listen to the language</h3><p>Bias leaks through words:</p><p>&#8220;This should work.&#8221;<br>&#8220;It&#8217;s probably fine.&#8221;<br>&#8220;Users won&#8217;t do that.&#8221;</p><p>Pause when you hear them.</p><p>Ask: <em>What did we actually observe?</em></p><div><hr></div><h2>Closing</h2><p>Testing is not about proving that what we built works.</p><p>It&#8217;s about discovering how it behaves.</p><p>And discovery requires distance.</p><p>Not from the team.</p><p>From the story we told ourselves while building.</p><p>Because the moment we start hoping our work will pass, we stop seeing clearly.</p><p>Clear eyes beat crossed fingers.</p><p>And quality begins when we&#8217;re willing to see our own work without defending it.</p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;c758c690-b3b0-4cf1-9a70-be71779fd9c8&quot;,&quot;caption&quot;:&quot;Most testers say they test features.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Are You Testing Features or Testing Decisions?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-02-16T06:42:25.886Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0bd0376e-c373-4d0a-814d-ae29a3821b5c_1530x1000.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/are-you-testing-features-or-testing&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:188108136,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;287d666b-f49b-45d0-a6a4-9cc7abd2212b&quot;,&quot;caption&quot;:&quot;Most automation suites don&#8217;t protect products.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;When Automation Creates Confidence Instead of Safety&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-01-30T05:42:47.039Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/135f7ba0-fc31-43cb-b846-62aaa19418ea_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/when-automation-creates-confidence&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:186181482,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/when-we-build-we-get-biased/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/when-we-build-we-get-biased/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p>]]></content:encoded></item><item><title><![CDATA[Releases Don’t Fail Where You Expect]]></title><description><![CDATA[Releases fail in unexpected ways. Learn how to prioritize testing, focus on system risks, and make better decisions under uncertainty.]]></description><link>https://www.lifeofqa.com/p/releases-dont-fail-where-you-expect</link><guid isPermaLink="false">https://www.lifeofqa.com/p/releases-dont-fail-where-you-expect</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Fri, 20 Mar 2026 07:53:02 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/35456c86-2373-4c4f-bf35-9d6f10a71fbd_1690x1116.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We never have enough time.</p><p>Not enough time to run everything.<br>Not enough time to check every edge case.<br>Not enough time to feel fully confident.</p><p>Yet releases still go out.</p><p>So the real question is not:</p><blockquote><p>&#8220;Did we test everything?&#8221;</p></blockquote><p>It&#8217;s:</p><blockquote><p><strong>&#8220;What are we choosing not to test and are we okay with that?&#8221;</strong></p></blockquote><div><hr></div><h2>A Release That &#8220;Passed&#8221; And Still Failed</h2><p>I&#8217;ve seen a release where everything looked fine.</p><ul><li><p>Tests passed</p></li><li><p>Automation was green</p></li><li><p>No major issues reported</p></li></ul><p>From the outside, it looked ready.</p><p>But after release, alerts stopped showing up correctly.</p><p>Nothing crashed. Nothing obvious broke.<br>But the system stopped telling us what was wrong.</p><p>And it took time before anyone noticed.</p><p>By then, we were not just dealing with a bug.<br>We were dealing with a period where the system was effectively blind.</p><p>What caused it?</p><p>A backend change that didn&#8217;t directly touch alerts.<br>But it affected how data moved through the system.</p><p>We tested the change.</p><p>We didn&#8217;t test what depended on it.</p><div><hr></div><h2>Changes Don&#8217;t Break Where You Expect</h2><p>Most teams think like this:</p><blockquote><p>&#8220;We changed X, so test X.&#8221;</p></blockquote><p>That&#8217;s how things slip through.</p><p>Because systems don&#8217;t fail in isolation.</p><p>They fail in connections.</p><ul><li><p>A database change affects alerts</p></li><li><p>A policy change affects endpoint behavior</p></li><li><p>A UI change hides critical signals</p></li></ul><p>The failure rarely sits where the code changed.</p><p>It shows up where nobody looked.</p><div><hr></div><h2>What Actually Matters in a Release</h2><p>I don&#8217;t start with test cases.</p><p>I start with one question:</p><blockquote><p><strong>If this breaks, does the product still make sense?</strong></p></blockquote><p>That answer is different for every system.</p><p>Sometimes it&#8217;s visibility.<br>Sometimes it&#8217;s control.<br>Sometimes it&#8217;s the ability to act when something goes wrong.</p><p>There is no fixed list.</p><p>And that&#8217;s where most teams struggle.</p><p>Because this requires judgment, not templates.</p><div><hr></div><h2>Most Teams Don&#8217;t Lack Time</h2><p>They lack judgment.</p><p>I&#8217;ve seen teams run hundreds of tests and still miss critical failures.</p><p>Not because they were careless.</p><p>Because they were busy proving things work<br>instead of asking where they might fail.</p><div><hr></div><h2>Automation Can Quietly Mislead You</h2><p>Automation gives speed.</p><p>It also makes it easier to believe things are fine.</p><p>I&#8217;ve seen:</p><ul><li><p>Green pipelines while critical workflows were broken</p></li><li><p>Stable suites that never exercised real risk</p></li><li><p>Passing tests that checked the wrong thing</p></li></ul><p>The problem wasn&#8217;t the tool.</p><p>It was trusting the signal without questioning it.</p><div><hr></div><h2>The Hard Part Nobody Talks About</h2><p>At some point in every release, you feel it:</p><blockquote><p>&#8220;This part worries me.&#8221;</p></blockquote><p>And saying that out loud is not easy.</p><p>Because it comes with consequences:</p><ul><li><p>It can delay a release</p></li><li><p>It can create conflict</p></li><li><p>It can turn out to be wrong</p></li></ul><p>So instead, teams hide behind passing tests.</p><p>It&#8217;s safer to say &#8220;everything passed&#8221;<br>than to say &#8220;something feels off.&#8221;</p><div><hr></div><h2>A Simple Rule I Follow</h2><blockquote><p><strong>Test the system, not just the change.</strong></p></blockquote><p>Because releases don&#8217;t fail in the code you touched.</p><p>They fail in the parts you assumed were safe.</p><div><hr></div><h2>Final Thought</h2><p>A release is not a testing problem.</p><p>It&#8217;s a decision under uncertainty.</p><p>And every test you run, or don&#8217;t run, is part of that decision.</p><p>The question is:</p><blockquote><p><strong>Are you choosing intentionally, or just executing what&#8217;s in front of you?</strong></p></blockquote><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;8e6f6e99-6c50-4cf1-9134-3d8eda4f3c84&quot;,&quot;caption&quot;:&quot;Most testers say they test features.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Are You Testing Features or Testing Decisions?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-02-16T06:42:25.886Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0bd0376e-c373-4d0a-814d-ae29a3821b5c_1530x1000.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/are-you-testing-features-or-testing&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:188108136,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;65d01ee0-3616-40c2-8819-496518b8d95c&quot;,&quot;caption&quot;:&quot;Most automation suites don&#8217;t protect products.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;When Automation Creates Confidence Instead of Safety&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-01-30T05:42:47.039Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/135f7ba0-fc31-43cb-b846-62aaa19418ea_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/when-automation-creates-confidence&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:186181482,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/releases-dont-fail-where-you-expect/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/releases-dont-fail-where-you-expect/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[When They Can Deal With Not Knowing]]></title><description><![CDATA[Most onboarding looks successful.]]></description><link>https://www.lifeofqa.com/p/when-they-can-deal-with-not-knowing</link><guid isPermaLink="false">https://www.lifeofqa.com/p/when-they-can-deal-with-not-knowing</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Thu, 19 Mar 2026 08:53:21 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/0fc0b4a6-0903-4ab1-98ef-eb8161678628_1518x1016.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Most onboarding looks successful.</p><p>New testers complete tasks.<br>They run test cases.<br>They close bugs.</p><p>Everything appears to work.</p><p>The failure shows up later.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Sq43!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Sq43!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 424w, https://substackcdn.com/image/fetch/$s_!Sq43!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 848w, https://substackcdn.com/image/fetch/$s_!Sq43!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 1272w, https://substackcdn.com/image/fetch/$s_!Sq43!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Sq43!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png" width="520" height="520.9471766848816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1100,&quot;width&quot;:1098,&quot;resizeWidth&quot;:520,&quot;bytes&quot;:1672732,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/186843299?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Sq43!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 424w, https://substackcdn.com/image/fetch/$s_!Sq43!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 848w, https://substackcdn.com/image/fetch/$s_!Sq43!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 1272w, https://substackcdn.com/image/fetch/$s_!Sq43!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b8ad175-5669-43c9-8ab4-7731867f0b85_1098x1100.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The moment something unclear happens and the team slows down because nobody knows where to start.</p><p>People wait:</p><ul><li><p>for test cases</p></li><li><p>for steps</p></li><li><p>for someone to decide what matters</p></li></ul><p>That delay isn&#8217;t a skill issue.</p><p>It&#8217;s an onboarding outcome.</p><p>People were trained to follow structure, not act without it.</p><p>I don&#8217;t onboard that way.</p><p>I onboard people into real problems where structure is missing.</p><div><hr></div><h2>I don&#8217;t start with the product</h2><p>I start with the person.</p><p>Not formal interviews. Just direct questions:</p><p>&#8226; What have you tested before?<br>&#8226; What do you do when you don&#8217;t understand a system?<br>&#8226; What usually confuses you?<br>&#8226; Where do you hesitate?</p><p>The answers are rarely technical.</p><p>One engineer told me:</p><blockquote><p>&#8220;If there&#8217;s no test case, I don&#8217;t know where to begin.&#8221;</p></blockquote><p>Another said:</p><blockquote><p>&#8220;I avoid APIs unless someone guides me.&#8221;</p></blockquote><p>That&#8217;s not just skill.</p><p>That&#8217;s dependency.</p><p>From there, I adjust:</p><ul><li><p>some need constraint</p></li><li><p>some need freedom</p></li></ul><p>All need to face situations where the next step isn&#8217;t obvious.</p><div><hr></div><h2>I give them real problems, not safe ones</h2><p>No sandbox.<br>No fake bugs.</p><p>Something like:</p><blockquote><p>&#8220;This endpoint has been unstable since the last release.<br>Figure out what&#8217;s going on.&#8221;</p></blockquote><p>No steps.<br>No hints.</p><p>Most people don&#8217;t start testing.</p><p>They pause.</p><p>They look for structure that isn&#8217;t there.<br>They search for test cases that don&#8217;t exist.</p><p>That hesitation matters.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ACAs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ACAs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 424w, https://substackcdn.com/image/fetch/$s_!ACAs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 848w, https://substackcdn.com/image/fetch/$s_!ACAs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 1272w, https://substackcdn.com/image/fetch/$s_!ACAs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ACAs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png" width="584" height="381.84615384615387" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:952,&quot;width&quot;:1456,&quot;resizeWidth&quot;:584,&quot;bytes&quot;:2167842,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/186843299?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ACAs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 424w, https://substackcdn.com/image/fetch/$s_!ACAs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 848w, https://substackcdn.com/image/fetch/$s_!ACAs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 1272w, https://substackcdn.com/image/fetch/$s_!ACAs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094e730b-a771-4d45-b768-7bfc2c346557_1674x1094.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>So I ask:</p><blockquote><p>&#8220;If nobody helped you, what would you try?&#8221;</p></blockquote><p>Some change inputs.<br>Some check logs.<br>Some compare UI and API.<br>Some retry without direction.</p><p>Some actions help. Some don&#8217;t.</p><p>What matters is how they proceed when nothing is defined.</p><div><hr></div><h2>This is where thinking starts forming</h2><p>Testing is not following instructions.</p><p>It is learning about a system when things are unclear.</p><p>I introduce simple prompts:</p><p>&#8226; What inputs could break this?<br>&#8226; Where does this data go next?<br>&#8226; What happens when values are extreme or missing?<br>&#8226; Where could this fail without anyone noticing?</p><p>Not as rules.</p><p>As ways to look deeper.</p><p>For example, one engineer was testing a profile update API.</p><p>They tried valid inputs. Everything worked.</p><p>So I asked:</p><blockquote><p>&#8220;What happens if age is -1?&#8221;</p></blockquote><p>They tried it.</p><p>The API accepted it.</p><p>No error. No validation.</p><p>We followed the data:</p><ul><li><p>profile service stored it</p></li><li><p>analytics pipeline consumed it</p></li><li><p>reports showed invalid demographics</p></li></ul><p>Now the issue wasn&#8217;t &#8220;missing validation.&#8221;</p><p>It was:</p><blockquote><p>bad data quietly spreading across systems</p></blockquote><p>Same endpoint.</p><p>Different understanding.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CP_X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CP_X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 424w, https://substackcdn.com/image/fetch/$s_!CP_X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 848w, https://substackcdn.com/image/fetch/$s_!CP_X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 1272w, https://substackcdn.com/image/fetch/$s_!CP_X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CP_X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png" width="1456" height="967" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:967,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1351002,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/186843299?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CP_X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 424w, https://substackcdn.com/image/fetch/$s_!CP_X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 848w, https://substackcdn.com/image/fetch/$s_!CP_X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 1272w, https://substackcdn.com/image/fetch/$s_!CP_X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c57dd46-fd0e-49b1-aaab-5f4dcbf4aab3_1496x994.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>After each session, I ask:</p><blockquote><p>&#8220;What would you try first if this was a new system?&#8221;</p></blockquote><p>Over time, answers change:</p><ul><li><p>from actions to reasoning</p></li><li><p>from steps to patterns</p></li></ul><div><hr></div><h2>A moment that changes how they see risk</h2><p>A new engineer once tested a payment flow and said:</p><blockquote><p>&#8220;Works fine.&#8221;</p></blockquote><p>I asked:</p><blockquote><p>&#8220;Who gets hurt if this is wrong?&#8221;</p></blockquote><p>We walked through it:</p><ul><li><p>double charges</p></li><li><p>partial refunds</p></li><li><p>delayed confirmations</p></li><li><p>wrong currency handling</p></li><li><p>retries creating duplicate transactions</p></li></ul><p>You could see the shift happen.</p><p>The next time they came back with:</p><blockquote><p>&#8220;What if confirmation times out, but payment succeeds?&#8221;</p></blockquote><p>That shift matters more than any checklist.</p><div><hr></div><h2>Where this breaks (and how I adjust)</h2><p>This approach doesn&#8217;t always land cleanly.</p><p>One engineer struggled for days.</p><p>They kept asking:</p><ul><li><p>&#8220;What exactly should I test?&#8221;</p></li><li><p>&#8220;Which cases do you want?&#8221;</p></li><li><p>&#8220;Is this enough?&#8221;</p></li></ul><p>At one point they said:</p><blockquote><p>&#8220;I feel like I&#8217;m doing nothing right.&#8221;</p></blockquote><p>The problem wasn&#8217;t lack of effort.</p><p>They couldn&#8217;t move without direction.</p><p>So I adjusted:</p><ul><li><p>narrowed the problem</p></li><li><p>increased feedback</p></li><li><p>made my thinking visible</p></li></ul><p>They didn&#8217;t need easier work.</p><p>They needed help seeing how to move through it.</p><div><hr></div><h2>They join real decisions early</h2><p>Not after onboarding. During it.</p><p>Bug triage. Scope discussions. Release decisions.</p><p>At first, they stay quiet.</p><p>So I ask:</p><p>&#8226; Which issue worries you most?<br>&#8226; Which one could affect the most users?<br>&#8226; What feels unclear here?</p><p>Sometimes they&#8217;re wrong.</p><p>That&#8217;s useful.</p><p>We break it down:</p><ul><li><p>why some issues matter more</p></li><li><p>how timing changes impact</p></li><li><p>why business flow matters more than surface behavior</p></li></ul><p>That&#8217;s how judgment develops.</p><div><hr></div><h2>Reflection is where patterns become visible</h2><p>Every engineer tracks:</p><p>&#8226; what confused them<br>&#8226; what they missed<br>&#8226; what surprised them<br>&#8226; what they&#8217;d try next time</p><p>But the value isn&#8217;t in writing it down.</p><p>It&#8217;s in what we notice.</p><p>One engineer kept missing data flow issues.</p><p>They focused only on UI behavior.</p><p>We saw the pattern after a few sessions.</p><p>So the next task forced them to trace requests across services.</p><p>Same product.</p><p>Different focus.</p><p>That&#8217;s when improvement became visible.</p><div><hr></div><h2>How I know it&#8217;s working</h2><p>Not when tasks are completed.</p><p>When behavior changes.</p><p>&#8226; They ask better questions before testing<br>&#8226; They connect bugs to user impact<br>&#8226; They notice failures that don&#8217;t show clearly<br>&#8226; They explain risk, not just behavior<br>&#8226; They challenge assumptions in discussions</p><p>That&#8217;s the signal.</p><p>Not knowledge.</p><p>Not tools.</p><p>Thinking.</p><div><hr></div><h2>Final words</h2><p>Most onboarding prepares people for clear situations.</p><p>Real work isn&#8217;t clear.</p><p>So when something unexpected happens, teams slow down.</p><p>People wait.</p><p>Not because they lack ability.</p><p>Because they were trained to depend on structure.</p><p>You don&#8217;t see the difference during onboarding.</p><p>You see it the first time something breaks and nobody tells them what to do.</p><p>Some people wait.</p><p>Some people start.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9tZ0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9tZ0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 424w, https://substackcdn.com/image/fetch/$s_!9tZ0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 848w, https://substackcdn.com/image/fetch/$s_!9tZ0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 1272w, https://substackcdn.com/image/fetch/$s_!9tZ0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9tZ0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png" width="1456" height="952" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:952,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1977230,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/186843299?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9tZ0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 424w, https://substackcdn.com/image/fetch/$s_!9tZ0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 848w, https://substackcdn.com/image/fetch/$s_!9tZ0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 1272w, https://substackcdn.com/image/fetch/$s_!9tZ0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36bf3dba-eb42-4a05-a04c-f7470cdf9fbb_1628x1064.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Onboarding decides which one you get.</p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><p></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;9a61d09c-4f30-44dc-ab4c-e456b9d602f1&quot;,&quot;caption&quot;:&quot;Most testers say they test features.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Are You Testing Features or Testing Decisions?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-02-16T06:42:25.886Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0bd0376e-c373-4d0a-814d-ae29a3821b5c_1530x1000.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/are-you-testing-features-or-testing&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:188108136,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;0146f29e-2baf-47cc-a7e8-180486835176&quot;,&quot;caption&quot;:&quot;Most automation suites don&#8217;t protect products.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;When Automation Creates Confidence Instead of Safety&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-01-30T05:42:47.039Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/135f7ba0-fc31-43cb-b846-62aaa19418ea_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/when-automation-creates-confidence&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:186181482,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;b7b56e7c-9899-41fa-a744-6475da75fcbe&quot;,&quot;caption&quot;:&quot;How Long Will Testing Take?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Long Will Testing Take?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-17T06:48:27.604Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17307a03-4193-4fdb-81b6-1f2f412f2496_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-long-will-testing-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:181785640,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/when-they-can-deal-with-not-knowing/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/when-they-can-deal-with-not-knowing/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Are You Testing Features or Testing Decisions?]]></title><description><![CDATA[Most testers say they test features.]]></description><link>https://www.lifeofqa.com/p/are-you-testing-features-or-testing</link><guid isPermaLink="false">https://www.lifeofqa.com/p/are-you-testing-features-or-testing</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Mon, 16 Feb 2026 06:42:25 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/0bd0376e-c373-4d0a-814d-ae29a3821b5c_1530x1000.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Most testers say they test features.</p><p>Few realize they are testing the consequences of decisions.</p><p>That difference changes what you look at, when you speak, and how much risk you are willing to carry professionally.</p><p>Because every feature is built on choices.</p><p>Thresholds. Assumptions. Trade-offs. Risk tolerance.</p><p>If you only test behavior, you confirm execution.</p><p>If you test consequences, you surface exposure.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ESyY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ESyY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 424w, https://substackcdn.com/image/fetch/$s_!ESyY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 848w, https://substackcdn.com/image/fetch/$s_!ESyY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 1272w, https://substackcdn.com/image/fetch/$s_!ESyY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ESyY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png" width="728" height="477" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:954,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:2473435,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/188108136?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ESyY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 424w, https://substackcdn.com/image/fetch/$s_!ESyY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 848w, https://substackcdn.com/image/fetch/$s_!ESyY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 1272w, https://substackcdn.com/image/fetch/$s_!ESyY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb0b1585-8d73-4b1c-bdfb-3f242f3e872e_1530x1002.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>The Login That Worked Until It Didn&#8217;t</h2><p>We had a login flow:</p><ul><li><p>Username</p></li><li><p>Password</p></li><li><p>Six failed attempts allowed</p></li><li><p>Five minute lockout</p></li><li><p>Generic error message</p></li></ul><p>Everything behaved correctly.</p><p>Tests passed.<br>Automation passed.<br>Release went live.</p><p>Two months later, thousands of accounts began locking.</p><p>Attackers were rotating IPs and spraying login attempts across accounts.</p><p>Six attempts per account meant nothing under distributed attack.</p><p>The lockout mechanism became a denial-of-service tool.</p><p>Users were blocked from their own accounts.<br>Support queues exploded.<br>Revenue dipped.</p><p>Nothing was broken.</p><p>The decision failed under real conditions.</p><p>That incident permanently changed how I test.</p><div><hr></div><h2>Feature Testing vs Decision Testing</h2><p>Feature testing asks:</p><ul><li><p>Does it lock after six attempts?</p></li><li><p>Does it unlock after five minutes?</p></li><li><p>Does the error display?</p></li></ul><p>Decision testing asks:</p><ul><li><p>What behavior does this threshold assume?</p></li><li><p>What breaks that assumption?</p></li><li><p>Who absorbs the cost if we&#8217;re wrong?</p></li><li><p>What new risk does the safeguard itself create?</p></li></ul><p>This is not about judging intelligence.</p><p>It is about mapping consequences.</p><p>Sometimes a decision is careless.<br>Sometimes it is a trade-off.<br>Sometimes it reflects deadline pressure or conversion goals.</p><p>Testing reveals impact.</p><div><hr></div><h2>When Does a Decision &#8220;Fail&#8221;?</h2><p>This is where thinking gets serious.</p><p>A decision does not fail because code misbehaves.</p><p>A decision &#8220;fails&#8221; when stakeholders decide its consequences are no longer acceptable.</p><p>That threshold is not technical.<br>It is economic.<br>It is political.<br>It is contextual.</p><p>For example:</p><p>If 2 percent of users locked out is acceptable friction, the system is fine.</p><p>If 8 percent locked out triggers churn, refunds, and reputational damage, the same system is now unacceptable.</p><p>There is no objective failure line.</p><p>There is stakeholder tolerance.</p><p>And that tolerance shifts.</p><p>Testing decisions means clarifying those tolerances before reality forces the issue.</p><div><hr></div><h2>Modeling Is Not a Ritual</h2><p>You will hear advice like:</p><ul><li><p>Identify assumptions</p></li><li><p>Consider worst cases</p></li><li><p>Estimate impact</p></li></ul><p>These are not steps.</p><p>They are lenses.</p><p>You use them when risk justifies depth.</p><p>Serious modeling means asking:</p><p>Where is attempt count stored?<br>Per account? Per IP?<br>Is aggregation possible?<br>How many attempts per hour become feasible?<br>What is the probability of lockout amplification?<br>What percentage of users could be blocked during an attack wave?</p><p>Then you ask:</p><p>What percentage is acceptable?</p><p>Who decides that?</p><p>Product?<br>Security?<br>Finance?</p><p>Often they have different answers.</p><p>That tension is real.</p><div><hr></div><h2>Collaboration Is Not Automatic</h2><p>If you wait until after implementation to ask &#8220;Why six?&#8221;, you are late.</p><p>These questions belong in:</p><ul><li><p>Refinement sessions</p></li><li><p>Design discussions</p></li><li><p>Threat modeling conversations</p></li><li><p>Pairing sessions</p></li></ul><p>But here is the uncomfortable part:</p><p>You may not be invited.</p><p>So what do you do?</p><p>You create entry points.</p><p>Instead of saying:<br>&#8220;I want to review the design.&#8221;</p><p>Try:<br>&#8220;What user behavior are we most worried about here?&#8221;<br>&#8220;What would make this solution expensive for us later?&#8221;<br>&#8220;What assumptions are we making about misuse?&#8221;</p><p>Bring previous production incidents to the conversation.</p><p>Say:<br>&#8220;We saw lockouts become denial-of-service last quarter. How are we preventing that here?&#8221;</p><p>Now you are adding context, not friction.</p><p>That earns invitations.</p><div><hr></div><h2>Whole-Team Responsibility</h2><p>Testing decisions is not the tester&#8217;s private activity.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6XQW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6XQW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 424w, https://substackcdn.com/image/fetch/$s_!6XQW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 848w, https://substackcdn.com/image/fetch/$s_!6XQW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 1272w, https://substackcdn.com/image/fetch/$s_!6XQW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6XQW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png" width="1456" height="946" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:946,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2373070,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/188108136?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6XQW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 424w, https://substackcdn.com/image/fetch/$s_!6XQW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 848w, https://substackcdn.com/image/fetch/$s_!6XQW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 1272w, https://substackcdn.com/image/fetch/$s_!6XQW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c5b446c-d066-460e-b47e-b42bbfcf4d1a_1524x990.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Developers test decisions when they question architecture limits.<br>Product tests decisions when they weigh conversion against risk.<br>Security tests decisions when they simulate attack patterns.</p><p>Your role is often to connect these views.</p><p>To ask the awkward question early.</p><p>To make invisible trade-offs visible.</p><p>Quality is shared ownership.</p><p>But someone still has to raise the uncomfortable scenario.</p><div><hr></div><h2>Skill Building: The Actual Path</h2><p>You do not wake up able to test decisions well.</p><p>You build it.</p><p>Concrete actions:</p><ul><li><p>Sit in architecture reviews even when confused.</p></li><li><p>Read incident reports from your company and others.</p></li><li><p>Pair with backend engineers to understand state storage.</p></li><li><p>Learn basic probability so you can reason about impact ranges.</p></li><li><p>Ask &#8220;why&#8221; about thresholds until you understand business reasoning.</p></li><li><p>Study past failures. Not just your own.</p></li></ul><p>This is apprenticeship.</p><p>Decision testing grows from exposure.</p><div><hr></div><h2>When Stakeholders Don&#8217;t Want to Know</h2><p>You raise a quantified concern.</p><p>The answer is:<br>&#8220;We ship on Friday.&#8221;</p><p>Now what?</p><p>You have options:</p><ul><li><p>Document the risk clearly in writing.</p></li><li><p>Propose a smaller mitigation that fits the timeline.</p></li><li><p>Escalate if exposure is severe.</p></li><li><p>Align with security or another engineer who shares concern.</p></li><li><p>Accept the decision and move forward.</p></li></ul><p>Sometimes you escalate and win.</p><p>Sometimes you escalate and lose.</p><p>Sometimes you become &#8220;the negative one.&#8221;</p><p>Sometimes your contract is not renewed.</p><p>This is the cost side of serious testing.</p><p>Not every organization rewards risk fluency.</p><p>You must decide how much professional risk you are willing to carry.</p><div><hr></div><h2>What If You&#8217;re Wrong?</h2><p>You model a worst case.<br>It never happens.</p><p>Good.</p><p>Testing works under uncertainty.</p><p>You are not predicting the future.</p><p>You are identifying plausible exposure.</p><p>If your scenario does not materialize:</p><ul><li><p>Was probability low?</p></li><li><p>Was mitigation added quietly?</p></li><li><p>Did your model overestimate likelihood?</p></li></ul><p>Refine your judgment.</p><p>Credibility comes from being transparent about uncertainty.</p><p>Not from being dramatic.</p><div><hr></div><h2>Recognizing When You&#8217;re Ignored</h2><p>There is a difference between timing and dismissal.</p><p>If stakeholders ask follow-up questions, they are processing.</p><p>If they restate your concern in their own words, they are listening.</p><p>If they change topic without acknowledgment, you are being dismissed.</p><p>When dismissal happens repeatedly, you have information about culture.</p><p>That matters for your career decisions.</p><div><hr></div><h2>The Reality</h2><p>Feature-focused testing reduces defects.</p><p>Decision-focused testing reduces surprise.</p><p>Feature testing confirms behavior.</p><p>Decision testing clarifies exposure.</p><p>Both matter.</p><p>But if you want to influence outcomes, you must move beyond verifying that something works.</p><p>Ask what happens because it works this way.</p><p>Then decide how far you are willing to go to make that visible.</p><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;60f8b33d-ec89-4d17-9777-620f937b28a0&quot;,&quot;caption&quot;:&quot;Most automation suites don&#8217;t protect products.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;When Automation Creates Confidence Instead of Safety&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-01-30T05:42:47.039Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/135f7ba0-fc31-43cb-b846-62aaa19418ea_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/when-automation-creates-confidence&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:186181482,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;947383cd-fbbc-4f0c-a58e-bbbd340af464&quot;,&quot;caption&quot;:&quot;How Long Will Testing Take?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Long Will Testing Take?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-17T06:48:27.604Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17307a03-4193-4fdb-81b6-1f2f412f2496_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-long-will-testing-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:181785640,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;fe541d61-6fed-444b-b686-74f38638230a&quot;,&quot;caption&quot;:&quot;For a long time, restraint felt like growth.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;When Restraint Failed Me&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-01-28T08:06:50.469Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7cebd4e8-30dc-4490-965f-da0866b301ec_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/when-restraint-failed-me&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:186054827,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/are-you-testing-features-or-testing/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/are-you-testing-features-or-testing/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[When Automation Creates Confidence Instead of Safety]]></title><description><![CDATA[Most automation suites don&#8217;t protect products.]]></description><link>https://www.lifeofqa.com/p/when-automation-creates-confidence</link><guid isPermaLink="false">https://www.lifeofqa.com/p/when-automation-creates-confidence</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Fri, 30 Jan 2026 05:42:47 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/135f7ba0-fc31-43cb-b846-62aaa19418ea_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FJQ6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FJQ6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 424w, https://substackcdn.com/image/fetch/$s_!FJQ6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 848w, https://substackcdn.com/image/fetch/$s_!FJQ6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 1272w, https://substackcdn.com/image/fetch/$s_!FJQ6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FJQ6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png" width="1536" height="804" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:804,&quot;width&quot;:1536,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:513426,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/186181482?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfc6be6c-c1ea-498c-be08-799a3c3765ed_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FJQ6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 424w, https://substackcdn.com/image/fetch/$s_!FJQ6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 848w, https://substackcdn.com/image/fetch/$s_!FJQ6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 1272w, https://substackcdn.com/image/fetch/$s_!FJQ6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5e0fc7b-5182-4dcf-975b-bbd7fbac3738_1536x804.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Most automation suites don&#8217;t protect products.<br>They protect comfort.</p><p>Green pipelines. Clean dashboards. Confident releases.</p><p>And bugs still reach production.</p><p>When that keeps happening, automation usually isn&#8217;t weak.</p><p>It&#8217;s doing exactly what the system around it rewards.</p><p>It&#8217;s producing confidence, not exposing risk.</p><p>I know this because I built automation like this and defended it.</p><div><hr></div><h2>How comfort slowly replaces truth</h2><p>Early on, our goal was simple: move faster without breaking things.</p><p>So we automated the clean flows first.</p><p>Happy paths.<br>Expected inputs.<br>The stories everyone already understood.</p><p>The pipeline turned green quickly.</p><p>Leadership was impressed.<br>Releases felt smoother.<br>I was praised for &#8220;stabilizing quality.&#8221;</p><p>What we didn&#8217;t automate were the awkward parts:</p><p>&#8226; broken states<br>&#8226; retries<br>&#8226; bad data<br>&#8226; half-finished workflows<br>&#8226; system recovery after failure</p><p>Not because we didn&#8217;t know they mattered.</p><p>Because they were slower.<br>Harder to explain.<br>And uncomfortable to block releases over.</p><p>Green was rewarded.</p><p>Risk was invisible.</p><p>So I kept choosing green.</p><div><hr></div><h2>The moment it broke through the illusion</h2><p>Three months later, we had a production incident that duplicated customer transactions for hours.</p><p>Money moved twice.<br>Support exploded.<br>Engineering went into emergency mode.</p><p>Someone said:</p><blockquote><p>&#8220;But all our tests passed.&#8221;</p></blockquote><p>They were right.</p><p>We had hundreds of passing scripts around that flow.</p><p>What none of them covered was what happened when a timeout triggered retries halfway through processing.</p><p>We never tested the messy middle.</p><p>Because it didn&#8217;t fit nicely into acceptance stories.</p><p>Because it slowed us down.</p><p>Because it didn&#8217;t keep the dashboard green.</p><p>That was the moment I realized:</p><p>Our automation wasn&#8217;t guarding the system.</p><p>It was guarding our sense of control.</p><div><hr></div><h2>Where real failures actually begin</h2><p>Major outages rarely start with happy paths breaking.</p><p>They start when systems are under pressure.</p><p>Things like:</p><p>&#8226; retries duplicating actions<br>&#8226; partial writes corrupting data<br>&#8226; services recovering badly<br>&#8226; permissions leaking across boundaries<br>&#8226; workflows freezing mid-process</p><p>These are boring to automate.</p><p>They don&#8217;t demo well.</p><p>They don&#8217;t make numbers go up fast.</p><p>They also cause most serious damage.</p><div><hr></div><h2>Why teams keep choosing comfort (even when they know better)</h2><p>It isn&#8217;t ignorance.</p><p>It&#8217;s incentives.</p><p>Teams are praised for:</p><p>&#8226; faster releases<br>&#8226; green pipelines<br>&#8226; growing test counts<br>&#8226; &#8220;not blocking progress&#8221;</p><p>No one gets rewarded for:</p><p>&#8226; slowing a release to discuss risk<br>&#8226; building ugly failure tests<br>&#8226; questioning fragile design<br>&#8226; exposing uncertainty</p><p>So people do what smart humans always do.</p><p>They follow what the system praises.</p><p>And the system praises green.</p><div><hr></div><h2>How signal slowly dies</h2><p>First, flaky failures appear.</p><p>&#8220;Just rerun it.&#8221;</p><p>Soon reruns become routine.</p><p>Failures become noise.</p><p>Noise gets ignored.</p><p>Eventually the pipeline becomes decoration.</p><p>Always green.<br>Rarely trusted.<br>Still used as proof everything is fine.</p><div><hr></div><h2>The activity trap</h2><p>More scripts every sprint.</p><p>The same production incidents.</p><p>That usually means:</p><p>Easy scenarios got automated.</p><p>Dangerous ones stayed untouched.</p><p>Progress got measured in volume.</p><p>Risk stayed invisible.</p><div><hr></div><h2>When automation becomes a mirror of expectations</h2><p>Many suites are just requirements replayed in code.</p><p>Click this.<br>Enter that.<br>Expect success.</p><p>They confirm what teams already believe should happen.</p><p>They don&#8217;t challenge what the system actually does under strain.</p><p>Serious defects live outside neat stories.</p><div><hr></div><h2>The simplest reality check</h2><p>Ask:</p><p>How often does automation catch serious issues first?</p><p>Not broken locators.</p><p>Real failures like:</p><p>&#8226; wrong money movement<br>&#8226; corrupted data<br>&#8226; access leaks<br>&#8226; broken recovery behavior</p><p>If the answer is &#8220;almost never,&#8221; your automation isn&#8217;t protecting the product.</p><p>It&#8217;s rehearsing what already behaves.</p><div><hr></div><h1>What automation looks like when safety is the goal</h1><p>Automation aimed at safety is usually smaller and sharper.</p><p>It often targets:</p><p>&#8226; boundaries where systems break<br>&#8226; failure and recovery paths<br>&#8226; messy states humans avoid<br>&#8226; integrations under stress<br>&#8226; behaviors that hurt when wrong</p><p>It leaves room for human investigation.</p><p>Not because automation is weak.</p><p>Because learning still matters.</p><p>This approach feels slower.</p><p>It creates harder conversations.</p><p>It exposes uncertainty.</p><p>It also prevents the kind of incidents dashboards never warn you about.</p><div><hr></div><h2>The question that cuts through illusion</h2><p>Ask your team:</p><p><strong>&#8220;If every automated test passed right now, what could still seriously damage us?&#8221;</strong></p><p>If the answer is &#8220;a lot,&#8221;</p><p>your automation is building confidence, not safety.</p><div><hr></div><h3>Final thought</h3><p>Automation doesn&#8217;t drift into comfort mode.</p><p>Teams guide it there.</p><p>Because green feels safer than doubt.<br>Because speed gets rewarded.<br>Because risk is inconvenient.</p><p>I helped build systems like this.</p><p>They looked strong.<br>They ran fast.<br>They failed quietly until users paid for it.</p><p>Confidence is easy to automate.</p><p><strong>Safety takes courage.</strong></p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;af130fe9-2b24-4779-a2d0-585bb2d10a4f&quot;,&quot;caption&quot;:&quot;For a long time, restraint felt like growth.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;When Restraint Failed Me&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-01-28T08:06:50.469Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7cebd4e8-30dc-4490-965f-da0866b301ec_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/when-restraint-failed-me&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:186054827,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;4edb4582-da08-4da1-a5fb-86f78c55c440&quot;,&quot;caption&quot;:&quot;How Long Will Testing Take?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Long Will Testing Take?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-17T06:48:27.604Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17307a03-4193-4fdb-81b6-1f2f412f2496_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-long-will-testing-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:181785640,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/when-automation-creates-confidence/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/when-automation-creates-confidence/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p>]]></content:encoded></item><item><title><![CDATA[When Restraint Failed Me]]></title><description><![CDATA[On misjudgment, quiet failures, and trusting the wrong things]]></description><link>https://www.lifeofqa.com/p/when-restraint-failed-me</link><guid isPermaLink="false">https://www.lifeofqa.com/p/when-restraint-failed-me</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Wed, 28 Jan 2026 08:06:50 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/7cebd4e8-30dc-4490-965f-da0866b301ec_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>For a long time, restraint felt like growth.</p><p>I no longer chased every edge.<br>I could explain what I skipped.<br>I could talk risk clearly.<br>I could release without anxiety.</p><p>Then one release proved something uncomfortable.</p><p>Nothing was rushed.<br>Nothing was ignored.</p><p>My judgment was simply wrong.</p><div><hr></div><h2>A Decision That Made Sense</h2><p>The change looked contained.</p><p>A backend refactor adjusted how permissions were resolved.</p><p>No UI impact.<br>No schema changes.<br>All existing tests passed.<br>The diff was small and clean.</p><p>The risk, as I saw it, lived here:</p><p>&#8226; login authorization<br>&#8226; role evaluation<br>&#8226; permission boundaries</p><p>So I tested hard around that.</p><p>Role transitions.<br>Session refresh.<br>Access downgrades and upgrades.<br>Edge cases around permission changes.</p><p>Everything behaved correctly.</p><p>What I skipped:</p><p>&#8226; long-lived sessions created before deployment<br>&#8226; rarely used admin actions<br>&#8226; a legacy internal integration</p><p>I documented it.<br>I explained why.<br>The release shipped.</p><p>I felt comfortable.</p><div><hr></div><h2>The Failure Nobody Heard</h2><p>Two days later support escalated a strange issue.</p><p>A specific admin action did nothing.</p><p>No error.<br>No crash.<br>No warning.</p><p>Just silence.</p><p>The cause was simple.</p><p>A cached permission object created before deployment no longer worked with the new logic.</p><p>Main flows refreshed it.<br>That admin path didn&#8217;t.</p><p>So the system looked healthy while quietly refusing to work.</p><p>The worst part wasn&#8217;t the bug.</p><p>I had thought about this risk.</p><p>And talked myself out of it.</p><div><hr></div><h2>How Smart Reasoning Became Blind Trust</h2><p>My logic sounded solid:</p><p>&#8226; the integration was stable<br>&#8226; usage was low<br>&#8226; the change was internal<br>&#8226; monitoring would catch real problems</p><p>Each point was reasonable.</p><p>Together they formed a story I trusted more than the product.</p><p>I assumed:</p><p>&#8226; permission issues would fail loudly<br>&#8226; stale data would cause visible breakage<br>&#8226; important paths were already obvious</p><p>None of that was true.</p><p>The system failed exactly where I felt relaxed.</p><div><hr></div><h2>The Real Cost of Being Calm</h2><p>No one blamed me.</p><p>That stung more than criticism.</p><p>I had scoped responsibly.<br>I had named risk.<br>I had justified omission.</p><p>So the fix was quiet.<br>Patch it. Move on.</p><p>What changed was my thinking.</p><p>Restraint hadn&#8217;t just made me efficient.<br>It had made me comfortable.</p><p>And comfort is where curiosity dies.</p><p>I stopped asking:<br>&#8220;Where could this fail without anyone noticing?&#8221;</p><p>I started assuming:<br>&#8220;If it breaks, it will be visible.&#8221;</p><p>That assumption caused the bug.</p><div><hr></div><h2>What I Do Differently Now</h2><p>I still practice restraint.</p><p>But I don&#8217;t trust calm decisions anymore.</p><p>When I choose not to test something, I ask:</p><p><strong>If this fails silently, who discovers it first?</strong></p><p>If the answer isn&#8217;t:</p><p>&#8226; automated checks<br>&#8226; monitoring<br>&#8226; clear user feedback</p><p>Then skipping it is gambling, not prioritizing.</p><p>I also deliberately test one area I feel oddly relaxed about.</p><p>That relaxed feeling is a signal now.<br>It usually means I&#8217;ve built a comfortable story in my head.</p><p>And comfortable stories hide real risk.</p><div><hr></div><h2>The Lesson That Stuck</h2><p>Good reasoning doesn&#8217;t make systems safe.</p><p>It just makes omissions feel justified.</p><p>Most serious failures don&#8217;t explode.<br>They whisper.</p><p>They live in old sessions.<br>rare flows.<br>boring admin screens.<br>places no one watches.</p><p>Restraint is still a skill.</p><p>But unchecked confidence turns it into blindness.</p><p>Today I trust the product more than my explanations.</p><p>And I stay suspicious when everything feels &#8220;obviously fine.&#8221;</p><p>That discomfort catches more bugs than confidence ever did.</p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;30cc105c-5ac8-4d59-a3dd-2956cd337bf8&quot;,&quot;caption&quot;:&quot;How Long Will Testing Take?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Long Will Testing Take?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-17T06:48:27.604Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17307a03-4193-4fdb-81b6-1f2f412f2496_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-long-will-testing-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:181785640,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;4707d522-6f6d-4d71-bd1c-82d2ecd8d915&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:6,&quot;comment_count&quot;:4,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/when-restraint-failed-me/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/when-restraint-failed-me/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p>]]></content:encoded></item><item><title><![CDATA[5 Uncomfortable Truths About Software Testing]]></title><description><![CDATA[(reflections from inside real systems)]]></description><link>https://www.lifeofqa.com/p/5-uncomfortable-truths-about-software</link><guid isPermaLink="false">https://www.lifeofqa.com/p/5-uncomfortable-truths-about-software</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Tue, 30 Dec 2025 11:13:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!j8Wj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!j8Wj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!j8Wj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 424w, https://substackcdn.com/image/fetch/$s_!j8Wj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 848w, https://substackcdn.com/image/fetch/$s_!j8Wj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 1272w, https://substackcdn.com/image/fetch/$s_!j8Wj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!j8Wj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png" width="400" height="209.5483870967742" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/585d7cb2-0216-4238-ba16-63c153751837_1550x812.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:812,&quot;width&quot;:1550,&quot;resizeWidth&quot;:400,&quot;bytes&quot;:547283,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/182938893?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fa676df-bb53-4392-8cda-b64325dbb187_1550x1020.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!j8Wj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 424w, https://substackcdn.com/image/fetch/$s_!j8Wj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 848w, https://substackcdn.com/image/fetch/$s_!j8Wj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 1272w, https://substackcdn.com/image/fetch/$s_!j8Wj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585d7cb2-0216-4238-ba16-63c153751837_1550x812.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p>Before anything else, a grounding.</p><blockquote><p>By testing, I mean the skilled investigation of a product to understand how it actually behaves and what risks that behavior creates. Not executing steps. Not validating documents. Making judgment calls under uncertainty.</p></blockquote><p>Everything below follows from working inside systems that say they value quality, while quietly constraining how it can be practiced.</p><div><hr></div><h3>1. Most testing systems are built to produce reassurance, not learning</h3><p>In many organizations, testing is optimized to confirm that things are &#8220;okay.&#8221; Scripts get executed. Expected results match. Dashboards stay green.</p><p>That work can be careful and sincere. But its primary outcome is comfort.</p><p>The moment surprise becomes unwelcome, learning becomes optional. Testers quickly notice which discoveries lead to discussion and which ones lead to discomfort. Over time, curiosity narrows to what fits the reporting model.</p><p>This isn&#8217;t because testers stop thinking. It&#8217;s because the system rewards predictability more than insight.</p><div><hr></div><h3>2. Testing is welcomed until it threatens commitments</h3><p>Early in development, questions are encouraged. Exploration feels responsible. Risk is still hypothetical.</p><p>As delivery dates harden, the same questions start sounding different:<br>&#8220;This is already known.&#8221;<br>&#8220;Why is this coming up now?&#8221;<br>&#8220;We can&#8217;t change scope at this stage.&#8221;</p><p>A test finding that would have triggered redesign three weeks ago is now reframed as something to &#8220;monitor.&#8221; Nothing about the product changed. Only the calendar did.</p><p>This shift rarely comes from bad intent. But it consistently favors schedule protection over outcome responsibility.</p><div><hr></div><h3>3. Artifacts and automation often absorb responsibility that should stay human</h3><p>Automation, test cases, and metrics are useful. I rely on them.</p><p>The problem starts when they become substitutes for judgment.</p><p>&#8220;All tests passed&#8221; is easy to defend.<br>&#8220;I&#8217;m uneasy because this behavior feels brittle under real usage&#8221; is harder.</p><p>So responsibility quietly moves from people to artifacts. From reasoning to evidence production. A test suite becomes a shield rather than a lens.</p><p>This creates the illusion of control while increasing the cost of surprise.</p><div><hr></div><h3>4. Most serious quality failures happen before the first bug is logged</h3><p>By the time a defect is visible, the real failure usually happened earlier.</p><p>An assumption wasn&#8217;t questioned.<br>A domain nuance was misunderstood.<br>A trade-off was made without fully grasping its consequences.</p><p>Stopping at the bug is convenient. Following it upstream forces uncomfortable conversations about earlier decisions people are already invested in.</p><p>Organizations that treat bugs as isolated events don&#8217;t eliminate risk. They just rename it and carry it forward.</p><div><hr></div><h3>5. Testing judgment is shaped by social reality, not org charts</h3><p>Independence is rarely absolute. Deadlines, power dynamics, performance reviews, and team loyalty influence what gets tested, how findings are framed, and which risks are emphasized.</p><p>Silence is often an adaptive response, not indifference. Testers learn when persistence changes outcomes and when it only costs credibility.</p><p>But silence is still a decision. And every unspoken concern is a risk the system chooses to own.</p><p>Over time, strong testers outgrow narrow role definitions because judgment cannot be confined to a phase, a checklist, or a gate. When organizations make space for that judgment, quality improves. When they don&#8217;t, testers adapt, reframe their role, or leave.</p><div><hr></div><h2>Closing</h2><p>Testing is not neutral work.<br>It is a series of decisions made under pressure, constraint, and incomplete understanding.</p><p>Every compromise already shapes the product, whether it is acknowledged or hidden behind process.</p><p>Integrity in testing is not about heroics or purity.<br>It&#8217;s about being honest with ourselves about what we know, what we don&#8217;t, and which risks we are choosing to carry forward.</p><p><strong>Real testing lives in that honesty, not in the metrics we report.</strong></p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;f3dc3022-600a-4e40-a492-ffe20957b460&quot;,&quot;caption&quot;:&quot;How Long Will Testing Take?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Long Will Testing Take?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-17T06:48:27.604Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17307a03-4193-4fdb-81b6-1f2f412f2496_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-long-will-testing-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:181785640,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;ee6b101c-c44a-465c-b2fe-9bb528835fbb&quot;,&quot;caption&quot;:&quot;Impostor syndrome is not a motivational problem. It is a signal.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#127917; Overcoming Impostor Syndrome in Software Testing&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-01-13T11:55:12.141Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8d1ea418-88b5-4a9f-a60a-e74434c9d11d_446x440.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/overcoming-impostor-syndrome-in-testing&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:154745647,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:1,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;74049b4a-ad49-42ab-996d-bea55f9b8174&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:6,&quot;comment_count&quot;:4,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/5-uncomfortable-truths-about-software/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/5-uncomfortable-truths-about-software/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[When Testing Careers Feel Unstable]]></title><description><![CDATA[Staying grounded when the industry shakes]]></description><link>https://www.lifeofqa.com/p/when-testing-careers-feel-unstable</link><guid isPermaLink="false">https://www.lifeofqa.com/p/when-testing-careers-feel-unstable</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Fri, 19 Dec 2025 12:28:54 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/7c7807e7-8ddc-4c9e-9613-dfa32521084f_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>If you work in testing today, instability is real. Teams shrink, roles blur, and automation and AI are framed as replacements. Job descriptions demand everything at once, often without clarity or context.</p><p>Most testers aren&#8217;t unsettled because they lack skill. They&#8217;re unsettled because the old safety nets are gone.</p><p>This article shows how to think clearly, test effectively, and stay relevant when certainty disappears.</p><div><hr></div><h2>The fear is real, and subtle</h2><p>Testers don&#8217;t fear tools. They fear <strong>losing their relevance when certainty vanishes</strong>. Specifically:</p><ul><li><p>Being useful only when systems behave predictably</p></li><li><p>Needing clear instructions to feel competent</p></li><li><p>Losing credibility when scripts stop providing answers</p></li><li><p>Not knowing how to quantify &#8220;real risk&#8221;</p></li></ul><p>Fear doesn&#8217;t roar. It whispers responsibility, but quietly narrows judgment. It pushes testers toward what feels safe, not what matters.</p><div><hr></div><h2>Fear-driven vs grounded testing</h2><pre><code><code>                            TESTING PRESSURE
                 (Deadlines, layoffs, AI, unclear scope)
                                 |
                    -------------------------------
                    |                             |
                    v                             v
              FEAR-DRIVEN TESTING         GROUNDED TESTING
</code></code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KTlL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KTlL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 424w, https://substackcdn.com/image/fetch/$s_!KTlL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 848w, https://substackcdn.com/image/fetch/$s_!KTlL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 1272w, https://substackcdn.com/image/fetch/$s_!KTlL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KTlL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png" width="1456" height="506" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:506,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:91458,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/182076117?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KTlL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 424w, https://substackcdn.com/image/fetch/$s_!KTlL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 848w, https://substackcdn.com/image/fetch/$s_!KTlL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 1272w, https://substackcdn.com/image/fetch/$s_!KTlL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bc74152-e0d3-4c7b-a576-ae5fb61432d3_1588x552.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Example:</strong> Under pressure, a tester may re-run familiar flows, avoid ambiguous areas, and report &#8220;high coverage&#8221; while the riskiest changes remain untested. Nothing is technically wrong, but judgment narrows. Fear favors certainty over significance.</p><div><hr></div><h2>Release decision: fear vs grounded</h2><p><strong>Scenario:</strong> Release is tomorrow. Late changes landed today. Automation is green. Product asks, <em>&#8220;Can we ship?&#8221;</em></p><p><strong>Fear-driven response:</strong><br>&#8220;All test cases passed. Automation is green. No blockers found.&#8221;<br>This protects the tester, hides risk, and leaves stakeholders uninformed.</p><p><strong>Grounded response:</strong><br>&#8220;We validated main payment and refund flows with real data. Retry behavior added today remains untested. Past incidents suggest this is high risk. Shipping now means explicitly accepting that risk.&#8221;<br>This shows clear ownership, shared understanding, and supports an informed decision.</p><p>Notice: <strong>grounded testing communicates uncertainty, not panic.</strong></p><div><hr></div><h2>What automation and AI can, and can&#8217;t, do</h2><p><strong>Good at:</strong><br>Repeating known checks, generating variations, speeding predictable feedback.</p><p><strong>Poor at:</strong><br>Interpreting ambiguous outcomes, reasoning about business impact, noticing weak or emergent signals, negotiating tradeoffs.</p><p><strong>Concrete example:</strong><br>AI might detect that a button appears or a response is 200 OK. It cannot judge whether partial refunds, network retries, or unusual sequences could silently corrupt transactions. That requires human judgment.</p><p><strong>Enduring skills:</strong></p><ul><li><p>Exploratory testing in unclear systems</p></li><li><p>Risk analysis with incomplete information</p></li><li><p>Failure investigation without scripts</p></li><li><p>Decision support under pressure</p></li></ul><p><strong>Tip:</strong> Use AI to generate hypotheses, summarize data, and offload repetition. Don&#8217;t compete on speed. Protect your judgment.</p><div><hr></div><h2>Depth over breadth, in practice</h2><p><strong>Example exploratory session:</strong> Payment retries after network failure</p><ul><li><p>Map where money could be duplicated or lost</p></li><li><p>Simulate partial failures, not just full outages</p></li><li><p>Ask what customer support would experience</p></li><li><p>Inspect logs and events, not just the UI</p></li><li><p>Document assumptions and challenge them actively</p></li></ul><p>Share findings with developers. Explain <em>why</em> each risk matters and adjust testing based on feedback. Depth is shared understanding, not solo heroics.</p><p><strong>Visual tip:</strong> A simple risk map listing flows, probability, impact, and coverage helps stakeholders see what is tested, what remains unknown, and why certain areas matter more.</p><div><hr></div><h2>Communicating risk without noise</h2><p>Example Slack or standup update:</p><blockquote><p>&#8220;Core payment flow looks stable. Retry edge cases added yesterday remain untested. Historically, these caused silent failures. Recommendation: delay or explicitly accept this risk.&#8221;</p></blockquote><p>Avoid blame or panic. Show informed judgment. Highlight uncertainty. Propose decisions based on risk, not convenience.</p><p><strong>Common pitfall:</strong><br>Saying &#8220;Everything passed in automation&#8221; hides risk. When production fails silently, trust is lost.</p><div><hr></div><h2>Micro-practices to build durable skill</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SV1t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SV1t!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 424w, https://substackcdn.com/image/fetch/$s_!SV1t!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 848w, https://substackcdn.com/image/fetch/$s_!SV1t!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 1272w, https://substackcdn.com/image/fetch/$s_!SV1t!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SV1t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png" width="1456" height="428" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:428,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:72968,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/182076117?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SV1t!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 424w, https://substackcdn.com/image/fetch/$s_!SV1t!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 848w, https://substackcdn.com/image/fetch/$s_!SV1t!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 1272w, https://substackcdn.com/image/fetch/$s_!SV1t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff46d6dd4-2821-45d6-a46e-0a004f216201_1570x462.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Even small habits compound. Over time, your judgment becomes visible, resilient, and trusted.</p><div><hr></div><h2>From daily practice to career resilience</h2><p>Testers who focus on judgment, risk communication, and exploration:</p><ul><li><p>Interview better because they can explain decisions</p></li><li><p>Adapt faster when roles change</p></li><li><p>Stay relevant when tools rotate</p></li><li><p>Become trusted voices, not just executors</p></li></ul><p>Ask yourself:</p><ul><li><p>Can I uncover risks others miss?</p></li><li><p>Can I explain uncertainty clearly?</p></li><li><p>Can I support better decisions under pressure?</p></li></ul><p>If yes, layoffs, titles, or tools do not define your value.</p><div><hr></div><h2>Patience over speed</h2><p>Shaky times make speed tempting, but rushed moves damage careers. Poor role fit. Shallow learning. Burnout. Broken trust.</p><p><strong>Patience isn&#8217;t waiting.</strong> It&#8217;s refusing to panic-learn and panic-decide. Clarity stabilizes careers better than motion.</p><div><hr></div><h2>Final thought</h2><p>Testing is becoming more honest, not easier. Safety nets are thinner. Expectations are higher. The work is more human.</p><p>Fear is normal, but it doesn&#8217;t run the work. Strong testers aren&#8217;t fearless. They are <strong>clear-headed when certainty disappears</strong>.</p><blockquote><p>Master judgment under uncertainty, and no layoff, tool, or trend can make your skills irrelevant.</p></blockquote><p></p><p><em>A quiet reminder as the year closes.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VLeK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VLeK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!VLeK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!VLeK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!VLeK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VLeK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2041231,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/182076117?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F118be87e-72bc-4f28-a4d7-163b47827b53_1024x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VLeK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!VLeK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!VLeK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!VLeK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65064974-85d8-4c22-b4ca-f4ba2d32cc27_1024x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;5563d175-fd03-4e6f-97b4-7b587ec5453d&quot;,&quot;caption&quot;:&quot;How Long Will Testing Take?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Long Will Testing Take?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-17T06:48:27.604Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17307a03-4193-4fdb-81b6-1f2f412f2496_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-long-will-testing-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:181785640,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;214ce5c3-c6e1-4941-af32-31b488ce50c1&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:2,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;545db7f5-07ed-41c4-a818-f8b2213a3467&quot;,&quot;caption&quot;:&quot;What a simple interview prompt revealed about mindset&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Before You Automate, Ask Better Questions&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-11-09T06:39:05.233Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1ceab769-174e-4290-88fd-2c3206c346b8_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/before-you-automate-ask-better-questions&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:178397750,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;7ca837f3-c2ce-4e34-ab84-1deb6318a9e4&quot;,&quot;caption&quot;:&quot;AI has crashed into our world of testing like a storm. Every week there&#8217;s a new &#8220;AI agent&#8221; or &#8220;copilot&#8221; promising speed, scalability, and even the death of testers. But here&#8217;s the uncomfortable truth: if we don&#8217;t use AI wisely, we risk making ourselves look foolish, lazy, or worse, replaceable.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Testers Should Use AI (Without Looking Foolish)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-22T12:23:15.952Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ba470e6-45e0-491e-af6e-0ddd5ec6f35b_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-testers-should-use-ai-without&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171631801,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:6,&quot;comment_count&quot;:2,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/when-testing-careers-feel-unstable/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/when-testing-careers-feel-unstable/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[How Long Will Testing Take?]]></title><description><![CDATA[A question that deserves a better answer]]></description><link>https://www.lifeofqa.com/p/how-long-will-testing-take</link><guid isPermaLink="false">https://www.lifeofqa.com/p/how-long-will-testing-take</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Wed, 17 Dec 2025 06:48:27 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/17307a03-4193-4fdb-81b6-1f2f412f2496_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>How Long Will Testing Take?</strong></p><p><em><strong>A question that deserves a better answer</strong></em></p></blockquote><p>When someone asks, <em>&#8220;How long will testing take?&#8221;</em> they are often asking the wrong question.</p><p>What they usually want to know is:</p><blockquote><p><strong>&#8220;How much risk are we willing to accept before we release?&#8221;</strong></p></blockquote><p>Testing estimates do not exist to protect a schedule.<br>They exist to support <strong>release decisions under uncertainty</strong>.</p><p>If you are a practicing tester, you already know the uncomfortable truth:<br>you cannot predict exactly how long testing will take, because testing is learning, and learning is inherently uncertain.</p><p>Your job is not to eliminate uncertainty.<br>Your job is to <strong>make it visible, discussable, and useful</strong>.</p><div><hr></div><h2>Why &#8220;How long?&#8221; is a flawed question</h2><p>&#8220;How long will testing take?&#8221; collapses many different activities into a single number:</p><ul><li><p>Learning how the change really works</p></li><li><p>Investigating side effects and interactions</p></li><li><p>Retesting after fixes</p></li><li><p>Exploring what no one thought to specify</p></li><li><p>Regressing areas that <em>might</em> break, not just those that changed</p></li></ul><p>It also ignores context:</p><ul><li><p>Who is doing the testing?</p></li><li><p>How well do they know the system?</p></li><li><p>How risky is failure in this area?</p></li><li><p>How much risk is the business consciously accepting?</p></li></ul><p>A single date hides these realities.<br>A credible estimate exposes them.</p><div><hr></div><h2>What skilled testers estimate instead of time</h2><p>Experienced testers do not start with calendars.<br>They start with <strong>change, risk, and uncertainty</strong>.</p><p>Time is an output, not an input.</p><div><hr></div><h2>Step 1: Understand what actually changed (not what it&#8217;s called)</h2><p>Before estimating anything, challenge the story you have been given.</p><p>Ask:</p><ul><li><p>What changed exactly?</p></li><li><p>Is this UI-only, or shared logic?</p></li><li><p>What depends on this code, data, or behavior?</p></li><li><p>Which assumptions does this change invalidate?</p></li></ul><p>&#8220;Small change&#8221; is one of the most dangerous phrases in software.</p><h3>A common failure pattern</h3><p>A &#8220;minor&#8221; validation update once broke user creation across multiple workflows because the logic was shared.<br>The bug escaped because the change was treated as isolated.</p><p>Nothing about the change <em>looked</em> risky until users could not sign up.</p><h3>How to surface hidden impact</h3><ul><li><p>Ask developers what files, services, and APIs were touched</p></li><li><p>Trace workflows that depend on that logic</p></li><li><p>Review historical defects in the same area</p></li></ul><p>This is informal impact analysis:<br><strong>change &#8594; usage &#8594; risk</strong></p><div><hr></div><h2>Step 2: Translate change into risk and complexity</h2><p>Estimation is not math.<br>It is professional judgment.</p><p>Two lenses matter most.</p><h3>Complexity: how hard is this to understand and test?</h3><ul><li><p><strong>Low:</strong> isolated UI or copy changes</p></li><li><p><strong>Medium:</strong> business rules, conditional logic</p></li><li><p><strong>High:</strong> shared components, integrations, data models</p></li></ul><h3>Risk: what happens if this breaks?</h3><ul><li><p><strong>Low:</strong> rare usage, minimal impact</p></li><li><p><strong>Medium:</strong> common paths, workarounds exist</p></li><li><p><strong>High:</strong> core flows, revenue, data integrity, compliance</p></li></ul><p>If you do not trust tester judgment here, no estimation technique will save you.</p><h3>Concrete examples</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ctY7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ctY7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 424w, https://substackcdn.com/image/fetch/$s_!ctY7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 848w, https://substackcdn.com/image/fetch/$s_!ctY7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 1272w, https://substackcdn.com/image/fetch/$s_!ctY7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ctY7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png" width="1456" height="548" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:548,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:90092,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/181785640?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ctY7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 424w, https://substackcdn.com/image/fetch/$s_!ctY7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 848w, https://substackcdn.com/image/fetch/$s_!ctY7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 1272w, https://substackcdn.com/image/fetch/$s_!ctY7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75208581-50f9-439b-8e5e-ae7eb2da8fd2_1600x602.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Numbers alone are meaningless.<br><strong>Reasoning is what decision-makers need.</strong></p><div><hr></div><h3>A useful heuristic (and its limits)</h3><h3>Risk &#215; Complexity &#8594; Effort (heuristic)</h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FoyD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FoyD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 424w, https://substackcdn.com/image/fetch/$s_!FoyD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 848w, https://substackcdn.com/image/fetch/$s_!FoyD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 1272w, https://substackcdn.com/image/fetch/$s_!FoyD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FoyD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png" width="1456" height="324" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:324,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:47227,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/181785640?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FoyD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 424w, https://substackcdn.com/image/fetch/$s_!FoyD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 848w, https://substackcdn.com/image/fetch/$s_!FoyD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 1272w, https://substackcdn.com/image/fetch/$s_!FoyD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcbc75ba-b0fc-4fcd-9024-aa64d35438c5_1574x350.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This is <strong>not a formula</strong>.<br>It is a conversation starter.</p><p>Always state assumptions:</p><ul><li><p>Stable environment</p></li><li><p>No upstream refactoring</p></li><li><p>Existing automation is relevant and reliable</p></li></ul><h3>When this heuristic breaks</h3><ul><li><p>Unknown architecture</p></li><li><p>Poor observability or logging</p></li><li><p>Flaky environments</p></li><li><p>Last-minute scope changes</p></li><li><p>Pressure to &#8220;just sign off&#8221;</p></li></ul><p>If those are present, your estimate must change or your credibility will.</p><div><hr></div><h2>Step 3: Plan regression and exploration deliberately</h2><p>Regression protects what matters most.<br>Exploration reveals what no one anticipated.</p><p>Both are required.</p><h3>Regression prioritization heuristics</h3><ul><li><p>Frequency of use</p></li><li><p>Business and data impact</p></li><li><p>History of failure</p></li><li><p>Proximity to the change</p></li></ul><p>Regression should be intentional, not exhaustive.</p><h3>Time-boxed exploratory testing</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3jU5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3jU5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 424w, https://substackcdn.com/image/fetch/$s_!3jU5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 848w, https://substackcdn.com/image/fetch/$s_!3jU5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 1272w, https://substackcdn.com/image/fetch/$s_!3jU5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3jU5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png" width="1456" height="368" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/afe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:368,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:62356,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/181785640?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3jU5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 424w, https://substackcdn.com/image/fetch/$s_!3jU5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 848w, https://substackcdn.com/image/fetch/$s_!3jU5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 1272w, https://substackcdn.com/image/fetch/$s_!3jU5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafe24363-f446-439f-94a6-ca580c0ae9b4_1584x400.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Exploration without time boxes turns into infinite work and broken estimates.<br>Treat exploration like an experiment: explore, learn, record, stop.</p><div><hr></div><h2>Step 4: Be honest about people and tools</h2><p>Time is often driven more by <strong>who</strong> is testing than <strong>what</strong> is tested.</p><p>Account for:</p><ul><li><p>Domain and system knowledge</p></li><li><p>Ability to investigate, not just execute scripts</p></li><li><p>Access to developers for fast feedback</p></li></ul><h3>Automation reality check</h3><ul><li><p>Does it cover current risks?</p></li><li><p>Is it stable or noisy?</p></li><li><p>Does it reduce learning, or create investigation overhead?</p></li></ul><p>Automation can increase confidence.<br>It can also slow you down. Say which one applies.</p><div><hr></div><h2>Step 5: Give ranges that enable decisions</h2><p>Avoid fixed dates.<br>Also avoid meaningless ranges like &#8220;1&#8211;10 days.&#8221;</p><p>A good range reflects uncertainty and supports planning.</p><p>Example:</p><blockquote><p>&#8220;Based on current scope and risk, testing is likely to take <strong>6&#8211;8 days</strong>.<br>This includes focused regression and exploratory testing of high-risk areas.<br>If scope or risk changes, this estimate will change.&#8221;</p></blockquote><p>That is not hedging.<br>That is professional clarity.</p><div><hr></div><h2>Estimation without reporting is theater</h2><p>An estimate only matters if people understand <strong>what it buys them</strong>.</p><p>Report testing in terms of coverage and risk.</p><p><strong>Tested</strong></p><ul><li><p>High-risk components and critical workflows</p></li></ul><p><strong>Sampled</strong></p><ul><li><p>Medium and low-risk areas near the change</p></li></ul><p><strong>Not tested</strong></p><ul><li><p>Explicitly stated, low-usage unchanged areas</p></li></ul><p><strong>Known risks</strong></p><ul><li><p>Identified gaps or fragile behavior</p></li></ul><p><strong>Unknowns</strong></p><ul><li><p>Areas with potential impact but limited time</p></li></ul><p><strong>Overall confidence</strong></p><ul><li><p>Example: medium&#8211;high for core flows based on high-risk coverage</p></li></ul><p>Simple risk tables or heatmaps beat status percentages every time.</p><div><hr></div><h2>Common estimation traps</h2><ul><li><p>Treating historical effort as a rule, not a reference</p></li><li><p>Assuming automation equals speed</p></li><li><p>Ignoring investigation and rework</p></li><li><p>Hiding uncertainty to sound confident</p></li></ul><p>Every one of these eventually destroys trust.</p><div><hr></div><h2>Final takeaway</h2><p>Estimating testing time is not about precision.<br>It is about <strong>credibility</strong>.</p><p>If you can:</p><ul><li><p>Explain risk clearly</p></li><li><p>Show what was covered and what was not</p></li><li><p>Make uncertainty visible in minutes</p></li></ul><p>You have done your job.</p><p>Testing does not end.<br>But good decisions start with honest estimates.</p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d991d3f8-e03d-4908-979d-7b6523879ff1&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:2,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;00f96d3a-2f5a-4ad8-9514-b9ac03f1531d&quot;,&quot;caption&quot;:&quot;In testing, we eventually confront an unavoidable fact:&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Moving Beyond Checkbox Risk Analysis&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-11-16T13:44:19.666Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/37d36f59-8206-44f4-9d1c-c794147859f2_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/moving-beyond-checkbox-risk-analysis&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:178958208,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/how-long-will-testing-take/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/how-long-will-testing-take/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Be an Aware Engineer, Not Just an Efficient One]]></title><description><![CDATA[Most teams claim they want &#8220;high-performing engineers.&#8221;]]></description><link>https://www.lifeofqa.com/p/be-an-aware-engineer-not-just-an</link><guid isPermaLink="false">https://www.lifeofqa.com/p/be-an-aware-engineer-not-just-an</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Tue, 09 Dec 2025 11:14:20 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/14651dfb-f2ca-46a2-affc-c72290d6b404_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Most teams claim they want &#8220;high-performing engineers.&#8221;</p><p>Look closer and you&#8217;ll often see something else:</p><ul><li><p>Dashboards measuring tickets closed</p></li><li><p>Pressure to &#8220;move fast&#8221; and &#8220;unblock delivery&#8221;</p></li><li><p>Quiet punishment for anyone who slows things down with awkward questions</p></li></ul><p>In that environment, it&#8217;s easy to confuse <strong>being busy</strong> with <strong>doing good engineering</strong>.</p><p>This is not an attack on efficiency. It&#8217;s a warning:</p><blockquote><p>If you only optimize for speed and throughput, you quietly train yourself to ignore learning, risk, and context.</p></blockquote><p>That&#8217;s how you end up with fast engineers shipping dumb decisions.</p><p>When I say &#8220;engineer&#8221; in this piece, I mean <strong>everyone who designs, builds, tests, or operates the system</strong>. My own lens is test engineering, so the examples will lean that way.</p><p>What I care about isn&#8217;t just throughput. It&#8217;s something less visible in Jira and far more important in reality: <strong>awareness</strong>.</p><div><hr></div><p><em>&#127793; <strong>Quick Pause</strong></em></p><p><em>If you are finding this interesting and want more stories and insights like this, consider subscribing to LifeOfQA.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>Efficiency Is Simple. Awareness Is Work.</h2><p>Efficiency is the easy part:</p><ul><li><p>Automate repetition</p></li><li><p>Reuse patterns</p></li><li><p>Cut out obvious waste</p></li></ul><p>Tools, frameworks, and CI pipelines make that easier every year.</p><p>Awareness is harder:</p><ul><li><p>Seeing beyond &#8220;the ticket in front of me&#8221;</p></li><li><p>Understanding how a change interacts with the rest of the system</p></li><li><p>Recognizing who gets hurt if you&#8217;re wrong</p></li><li><p>Knowing when &#8220;quick fix&#8221; is acceptable and when it&#8217;s reckless</p></li></ul><p>And unlike efficiency, <strong>you can&#8217;t just install awareness</strong>. You have to train it.</p><div><hr></div><h2>What Do I Mean by &#8220;Awareness&#8221;?</h2><p>&#8220;Be more aware&#8221; is useless advice unless we break it down.</p><p>Awareness in engineering isn&#8217;t a feeling. It&#8217;s a set of models you carry in your head and update as you learn.</p><p>Here&#8217;s how I think about it. It&#8217;s at least five things:</p><ol><li><p><strong>System awareness</strong><br>How data and control actually flow through the system.</p><ul><li><p>Which services touch this data?</p></li><li><p>What events trigger this behavior?</p></li><li><p>What assumptions are baked into the architecture?</p></li></ul></li><li><p><strong>Stakeholder awareness</strong><br>Who is affected by this change and how.</p><ul><li><p>Which users depend on this?</p></li><li><p>What will support, ops, or sales feel if this goes wrong?</p></li><li><p>Who will be on-call when it explodes at 2 AM?</p></li></ul></li><li><p><strong>Risk awareness</strong><br>What can go wrong, how likely it is, and how bad it would be.</p><ul><li><p>Is this a &#8220;UI glitch&#8221; risk or a &#8220;data corruption&#8221; risk?</p></li><li><p>If this fails silently, how long until we notice?</p></li><li><p>What&#8217;s the worst <em>credible</em> outcome?</p></li></ul></li><li><p><strong>Historical awareness</strong><br>What has already failed around here.</p><ul><li><p>Has this area caused incidents before?</p></li><li><p>What did we learn last time and did we forget it?</p></li><li><p>Are we repeating an old mistake with a new name?</p></li></ul></li><li><p><strong>Constraint awareness</strong><br>The real limits you&#8217;re under.</p><ul><li><p>How much time do we actually have?</p></li><li><p>What skills/tools are available right now?</p></li><li><p>What does this organization <em>really</em> reward: learning or speed?</p></li></ul></li></ol><p>When I say &#8220;be an aware engineer,&#8221; I&#8217;m not saying &#8220;think more.&#8221;<br>I&#8217;m saying: <strong>actively model these five things instead of pretending they don&#8217;t exist.</strong></p><div><hr></div><h2>The System Often Rewards Blind Efficiency</h2><p>It&#8217;s tempting to frame this as:</p><blockquote><p>&#8220;Some engineers are blind and ticket-obsessed. They should be more aware.&#8221;</p></blockquote><p>Reality is uglier.</p><p>Many teams and managers unintentionally <em>punish</em> awareness:</p><ul><li><p>The engineer who asks, &#8220;What problem are we actually solving?&#8221; is labelled &#8220;blocking&#8221;</p></li><li><p>The engineer in a test role who says, &#8220;We need time to explore this area&#8221; is seen as &#8220;slowing things down&#8221;</p></li><li><p>The team that surfaces systemic issues is told, &#8220;Let&#8217;s just get this out and fix it later&#8221;</p></li></ul><p>On the other hand, the system often <strong>rewards blind efficiency</strong>:</p><ul><li><p>Close tickets quickly &#8594; praised</p></li><li><p>Reduce visible cycle time &#8594; praised</p></li><li><p>Ship with unknown risks that don&#8217;t explode immediately &#8594; forgotten</p></li></ul><p>If you ignore this, the whole message collapses into moral advice:<br>&#8220;Engineers should be smarter and more aware.&#8221;</p><p>People respond to incentives. If awareness makes your life harder on your team, you will unconsciously avoid it.</p><p>That&#8217;s why awareness is not just a personal virtue. It&#8217;s also an act of resistance against metrics that only see speed.</p><div><hr></div><h2>A Bug Story: Narrow Model vs Wider Model</h2><p>Let me ground this with a real story and treat it as a <em>testing</em> story, not a hero arc.</p><p>We had a bug that kept resurfacing in production.</p><ul><li><p>Same area</p></li><li><p>Similar symptoms</p></li><li><p>Same level of irritation for users: not catastrophic, but not harmless</p></li></ul><h3>Round 1: The Narrow Fix</h3><p>My initial mindset:</p><ul><li><p>&#8220;We&#8217;ve seen this before.&#8221;</p></li><li><p>&#8220;I know roughly where it lives.&#8221;</p></li><li><p>&#8220;Let me just guard against that condition.&#8221;</p></li></ul><p>I:</p><ul><li><p>Found the failing condition</p></li><li><p>Added a defensive check</p></li><li><p>Updated a couple of tests around that path</p></li><li><p>Verified the reported reproduction and the happy path</p></li><li><p>Closed the ticket</p></li></ul><p>Fast. Locally reasonable. Context: the team was under pressure, and this didn&#8217;t look like a &#8220;bring down the system&#8221; bug.</p><p>What I didn&#8217;t do:</p><ul><li><p>Model where else this data was used</p></li><li><p>Ask, &#8220;Is this really the same bug as last time?&#8221; or just similar symptoms</p></li><li><p>Look at logs around the time of failure for other oddities</p></li><li><p>Talk to support about user impact beyond the written repro steps</p></li></ul><p>My <strong>system awareness</strong> and <strong>risk awareness</strong> were narrow. Not zero, just shallow.</p><p>Two weeks later, the issue reappeared. This time in a different flow that depended on the same underlying behavior. Same family of problems, different surface.</p><p>Was my fix &#8220;wrong&#8221;?<br>Given the constraints and information I&#8217;d considered, it was <em>locally fine</em>.<br>But my model of the system was too small.</p><h3>Round 2: Expanding the Model</h3><p>When it came back, I approached it in a different mode: explicitly as a <strong>test engineer</strong>, not as someone trying to make a ticket disappear.</p><p>I wrote down a few questions:</p><ul><li><p>&#8220;What do all these occurrences have in common?&#8221;</p></li><li><p>&#8220;In what situations does this <em>not</em> happen?&#8221;</p></li><li><p>&#8220;What would have to be true for this behavior to be impossible?&#8221;</p></li></ul><p>Then I:</p><ul><li><p>Traced the data through multiple services, not just the failing one</p></li><li><p>Looked at logs before and after the error, not only at the error line</p></li><li><p>Paired with another engineer and compared our mental models of the flow</p></li><li><p>Asked support which users reported it and what their environments had in common</p></li><li><p>Actively tried to break the system around the suspicious area with exploratory tests, not just confirm the known scenario</p></li></ul><p>I stopped treating it as &#8220;the same bug is back&#8221; and started treating it as &#8220;a <strong>cluster of related failures</strong> sitting on top of misunderstood assumptions.&#8221;</p><p>We didn&#8217;t find a single magical &#8220;root cause.&#8221; We found a <strong>chain of conditions</strong>:</p><ul><li><p>An assumption in validation logic</p></li><li><p>A subtle data contract expectation between two services</p></li><li><p>An error handling branch that swallowed important context</p></li></ul><p>We changed several things:</p><ul><li><p>The validation rules</p></li><li><p>How we surfaced certain errors</p></li><li><p>Some tests to reflect more realistic conditions, not just the neat happy-path input</p></li></ul><p>That specific cluster of symptoms hasn&#8217;t resurfaced so far. More importantly, <em>my approach</em> to recurring issues changed.</p><p>This wasn&#8217;t &#8220;efficient engineer vs aware tester&#8221; as two different people.<br>It was the <strong>same engineer</strong> switching between shallow and deeper models under different pressure and incentives.</p><div><hr></div><h2>How Testing Sharpens Awareness</h2><p>Testing is not something that happens <em>after</em> the &#8220;real engineering&#8221; is done.<br>Testing <em>is</em> engineering: it&#8217;s modelling, experimenting, and evaluating under uncertainty.</p><p>When you spend a lot of time in a testing role, you start to notice patterns:</p><ul><li><p>The smell of a &#8220;just enough to make the test pass&#8221; fix</p></li><li><p>The way certain changes align with or fight the existing design</p></li><li><p>The blind spots in our oracles: things we never check because we didn&#8217;t imagine they could fail</p></li></ul><p>Here are some testing-flavoured heuristics that connect directly to awareness:</p><h3>When something keeps coming back</h3><p>Treat it as a <strong>cluster</strong>, not &#8220;the same bug.&#8221;</p><p>Ask:</p><ul><li><p>Where, exactly, have we seen this?</p></li><li><p>What was different each time: data, timing, user, environment?</p></li><li><p>What common decision or assumption could be behind all these failures?</p></li></ul><h3>When a fix feels too neat</h3><p>Check your oracles.</p><ul><li><p>Are we only verifying the behavior mentioned in the ticket?</p></li><li><p>What other side effects could this change have that we&#8217;re not checking?</p></li><li><p>If this area failed silently, what signal would we miss?</p></li></ul><h3>When pressure is high (&#8220;just patch it&#8221;)</h3><p>Consciously pick your depth for this decision.</p><p>Ask:</p><ul><li><p>If we go with the quick guard, what risks are we explicitly accepting?</p></li><li><p>Do we have a real plan to come back and investigate later, or is that a lie?</p></li><li><p>Who needs to know that we&#8217;re taking this shortcut?</p></li></ul><p>That&#8217;s real context-driven thinking:<br>not &#8220;always go deep&#8221; or &#8220;always be fast,&#8221; but <strong>choosing how deep to go given risk, constraints, and stakes.</strong></p><div><hr></div><h2>Engineers in Test as Awareness Multipliers</h2><p>People working in a test-heavy role aren&#8217;t &#8220;gatekeepers after the fact.&#8221;<br>They are engineers whose primary tool is <strong>questioning and experimenting</strong>.</p><p>Good test engineers act as <strong>awareness multipliers</strong>:</p><ul><li><p>They ask uncomfortable &#8220;what if&#8221; questions</p></li><li><p>They model user behavior the system was never designed for</p></li><li><p>They reveal interactions nobody considered when the feature was specced</p></li></ul><p>Concrete ways this multiplies awareness for the whole team:</p><ul><li><p><strong>System awareness</strong><br>Exploring integrations and edges, not just unit-level behavior.</p></li><li><p><strong>Stakeholder awareness</strong><br>Thinking in real user flows, not just demo scripts.</p></li><li><p><strong>Risk awareness</strong><br>Choosing what to explore based on impact, not just ease or habit.</p></li></ul><p>A simple example:</p><p>An engineer changes a discount-calculation function and &#8220;all tests pass.&#8221;</p><p>The engineer in a test role comes in and asks:</p><ul><li><p>&#8220;What happens when this overlaps with a promo code?&#8221;</p></li><li><p>&#8220;What if the user&#8217;s currency changes mid-session?&#8221;</p></li><li><p>&#8220;What does support see when this misbehaves?&#8221;</p></li></ul><p>Suddenly the system looks different.<br>Not because the original engineer was stupid, but because someone brought in a different awareness lens.</p><p>Same profession. Different stance.</p><div><hr></div><h2>Tradeoffs, Not Slogans</h2><p>I&#8217;m not going to claim &#8220;awareness always wins.&#8221; It doesn&#8217;t.</p><p>Sometimes:</p><ul><li><p>The organization does not value awareness at all</p></li><li><p>The pressure is high enough that going deeper will cost you more than it&#8217;s worth</p></li><li><p>The risk is genuinely small and a quick guard really <em>is</em> the right call</p></li></ul><p>Awareness doesn&#8217;t mean &#8220;always go deep.&#8221;<br>It means: <strong>know what you&#8217;re trading away when you stay shallow.</strong></p><p>If there&#8217;s one habit worth stealing from this:</p><blockquote><p>Whenever you&#8217;re about to ship a fix, ask:<br>&#8220;What am I assuming, and what happens if I&#8217;m wrong?&#8221;</p></blockquote><p>That single question has saved me more pain than any automation framework.</p><p>Efficiency is useful. Tickets need to move.<br>But if you train yourself only to move fast, you&#8217;ll never see what you&#8217;re running past.</p><p>Awareness isn&#8217;t in your tooling.<br>It&#8217;s in your models, your questions, and your willingness to look beyond the ticket in front of you.</p><p>That&#8217;s the part that makes you more than just an efficient engineer. It makes you a dangerous one in the right way.</p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;fd365367-bf26-4913-ab8e-a29ccd13fac2&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:2,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;a9a73c70-764f-4d87-9aef-47e4922d50ff&quot;,&quot;caption&quot;:&quot;What I learned as the first (and only) tester in a startup&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Testing Is a Social Activity &#8212; Not a Solo Act&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-07-07T12:12:29.887Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0177ae9e-ed5c-49ea-8568-ab769b2eee47_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-a-social-activity-not&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:167713664,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;111759e0-b69a-4915-b669-c1a486518e2e&quot;,&quot;caption&quot;:&quot;Impostor syndrome is not a motivational problem. It is a signal.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#127917; Overcoming Impostor Syndrome in Software Testing&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a Software Test Engineer. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-01-13T11:55:12.141Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8d1ea418-88b5-4a9f-a60a-e74434c9d11d_446x440.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/overcoming-impostor-syndrome-in-testing&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:154745647,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:1,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/be-an-aware-engineer-not-just-an/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/be-an-aware-engineer-not-just-an/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Moving Beyond Checkbox Risk Analysis]]></title><description><![CDATA[Rethinking Risk in Testing]]></description><link>https://www.lifeofqa.com/p/moving-beyond-checkbox-risk-analysis</link><guid isPermaLink="false">https://www.lifeofqa.com/p/moving-beyond-checkbox-risk-analysis</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Sun, 16 Nov 2025 13:44:19 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/37d36f59-8206-44f4-9d1c-c794147859f2_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In testing, we eventually confront an unavoidable fact:</p><p><strong>We cannot test everything.</strong></p><p>Once you accept that, the real question becomes:</p><p><strong>If testing is necessarily incomplete, how do we decide what to test first?</strong></p><p>Many organizations treat risk based testing as a formula:<br>probability &#215; impact &#215; proximity = priority.</p><p>But real projects do not behave like spreadsheets.<br>Risk is not something you calculate.<br>Risk is something you model, explore and continually update.</p><p>Risk is a relationship between the things we value and the things that may threaten those values.<br>Whenever information is incomplete, the threat increases.</p><p>Every critical bug I have found came from a risk we misunderstood, ignored or never modeled in the first place.</p><p>This is not theory. Let me show you.</p><div><hr></div><h2>&#128293; A Real Case: The Low Risk Change That Broke Three Systems</h2><p>We recently made a small update to a helper service in one of our product flow.<br>By all conventional metrics, this looked low risk:</p><p>&#8226; minimal code change<br>&#8226; stable component<br>&#8226; no known sensitive dependencies<br>&#8226; no business logic modification</p><p>Everyone agreed it was safe, including me.</p><p>During end to end testing, an unrelated subsystem failed.<br>Then two more.</p><p>The updated helper returned a payload with a slightly different shape.<br>Upstream, this looked trivial.<br>Downstream, it was catastrophic.</p><p>Three stable components crashed quietly in the background.<br>It was like changing a screw in one room and watching the lights go out in three others.</p><p>We all missed it because we all assumed it was safe.</p><p><strong>The highest risk was not the change.<br>It was the assumption of safety.</strong></p><p>This is why probability and impact alone are inadequate.</p><div><hr></div><p><em>&#127793; <strong>Quick Pause</strong></em></p><p><em>If you are finding this interesting and want more stories and insights like this, consider subscribing to LifeOfQA.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>How I Model Risk Today</h2><p>Risk analysis is not a phase.<br>It is an ongoing investigative activity.</p><p>Here are the seven questions I use as operational heuristics that guide test design.</p><p><strong>1. What do I believe is true</strong></p><p>Start with assumptions so you can challenge them.</p><p><strong>2. What evidence supports those beliefs</strong></p><p>Confidence is not evidence. Past stability predicts nothing.</p><p><strong>3. What do I not know yet</strong></p><p>Unknowns are where risk hides and grows.</p><p><strong>4. Where is the biggest potential for surprise</strong></p><p>Surprises cluster around complexity, refactoring and integration boundaries.</p><p><strong>5. What is happening in the product right now</strong></p><p>Releases, migrations and active development areas shift proximity constantly.</p><p><strong>6. If this fails, who is impacted and how severely</strong></p><p>Risk always connects to stakeholder value.</p><p><strong>7. What depends on what</strong></p><p>Dependencies multiply risk in unpredictable ways.</p><p>These are not steps.<br>They are heuristics that refine my models and shape my test coverage.</p><p>Now let us apply them.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BQX2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BQX2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 424w, https://substackcdn.com/image/fetch/$s_!BQX2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 848w, https://substackcdn.com/image/fetch/$s_!BQX2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 1272w, https://substackcdn.com/image/fetch/$s_!BQX2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BQX2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png" width="2268" height="1692" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d408cc5c-48f0-49e6-b39c-c3280c80c407_2268x1692.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1692,&quot;width&quot;:2268,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:264814,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/178958208?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd408cc5c-48f0-49e6-b39c-c3280c80c407_2268x1692.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BQX2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 424w, https://substackcdn.com/image/fetch/$s_!BQX2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 848w, https://substackcdn.com/image/fetch/$s_!BQX2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 1272w, https://substackcdn.com/image/fetch/$s_!BQX2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2c5464-5685-4760-a555-a21fccc2915e_2268x1692.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Risk-Based Testing is a continuous loop of modeling, evaluating, learning, and reprioritizing. It evolves as your understanding evolves.</figcaption></figure></div><div><hr></div><h2>A Realistic Testing Decision With No Clean Answer</h2><p>We need to decide how to spend our next testing window.<br>Two areas are under consideration.</p><p><strong>A. Billing Retry Logic</strong></p><ul><li><p>Rarely triggered</p></li><li><p>Unknown failure probability</p></li><li><p>High financial and trust impact</p></li><li><p>Medium proximity</p></li><li><p>Heavy integration dependencies</p></li></ul><p><strong>B. Theme Switcher</strong></p><ul><li><p>Frequently used</p></li><li><p>Low business impact</p></li><li><p>Recently refactored</p></li><li><p>High proximity</p></li><li><p>Breakage mostly visible in UI</p></li></ul><p>At this point, most testers still choose based on gut feel.<br>But gut feel without a model is guessing.</p><div><hr></div><h3>Applying the Heuristics</h3><p><strong>Fresh code</strong><br>Theme switcher</p><p><strong>High uncertainty</strong><br>Billing</p><p><strong>Stakeholder impact</strong><br>Billing users lose money. Theme users lose aesthetics.</p><p><strong>Surprise potential</strong><br>Billing integrations carry deeper risk</p><p><strong>Proximity this week</strong><br>Both shift based on the release timeline</p><p><strong>Dependency surface</strong><br>Billing touches far more systems</p><div><hr></div><h3>So what do we test first</h3><p>We test the refactored theme switcher first.<br>It is fast to evaluate, and quick feedback exposes shallow breakage.</p><p>Then we invest in deeper and more exploratory testing around billing.<br>Billing has fewer obvious bugs, but far more potential for systemic failure.<br>This requires dependency mapping, integration probes, scenario exploration and real time observation.</p><p>This order is not formulaic.<br>It is context driven.<br>The moment your model changes, your priority should change with it.</p><div><hr></div><h2>&#129504; Final Thought</h2><p>Risk analysis is not about scoring features.<br>It is about exposing gaps in our understanding and updating our models as we learn.</p><p>When testers stop pretending they have complete information, they stop testing for coverage and start testing for insight.</p><p>Insight is the real currency of testing.</p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;96e25642-3e7a-4b87-90d6-ddff9f71ebcc&quot;,&quot;caption&quot;:&quot;What I learned as the first (and only) tester in a startup&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Testing Is a Social Activity &#8212; Not a Solo Act&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-07-07T12:12:29.887Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0177ae9e-ed5c-49ea-8568-ab769b2eee47_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-a-social-activity-not&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:167713664,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;f5f331b0-99bc-43b6-ae2e-1355c7bd689b&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/moving-beyond-checkbox-risk-analysis/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/moving-beyond-checkbox-risk-analysis/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Before You Automate, Ask Better Questions]]></title><description><![CDATA[What a simple interview prompt revealed about mindset]]></description><link>https://www.lifeofqa.com/p/before-you-automate-ask-better-questions</link><guid isPermaLink="false">https://www.lifeofqa.com/p/before-you-automate-ask-better-questions</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Sun, 09 Nov 2025 06:39:05 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/1ceab769-174e-4290-88fd-2c3206c346b8_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>What a simple interview prompt revealed about mindset</p><p>I often ask candidates to automate a short flow:</p><blockquote><p>Go to the dashboard</p><p>Log in with default credentials</p><p>Create a new user</p><p>Log out and log in again as the new user</p></blockquote><p>Most people jump straight to tools. &#8220;I&#8217;ll use Selenium, Cypress, or Playwright. I&#8217;ll open the browser, click here, then there.&#8221; That tells me they can script. It does not tell me they can test.</p><p><em>Quick pause: if you&#8217;re finding this interesting already, hit subscribe to LifeOfQA so you don&#8217;t miss future posts like this.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p>This post is about what I expected to hear, why it matters, and what both candidates and hiring managers should take from this.</p><div><hr></div><p><strong>What I heard vs what I hoped to hear</strong></p><p><strong>What I heard:</strong></p><p>A list of steps and a tool name. No questions about purpose, risk, or the layer where this check belongs.</p><p><strong>What I hoped to hear:</strong></p><p>Short, clear questions that reveal intent.</p><p>What are we trying to learn? Which layer is appropriate? Is this for regression, smoke, or only to seed data? What are the constraints around data, environments, and CI?</p><p>I was not looking for a perfect framework plan. I was looking for judgment.</p><div><hr></div><p><strong>Why candidates jump straight to tools</strong></p><ul><li><p>Industry pressure: tool names get treated like skill badges.</p></li><li><p>Past incentives: teams reward the count of tests, not the value of information.</p></li><li><p>Interview anxiety: naming a popular tool feels safer than probing the problem.</p></li><li><p>Habits from tutorials: most teach clicking paths, not test design.</p></li></ul><p>None of this makes someone a bad tester. It shows where the focus has been. The fix is to practice asking for context first.</p><p><strong>Why context questions matter</strong></p><ul><li><p>Signal over noise: without a goal, you collect the wrong signals.</p></li><li><p>Right layer, less pain: where you automate decides stability, speed, and cost.</p></li><li><p>Faster feedback: good questions surface constraints early and save weeks later.</p></li><li><p>Shared understanding: when a tester seeks purpose, developers trust the checks more.</p></li></ul><div><hr></div><p><strong>What I mean by &#8220;automation mindset&#8221;</strong></p><ul><li><p>Automation is a way to learn about the product at speed.</p></li><li><p>Context first. Layers next. Tools last.</p></li><li><p>Choose the lightest check that gives the most useful information with the least noise.</p></li><li><p>Treat data, cleanup, and reporting as part of the design.</p></li></ul><p><strong>What candidates should do in this question</strong></p><p>You do not need to pitch a tool. Start with curiosity.</p><ul><li><p>Ask for the purpose of the check.</p></li><li><p>Clarify what success looks like.</p></li><li><p>Identify the layer where the signal is strongest.</p></li><li><p>Call out constraints like unique data, environment limits, and CI.</p></li><li><p>Explain the tradeoffs simply.</p></li></ul><p>That is enough to show judgment.</p><p><strong>Why hiring managers should keep asking this question</strong></p><ul><li><p>It exposes thinking in minutes.</p></li><li><p>It separates tool driving from test design.</p></li><li><p>It spotlights communication, risk sense, and pragmatism.</p></li><li><p>It predicts maintenance cost and CI health better than a code kata.</p></li></ul><p>A simple rubric helps: Did they seek context, choose a sensible layer, consider data and CI, and explain tradeoffs clearly?</p><div><hr></div><h4><strong>Takeaways</strong></h4><ul><li><p>Do not start with which tool. Start with what we want to learn.</p></li><li><p>Good automation is not about reproducing clicks. It is about producing insight.</p></li><li><p>Asking for context is not delay. It is design.</p></li><li><p>Hiring or interviewing, look for curiosity before code.</p></li></ul><div><hr></div><p>If you found this helpful, stay connected with Life of QA for more real-world testing experiences, tips, and lessons from the journey!</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/before-you-automate-ask-better-questions/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/before-you-automate-ask-better-questions/comments"><span>Leave a comment</span></a></p>]]></content:encoded></item><item><title><![CDATA[Can Developers Test?]]></title><description><![CDATA[Can Developers Test?]]></description><link>https://www.lifeofqa.com/p/can-developers-test</link><guid isPermaLink="false">https://www.lifeofqa.com/p/can-developers-test</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Tue, 14 Oct 2025 07:13:34 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/7c258a04-705b-436e-a2e6-f8701aad620f_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Can Developers Test?</strong></p><p>Yes.</p><p>Now let&#8217;s stop pretending that answer settles anything.</p><p>I&#8217;ve worked with developers who test better than many people with &#8220;QA&#8221; in their title. They ask hard questions early. They explore before code is &#8220;done.&#8221; They explain risks, write meaningful unit tests, and catch failures long before anyone else sees them.</p><p>Good developers test.<br>Some test <em>exceptionally</em> well.</p><p>So why do teams still struggle with quality?<br>And why do dedicated testers still matter?</p><h2>Because Most Developer Testing Is Confirmation</h2><p>Developers mostly test to confirm intent.</p><blockquote><p><em>&#8220;I built this to work like X. Let me check that it works like X.&#8221;</em></p></blockquote><p>That&#8217;s not laziness. That&#8217;s logic.</p><p>If you&#8217;re building something, your mental model is shaped by:</p><ul><li><p>What you intended</p></li><li><p>What you implemented</p></li><li><p>What you believe users will do</p></li></ul><p>Developer tests usually answer:</p><ul><li><p>Did I implement the design correctly?</p></li><li><p>Did I break existing behavior?</p></li><li><p>Does the code do what I think it does?</p></li></ul><p>That work is valuable.<br>It is also incomplete.</p><h2>Testing Is About Discovery, Not Comfort</h2><p>Real testing is not about proving we&#8217;re right.<br>It&#8217;s about discovering how we might be wrong.</p><p>Testers deliberately look for:</p><ul><li><p>Situations nobody designed for</p></li><li><p>Interactions nobody thought about</p></li><li><p>Usage nobody <em>wanted</em> to imagine</p></li></ul><p>Not because testers are pessimists,<br>but because risk doesn&#8217;t care about intent.</p><h3>A Simple Example</h3><p>A developer verifies:</p><ul><li><p>The cart total is correct</p></li><li><p>Discounts apply</p></li><li><p>Taxes calculate properly</p></li></ul><p>A tester explores:</p><ul><li><p>Rounding when currency changes mid-session</p></li><li><p>Localization breaking decimal precision</p></li><li><p>Discounts stacking in unexpected orders</p></li><li><p>Edge cases when inventory updates during checkout</p></li></ul><p>Same feature.<br>Different lens.</p><p>One confirms.<br>The other <em>investigates</em>.</p><h2>Blind Spots Are Human, Not Personal</h2><p>Developers aren&#8217;t bad at testing.<br>They&#8217;re biased, just like everyone else.</p><p>Creation creates attachment.<br>Familiarity hides risk.<br>Knowledge narrows vision.</p><p>When you <em>know</em> how something is supposed to work, your brain quietly edits out possibilities that feel &#8220;unlikely&#8221; or &#8220;wrong.&#8221;</p><p>Testers exist to resist that comfort.</p><p>We intentionally question:</p><ul><li><p>&#8220;What if the user doesn&#8217;t do the right thing?&#8221;</p></li><li><p>&#8220;What if the environment is hostile?&#8221;</p></li><li><p>&#8220;What if this assumption is false?&#8221;</p></li></ul><p>That mindset doesn&#8217;t happen accidentally.<br>It&#8217;s practiced.</p><h2>Testing Is a Skill, Not a Phase</h2><p>Testing is not:</p><ul><li><p>Running scripts</p></li><li><p>Clicking through acceptance criteria</p></li><li><p>Checking boxes after development</p></li></ul><p>Testing is skilled exploration.</p><p>It involves:</p><ul><li><p>Risk modeling</p></li><li><p>Heuristics</p></li><li><p>Session-based exploration</p></li><li><p>Scenario analysis</p></li><li><p>Pattern recognition</p></li><li><p>Learning from failure signals</p></li></ul><p>These aren&#8217;t artifacts.<br>They&#8217;re thinking tools.</p><p>Developers <em>can</em> use them.<br>Testers specialize in wielding them deliberately.</p><h2>Shared Responsibility, Unequal Perspective</h2><p>On strong teams, testing isn&#8217;t thrown over a wall.<br>It&#8217;s shared.</p><p>But shared responsibility does <strong>not</strong> mean identical contribution.</p><p>Developers bring:</p><ul><li><p>Deep system knowledge</p></li><li><p>Implementation insight</p></li><li><p>Fast feedback loops</p></li></ul><p>Testers bring:</p><ul><li><p>Skepticism without ownership bias</p></li><li><p>Curiosity without confirmation pressure</p></li><li><p>Experience seeing how systems fail in the real world</p></li></ul><p>The tension between these perspectives is healthy.<br>It&#8217;s where learning happens.</p><h2>So, Can Developers Test?</h2><p>Of course.</p><p>Many already do.</p><p>But testing is more than checking correctness.<br>It&#8217;s disciplined curiosity.<br>It&#8217;s courage to doubt the obvious.<br>It&#8217;s investigation in the presence of uncertainty.</p><p>That&#8217;s not just a task.<br>It&#8217;s a craft.</p><p>And when teams respect that craft,<br>quality stops being accidental.</p><div><hr></div><h3><strong>Further Reading</strong></h3><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;53de7374-59a7-4dcc-bffa-1480a7792395&quot;,&quot;caption&quot;:&quot;What I learned as the first (and only) tester in a startup&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Testing Is a Social Activity &#8212; Not a Solo Act&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-07-07T12:12:29.887Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0177ae9e-ed5c-49ea-8568-ab769b2eee47_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-a-social-activity-not&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:167713664,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;527bc342-0816-4a31-a6e9-4e6b1c325d75&quot;,&quot;caption&quot;:&quot;I&#8217;ve been thinking about something lately, something I wish every fellow tester, every new tester, every curious learner could hear.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Don&#8217;t Just Follow &#8212; Explore, Fail, and Build Your Own Way&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-06-27T06:44:49.628Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b738dcd-3622-4300-9f77-a88015539fae_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/dont-just-follow-explore-fail-and&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:166878626,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;76122357-3145-433b-91ff-4bb841ad0450&quot;,&quot;caption&quot;:&quot;&#8220;They Said Testing Is Dead&#8221; &#8212; But I&#8217;m Still Here&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Testing Is Dead&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-06-22T14:03:52.648Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00a5c6b0-27f1-4272-89d9-a5c5948ec74b_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-dead&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:166523936,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;e36aba9f-96e3-4cab-bee0-4d29b60b76c6&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/can-developers-test/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/can-developers-test/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Stop Forcing Visibility]]></title><description><![CDATA[Stop Forcing Visibility]]></description><link>https://www.lifeofqa.com/p/stop-forcing-visibility</link><guid isPermaLink="false">https://www.lifeofqa.com/p/stop-forcing-visibility</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Fri, 10 Oct 2025 04:54:16 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/550c1c84-22b0-455f-b46e-1a5662a61d72_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>Stop Forcing Visibility</h2><p>If you want to write, write.<br>If you want to read, read.<br>If you want to share, share.<br>If you don&#8217;t, don&#8217;t.</p><p>None of this is mandatory.</p><p>Yet lately, it feels like being visible has become an unspoken requirement.<br>Post regularly. Comment often. Stay present. Stay relevant.</p><p>Not because you have something to say, but because disappearing feels risky.</p><p>I see smart, capable professionals slowly drifting into performance mode. Not learning mode. Not thinking mode. Just staying &#8220;active&#8221; so the algorithm doesn&#8217;t forget them. Over time, activity becomes a proxy for competence, and presence gets mistaken for progress.</p><p>That&#8217;s a dangerous trade.</p><h2>Visibility Is Not the Same as Value</h2><p>There&#8217;s a growing body of research describing something called social media production pressure. The constant sense that we must maintain presence and perform availability to stay relevant.</p><p>In simpler terms, we&#8217;ve confused motion with meaning.</p><p>Visibility can create opportunity, yes. But forced visibility creates noise. And noise rarely leads to mastery. Some of the most effective testers, developers, and leaders I know don&#8217;t post much, or at all. Not because they&#8217;re hiding, but because they&#8217;re busy learning deeply, solving hard problems, and doing work that doesn&#8217;t fit neatly into a feed.</p><p>Their value doesn&#8217;t depend on being seen. It shows up when it&#8217;s needed.</p><h2>The Real Cost of Forced Presence</h2><p>The problem isn&#8217;t sharing. The problem is sharing out of fear.</p><p>Fear of being forgotten.<br>Fear of missing out.<br>Fear that silence will be interpreted as stagnation.</p><p>When that fear drives behavior, learning becomes secondary. Reflection becomes rushed. Writing turns into performance. And instead of asking &#8220;What am I trying to understand?&#8221;, we start asking &#8220;What should I post today?&#8221;</p><p>That shift is subtle, but it&#8217;s corrosive.</p><h2>Share With Intent, Not Obligation</h2><p>There is no rule that says you must post to prove your skill.</p><p>If writing helps you think, write.<br>If teaching helps you learn, share.<br>If speaking energizes you, speak.</p><p>But if you&#8217;re posting just to stay visible, pause. Nothing meaningful grows under pressure to perform.</p><p>Being quiet for a while is not a career risk. Losing the ability to focus, think deeply, and do honest work is.</p><h2>What Actually Endures</h2><p>Recruiters don&#8217;t hire feeds. Teams don&#8217;t ship posts. Organizations don&#8217;t succeed because someone trended.</p><p>They succeed because people can reason clearly, solve problems, and learn faster than the situation changes. Visibility might open a door. Only capability keeps it open.</p><p>Optimize for learning, not reach.<br>Share work, not presence.<br>Speak when you have something to say, not something to maintain.</p><p>You don&#8217;t owe the internet consistency.<br>You owe yourself clarity, curiosity, and integrity in your work.</p><h2>Final Thought</h2><p>The pressure to be visible is real.<br>But participation is optional.</p><p>Silence is not failure.<br>Forced presence is.</p><p>Do the work that makes you better, even when nobody is watching. That kind of progress doesn&#8217;t need an audience.</p><div><hr></div><h2><strong>Further Reading</strong></h2><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;db264dc8-36fe-4556-9dcf-2095d12787c5&quot;,&quot;caption&quot;:&quot;&#8220;They Said Testing Is Dead&#8221; &#8212; But I&#8217;m Still Here&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Testing Is Dead&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-06-22T14:03:52.648Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00a5c6b0-27f1-4272-89d9-a5c5948ec74b_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-dead&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:166523936,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;56ce2240-9b29-437c-a155-5aa9012f8114&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;835e654e-37dc-4a71-8775-b49f490f9060&quot;,&quot;caption&quot;:&quot;I&#8217;ve been thinking about something lately, something I wish every fellow tester, every new tester, every curious learner could hear.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Don&#8217;t Just Follow &#8212; Explore, Fail, and Build Your Own Way&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-06-27T06:44:49.628Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b738dcd-3622-4300-9f77-a88015539fae_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/dont-just-follow-explore-fail-and&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:166878626,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;15c6c76d-8efc-45a1-a2b1-236354067e24&quot;,&quot;caption&quot;:&quot;What I learned as the first (and only) tester in a startup&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Testing Is a Social Activity &#8212; Not a Solo Act&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-07-07T12:12:29.887Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0177ae9e-ed5c-49ea-8568-ab769b2eee47_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-a-social-activity-not&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:167713664,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/stop-forcing-visibility/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/stop-forcing-visibility/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Demystifying HTTP]]></title><description><![CDATA[Beyond the Basics]]></description><link>https://www.lifeofqa.com/p/demystifying-http</link><guid isPermaLink="false">https://www.lifeofqa.com/p/demystifying-http</guid><pubDate>Thu, 25 Sep 2025 07:41:07 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/b761e531-1d7f-4429-a038-b96028f0834c_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When we test APIs, it is easy to focus only on the tools like Postman or automated scripts. But the real base of API testing is <strong>HTTP itself</strong>.<br>If you do not understand how HTTP works, your testing will stay shallow.</p><p>This guide explains the main ideas every Test Engineer should know and how to move from simple checks to real exploratory testing.</p><p><em>Quick pause: if you&#8217;re finding this interesting already, hit subscribe to <strong>LifeOfQA</strong> so you don&#8217;t miss future posts like this.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>1. HTTP Methods: </h2><p><strong>GET</strong> &#8211; Retrieve data</p><ul><li><p>Parameters go in the URL (query or path).</p></li><li><p>Should be safe, give the same result if run twice, and can be cached.</p></li></ul><p><strong>POST</strong> &#8211; Create new data</p><ul><li><p>Data is sent in the request body (JSON or XML).</p></li><li><p>Not safe to repeat. Not cached.</p></li></ul><p><strong>PUT / PATCH</strong> &#8211; Update existing data</p><ul><li><p><strong>PUT</strong> replaces the whole resource.</p></li><li><p><strong>PATCH</strong> updates only part of it.</p></li></ul><p><strong>DELETE</strong> &#8211; Remove data.</p><blockquote><p>&#128270; <strong>Tester&#8217;s View:</strong> These are common practices, not laws. Old systems or business needs may break these rules. Your job is to ask <strong>why</strong>.<br>If you see a GET call that deletes records, find out if it is on purpose or a risk.</p></blockquote><h3>Example: Request and Response</h3><pre><code><code>GET /users/123 HTTP/1.1
Host: api.example.com
Authorization: Bearer &lt;token&gt;
</code></code></pre><pre><code><code>HTTP/1.1 200 OK
Content-Type: application/json

{
  &#8220;id&#8221;: 123,
  &#8220;name&#8221;: &#8220;Deepak&#8221;,
  &#8220;role&#8221;: &#8220;QA Engineer&#8221;
}
</code></code></pre><div><hr></div><h2>2. CRUD Mapping</h2><p>CRUD actions map to HTTP like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4bZW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4bZW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 424w, https://substackcdn.com/image/fetch/$s_!4bZW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 848w, https://substackcdn.com/image/fetch/$s_!4bZW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 1272w, https://substackcdn.com/image/fetch/$s_!4bZW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4bZW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png" width="1386" height="454" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:454,&quot;width&quot;:1386,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:36751,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/174510596?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4bZW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 424w, https://substackcdn.com/image/fetch/$s_!4bZW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 848w, https://substackcdn.com/image/fetch/$s_!4bZW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 1272w, https://substackcdn.com/image/fetch/$s_!4bZW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcbb5242c-f86d-45f2-a002-fb5a0ad5eac6_1386x454.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p>&#128270; <strong>Tester&#8217;s View:</strong> Organize your Postman collections or automation scripts around these CRUD actions. But do not assume the mapping is always correct. Sometimes &#8220;Update&#8221; is done with POST or &#8220;Delete&#8221; with GET. Use this table as a guide to explore, not a rule to enforce.</p></blockquote><div><hr></div><h2>3. Status Codes: More Than Numbers</h2><p>HTTP status codes show what happened:</p><p><strong>1xx &#8211; Information</strong><br>Rare in daily API testing.</p><p><strong>2xx &#8211; Success</strong></p><ul><li><p><strong>200 OK</strong> &#8211; Request worked.</p></li><li><p><strong>201 Created</strong> &#8211; New resource created.</p></li><li><p><strong>204 No Content</strong> &#8211; Success with no body.</p></li></ul><p><strong>3xx &#8211; Redirection</strong></p><ul><li><p><strong>301 Moved Permanently</strong></p></li><li><p><strong>302 Found</strong></p></li></ul><p><strong>4xx &#8211; Client Errors</strong></p><ul><li><p><strong>400 Bad Request</strong> &#8211; Invalid syntax or data.</p></li><li><p><strong>401 Unauthorized</strong> &#8211; Missing or bad credentials.</p></li><li><p><strong>403 Forbidden</strong> &#8211; Auth present but access denied.</p></li><li><p><strong>404 Not Found</strong> &#8211; Resource or endpoint does not exist.</p></li></ul><p><strong>5xx &#8211; Server Errors</strong></p><ul><li><p><strong>500 Internal Server Error</strong> &#8211; Unhandled server bug.</p></li><li><p><strong>502 Bad Gateway</strong> &#8211; Problem with upstream service.</p></li><li><p><strong>503 Service Unavailable</strong> &#8211; Server is overloaded or down.</p></li></ul><h3>What a &#8220;Status Error&#8221; Means</h3><ul><li><p><strong>4xx</strong>: The request is wrong. Maybe bad data, missing token, or a broken header.</p></li><li><p><strong>5xx</strong>: The request is fine but the server failed. Maybe a database issue or code bug.</p></li></ul><blockquote><p>&#128270; <strong>Tester&#8217;s View:</strong> Status codes are signals, not final proof. A 200 OK can still return a broken or empty payload. Always check the response body and headers, not just the code.</p></blockquote><div><hr></div><h3>Example: A Failing POST</h3><pre><code><code>POST /users HTTP/1.1
Host: api.example.com
Content-Type: application/json

{
  &#8220;name&#8221;: &#8220;&#8221;,
  &#8220;email&#8221;: &#8220;qa@example.com&#8221;
}
</code></code></pre><pre><code><code>HTTP/1.1 400 Bad Request
Content-Type: application/json

{
  &#8220;error&#8221;: &#8220;Name cannot be empty&#8221;
}
</code></code></pre><p>This is a <strong>client-side</strong> error. Your bug report should show the exact request and full response, and explain that the name field is empty.</p><div><hr></div><h2>4. Reporting Bugs That Matter</h2><p>When something fails, give developers enough to reproduce and fix it:</p><p>Include:</p><ul><li><p><strong>Endpoint and method</strong> (for example <code>POST /users</code>)</p></li><li><p><strong>Full request payload</strong> (body, headers, query params)</p></li><li><p><strong>Exact response</strong> (status code, headers if useful, and body)</p></li><li><p><strong>Environment details</strong> (staging or production, build version)</p></li><li><p><strong>Steps or preconditions</strong> (for example, &#8220;User must be logged in with role X&#8221;)</p></li></ul><blockquote><p>Example bug report:<br>POST /users gives <strong>500 Internal Server Error</strong> when sending valid payload:</p><pre><code><code>{&#8221;name&#8221;:&#8221;Deepak&#8221;,&#8221;email&#8221;:&#8221;qa@example.com&#8221;}
</code></code></pre><p>Expected: 201 Created.<br>Actual: 500 with message &#8220;Null reference in UserService&#8221;.<br>Reproducible on staging build v1.3.2.</p></blockquote><p><strong>Good bug notes save hours of back-and-forth.</strong></p><div><hr></div><h2>5. Exploratory API Testing Tips</h2><p>Go beyond scripted checks. Explore how the API behaves under stress or wrong use:</p><ul><li><p>Try other methods: use PUT where only GET is documented.</p></li><li><p>Change payload size: send very large or empty bodies.</p></li><li><p>Break headers: remove <code>Content-Type</code>, send wrong values.</p></li><li><p>Play with auth: expired tokens, no tokens, wrong roles.</p></li><li><p>Test with many requests at the same time.</p></li><li><p>Simulate slow or broken networks.</p></li></ul><p>These help you find hidden problems and weak spots.</p><div><hr></div><h2>6. Seeing Beyond Your Tool</h2><p>Postman is useful, but you can learn more by watching real traffic:</p><ul><li><p>Use a proxy such as <strong>Fiddler</strong>, <strong>Burp Suite</strong>, or <strong>mitmproxy</strong> to view live requests and responses.</p></li><li><p>Capture traffic from mobile apps or browsers to see what users really send.</p></li><li><p>Compare what the front end calls with what the API docs promise.</p></li></ul><div><hr></div><h2>7. Security and Risk Checks</h2><p>HTTP issues can lead to security holes:</p><ul><li><p><strong>Method misuse</strong> like GET deleting data can allow CSRF attacks.</p></li><li><p><strong>Status code leaks</strong> can show internal details, for example stack traces in 500 errors.</p></li><li><p><strong>Caching problems</strong>: cache poisoning or sharing private data.</p></li></ul><p>&#128270; <strong>Risk Thinking:</strong> When methods or status codes are used wrongly, ask:</p><ul><li><p>Could this leak sensitive information?</p></li><li><p>Could someone use this unexpected behavior to attack the system?</p></li><li><p>What is the business impact if this reaches production?</p></li></ul><div><hr></div><h2>8. Caching: The Bigger Picture</h2><ul><li><p><strong>GET</strong> responses can be cached in many places: browser, CDN, or reverse proxy.</p></li><li><p><strong>POST, PUT, DELETE</strong> should not be cached, but mistakes happen.</p></li><li><p>Distributed caches can return old data or be poisoned.</p></li></ul><blockquote><p>&#128270; <strong>Tester&#8217;s View:</strong> Test with and without cache. Use headers like <code>Cache-Control: no-cache</code> to force a fresh response. Check what happens when the cache is not in sync with the database.</p></blockquote><div><hr></div><h2>9. A Real Story: When HTTP Misled Me</h2><p>I once tested an API that gave <strong>200 OK</strong> even when a database write silently failed. Automation passed, but users later found missing data. The fix required adding proper <strong>409 Conflict</strong> and <strong>500 Internal Server Error</strong> codes.</p><p><em><strong>Lesson</strong>: A green status code is not proof of success. Always check the meaning of the response.</em></p><div><hr></div><h2>Closing Thoughts</h2><p>Knowing HTTP is the starting point. Expert testers go further:</p><ul><li><p>Treat common practices as guides, not laws.</p></li><li><p>Explore the edges: bad requests, slow networks, cache layers.</p></li><li><p>Think about risks: what could fail, mislead, or surprise?</p></li></ul><blockquote><p><em><strong>&#8220;Do not just check if it works. Explore how it might fail, mislead, or surprise you.&#8221;</strong></em></p></blockquote><p>That is how you move from simple checking to real <strong>quality insight</strong>.</p><div><hr></div><h3><strong>Further Reading</strong></h3><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;a9667583-8deb-4d08-a37a-9e18aa4356a0&quot;,&quot;caption&quot;:&quot;AI has crashed into our world of testing like a storm. Every week there&#8217;s a new &#8220;AI agent&#8221; or &#8220;copilot&#8221; promising speed, scalability, and even the death of testers. But here&#8217;s the uncomfortable truth: if we don&#8217;t use AI wisely, we risk making ourselves look foolish, lazy, or worse, replaceable.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Testers Should Use AI (Without Looking Foolish)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-22T12:23:15.952Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ba470e6-45e0-491e-af6e-0ddd5ec6f35b_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/how-testers-should-use-ai-without&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171631801,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:5,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;506cc0e6-7ead-4666-8f21-4c5a46ae7c26&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;3bca7c29-345c-48a0-8685-43dd10a036e6&quot;,&quot;caption&quot;:&quot;Every weekend, either on Saturday or Sunday, I visit a small caf&#233; just three kilometers from my home. It&#8217;s been part of my routine for the last ~ three years.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Cookies Explained by Coffee&#9749;&#65039;&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-06-21T16:27:06.718Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!s8h8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84d9cb3f-27d5-43c8-aa4b-f7e5f1fb137d_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/cookies-explained-by-coffee&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:166470713,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2282918,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/demystifying-http/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/demystifying-http/comments"><span>Leave a comment</span></a></p><div class="poll-embed" data-attrs="{&quot;id&quot;:380858}" data-component-name="PollToDOM"></div><p></p>]]></content:encoded></item><item><title><![CDATA[🚀 Invite Friends, Earn Rewards]]></title><description><![CDATA[LifeOfQA is growing because of readers like you.]]></description><link>https://www.lifeofqa.com/p/invite-friends-earn-rewards</link><guid isPermaLink="false">https://www.lifeofqa.com/p/invite-friends-earn-rewards</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Sat, 30 Aug 2025 17:16:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Xcn7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Xcn7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Xcn7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Xcn7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Xcn7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Xcn7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Xcn7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1883268,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/167791526?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Xcn7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Xcn7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Xcn7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Xcn7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F579f4055-8a35-4517-b7b5-d45e1a016dc9_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>LifeOfQA is growing because of readers like you. If you&#8217;ve found value here, imagine how much your friends, teammates, or colleagues could too.<br>And the best part? You don&#8217;t just help the community; you unlock exclusive sessions with me.</p><h2><strong>How it Works</strong></h2><ol><li><p><strong>Share LifeOfQA. </strong>Use the referral link below or the &#8220;Share&#8221; button on any post. Send it in a text, email, or on social media.</p></li></ol><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/leaderboard?&amp;utm_source=post&quot;,&quot;text&quot;:&quot;Refer a friend&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.lifeofqa.com/leaderboard?&amp;utm_source=post"><span>Refer a friend</span></a></p><ol start="2"><li><p><strong>Friends subscribe.</strong> Every new subscriber through your link counts.</p></li><li><p><strong>You earn rewards.</strong> The more referrals, the more time we get together.</p></li></ol><h2>&#127873; Rewards</h2><p>As your friends subscribe, you&#8217;ll unlock special benefits</p><ul><li><p><strong>5 Referrals &#8594; &#127909; 15-Minute Zoom Chat</strong><br><em>A quick power session with 1&#8211;2 sharp tips tailored to your testing challenges.</em></p></li><li><p><strong>10 Referrals &#8594; &#127909; 30-Minute Zoom Chat</strong><br><em>More time, more depth. We&#8217;ll go into smarter strategies and tools that actually work.</em></p></li><li><p><strong>20 Referrals &#8594; &#127909; THREE 40-Minute Zoom Chat</strong><br><em>A full-on deep dive (across <strong>THREE</strong> sessions) into your tough questions or career moves.</em></p></li></ul><h3>&#127942; Join the Leaderboard</h3><p>Every referral puts you on the public leaderboard. Want to see your name at the top? Start sharing today and let&#8217;s grow LifeOfQA together.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/leaderboard?&amp;utm_source=post&quot;,&quot;text&quot;:&quot;Visit the leaderboard&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.lifeofqa.com/leaderboard?&amp;utm_source=post"><span>Visit the leaderboard</span></a></p><p>Thank you for helping get the word out about LifeOfQA!</p>]]></content:encoded></item><item><title><![CDATA[How Testers Should Use AI (Without Looking Foolish)]]></title><description><![CDATA[AI has crashed into our world of testing like a storm.]]></description><link>https://www.lifeofqa.com/p/how-testers-should-use-ai-without</link><guid isPermaLink="false">https://www.lifeofqa.com/p/how-testers-should-use-ai-without</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Fri, 22 Aug 2025 12:23:15 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4ba470e6-45e0-491e-af6e-0ddd5ec6f35b_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>AI has crashed into our world of testing like a storm. Every week there&#8217;s a new &#8220;AI agent&#8221; or &#8220;copilot&#8221; promising speed, scalability, and even the death of testers. But here&#8217;s the uncomfortable truth: if we don&#8217;t use AI wisely, we risk making ourselves look foolish, lazy, or worse, replaceable.</p><p>At the recent <em><strong><a href="https://www.lambdatest.com/testmuconf-2025">Test&#956; Conference by LambdaTest</a></strong><a href="https://www.lambdatest.com/testmuconf-2025"> </a></em>on <em>&#8220;<strong>What Can Go Wrong with AI</strong>&#8221;</em>, I listened to some of the sharpest minds in testing:<em><strong> James Bach, Michael Bolton, Seema Prabhu, Benjamin Bischoff, and Brijesh Deb</strong></em>. They ripped apart the hype and shared both the dangers and the opportunities. Their words hit hard, and I couldn&#8217;t help but connect them back to how testers should actually approach AI.</p><p>Let me walk you through the highlights and what we testers should take away.</p><p><em>Quick pause: if you&#8217;re finding this interesting already, hit subscribe to <strong>LifeOfQA</strong> so you don&#8217;t miss future posts like this.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h3>1. Reputation is Fragile</h3><p>James opened with a hard truth:</p><p><em>&#8220;As soon as somebody knows that you use AI, they may assume the AI did all the work, not you.&#8221;</em></p><p>That stings. Imagine putting out solid work, only for people to dismiss it as &#8220;oh, AI did that.&#8221; If we lean too heavily on AI, we risk eroding the very reputation we&#8217;ve built through skill and judgment.</p><blockquote><p><strong>Takeaway for testers:</strong> Use AI as support, not as your replacement. Always leave your fingerprint of thinking.</p></blockquote><div><hr></div><h3>2. Don&#8217;t Outsource Your Brain</h3><p>Ben warned of &#8220;cognitive offloading.&#8221; The more we let AI think for us, the more we stop thinking at all.</p><p>That&#8217;s how critical thinking dies, not with a bang, but with endless prompts.</p><blockquote><p><strong>Takeaway for testers:</strong> Let AI spark ideas, but challenge them. Don&#8217;t accept the first shiny answer just because it looks convincing.</p></blockquote><div><hr></div><h3>3. The Trust Collapse</h3><p>Michael took it a step deeper:</p><p>&#8220;AI isn&#8217;t just eroding trust in tools. It&#8217;s eroding trust in everything.&#8221;</p><p>When LLMs spit out hallucinations, fake references, or confidently wrong answers, the danger isn&#8217;t just bad output. It&#8217;s the slow erosion of trust: in data, in reports, even in each other.</p><blockquote><p><strong>Takeaway for testers:</strong> Treat AI like an unreliable narrator. Always verify before acting.</p></blockquote><div><hr></div><h3>4. The Productivity Paradox</h3><p>This one hit me hard. James called it the productivity paradox of AI:</p><p>AI can produce results in seconds.</p><p>But to check them properly takes hours.</p><p>If you skip checking, you&#8217;re reckless.</p><p>If you do check, you might as well have done it yourself.</p><p>Sound familiar? I&#8217;ve been there. AI cleans up code but adds fake functions. Or it generates tests, but misses the critical ones. Faster doesn&#8217;t always mean better.</p><blockquote><p><strong>Takeaway for testers:</strong> Use AI for small, checkable tasks (like James&#8217;s logging experiment), not entire frameworks. Otherwise, you&#8217;ll lose more time than you gain.</p></blockquote><div><hr></div><h3>5. Bias: The Ugly Mirror</h3><p>Seema reminded us that bias in AI isn&#8217;t some alien invention. It&#8217;s our own reflection. Racist datasets, skewed patterns, over-represented &#8220;popular&#8221; cases&#8230; AI mirrors our ugliness back at us.</p><p>When testers rely on biased AI outputs (for test data, visual validation, triage), we risk baking exclusion into the product.</p><blockquote><p><strong>Takeaway for testers:</strong> Always question the dataset. Test for the invisible users, the ones AI might forget.</p></blockquote><div><hr></div><h3>6. The &#8220;Worst-Case&#8221; Scenario</h3><p>The scariest moment came when James shared what he&#8217;s seen in real companies:</p><p>CTOs firing testers because they think &#8220;AI will do all the testing now.&#8221;</p><p>This isn&#8217;t hypothetical. It&#8217;s happening. And it&#8217;s a bigger risk than any single bug. Because once management starts believing AI equals testing, human oversight gets pushed out of the picture.</p><blockquote><p><strong>Takeaway for testers:</strong> Never let your role be reduced to &#8220;AI prompt operator.&#8221; Our value is judgment, context, and human accountability.</p></blockquote><div><hr></div><h3>7. Where AI Actually Helps</h3><p>Okay, enough doom. The panel also shared some genuine positives:</p><ul><li><p><strong>Safety nets:</strong> James uses AI to pull out &#8220;testable elements&#8221; from user stories. Not as final tests, but as a safety net to spot what he might have missed.</p></li><li><p><strong>Rubber ducking:</strong> Ben treats AI as a &#8220;more sophisticated rubber duck,&#8221; a sparring partner for ideas.</p></li><li><p><strong>Mirrors:</strong> Michael sees AI as a mirror that reflects our bad habits in coding, security, and design.</p></li></ul><blockquote><p><strong>Takeaway for testers:</strong> AI shines when used as a thinking aid, not as an execution engine.</p></blockquote><div><hr></div><h3>8. Final Advice from the Panel</h3><p>Each panelist left testers with one piece of advice:</p><ul><li><p><strong>Ben:</strong> Learn AI. Use it. Stay skeptical.</p></li><li><p><strong>Michael:</strong> Never treat a pleasing demo as proof of reliability.</p></li><li><p><strong>Seema:</strong> Get your fundamentals right and reimagine your role.</p></li><li><p><strong>Brijesh:</strong> Never discount the human. Verify everything.</p></li></ul><p>Or in simpler words:<strong> Trust after you verify.</strong></p><div><hr></div><h3>Closing Thoughts</h3><p>Walking out of that discussion, one phrase kept ringing in my head:</p><p><strong>&#128073; Don&#8217;t use AI in a way that makes you look foolish.</strong></p><ul><li><p>Don&#8217;t brag about &#8220;AI wrote all my tests.&#8221;</p></li><li><p>Don&#8217;t ship code you don&#8217;t understand.</p></li><li><p>Don&#8217;t let AI erode your reputation or your curiosity.</p></li></ul><p>Use AI like a hunting dog. Let it sniff around, point you to things you might have missed. But remember, you&#8217;re the hunter. You pull the trigger.</p><p>That&#8217;s how testers should use AI: with brains fully engaged, reputation intact, and foolishness kept far away.</p><div><hr></div><h3>Final Words</h3><p>Testing has always been about human judgment in the face of complexity. AI doesn&#8217;t change that. It only makes our role more important. So, let&#8217;s experiment boldly, critique relentlessly, and never forget:</p><p><strong>AI may generate, but we evaluate.</strong></p><div><hr></div><h3>Further Reading</h3><p><em>If you found this useful, you might also enjoy these articles:</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;06cac58d-2edc-4dd4-b167-0c5b195a113c&quot;,&quot;caption&quot;:&quot;&#8220;They Said Testing Is Dead&#8221; &#8212; But I&#8217;m Still Here&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Testing Is Dead&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-06-22T14:03:52.648Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00a5c6b0-27f1-4272-89d9-a5c5948ec74b_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-dead&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:166523936,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;08f0446d-35f3-4243-8268-b81dd4370126&quot;,&quot;caption&quot;:&quot;Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;&#129504; Critical Thinking in Testing: When Things Get Messy&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:200170262,&quot;name&quot;:&quot;Deepak Karn&quot;,&quot;bio&quot;:&quot;&#128075; I am Deepak, a QA Engineer passionate about software testing. I enjoy exploring innovative testing approaches, sharing insights, and helping others navigate the world of software testing. Let&#8217;s learn and grow together!&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd89aef-73d7-46e4-808b-e24883e8873d_640x640.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-18T11:49:01.464Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171254729,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;LifeOfQA&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!7ABd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ca2b04c-1640-4028-b36a-37342a054521_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><h3>Bonus: Things I Remind Myself When Using GenAI</h3><p>Panel insights are great, but here&#8217;s my own checklist I use when working with AI:</p><ol><li><p><strong>State the intent</strong> &#8211; task, audience, constraints, format, length.</p></li><li><p><strong>Fence the scope</strong> &#8211; domain, region, timeframe, exclusions.</p></li><li><p><strong>Demand a rubric</strong> &#8211; ask the model how it will judge its own output.</p></li><li><p><strong>Probe for error</strong> &#8211; ask &#8220;what might be wrong or missing?&#8221;</p></li><li><p><strong>Seek evidence</strong> &#8211; request references or examples.</p></li><li><p><strong>Compare variants</strong> &#8211; merge 2&#8211;3 different answers.</p></li><li><p><strong>Keep a test set</strong> &#8211; good examples to re-check outputs over time.</p></li></ol><p><em><strong>&#128073; Quick rule: Trust drafts, verify data, and never outsource your brain.</strong></em></p><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/how-testers-should-use-ai-without/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/how-testers-should-use-ai-without/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[🧠 Critical Thinking in Testing: When Things Get Messy]]></title><description><![CDATA[Testing isn't about following perfect steps.]]></description><link>https://www.lifeofqa.com/p/critical-thinking-in-testing-when</link><guid isPermaLink="false">https://www.lifeofqa.com/p/critical-thinking-in-testing-when</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Mon, 18 Aug 2025 11:49:01 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/18c0cbec-7c1e-4d5d-be23-6950f0497455_1024x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Testing isn't about following perfect steps. It's about wrestling with uncertainty, trusting your gut, and finding problems others miss. Let's talk about how to think, not just what to check.</em></p><p><em>For more on embracing uncertainty in testing, read <a href="https://www.lifeofqa.com/p/dont-just-follow-explore-fail-and">Don&#8217;t Just Follow - Explore, Fail, and Build Your Own Way</a>.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><h2>The Real Deal About Critical Thinking</h2><p>Critical thinking in testing isn't a formula you follow. It's more like learning to ride a bike &#8211; you can read about it, but you only get good by falling down a few times and figuring out your balance.</p><p>It's about developing pattern recognition. Your brain learns to notice inconsistencies, timing issues, or unusual behaviors faster than you can consciously process them. But that recognition is just the starting signal &#8211; the real work happens when you investigate what triggered it.</p><h2>&#129513; Your Mental Toolkit (Not Rules, Just Aids)</h2><p>These aren't steps to follow. They're thinking tools to grab when you need them:</p><h3><strong>Your Senses (Perception)</strong></h3><p>Sometimes the most important signal is the quietest one.</p><blockquote><p><strong>Messy reality:</strong> You're testing a checkout flow. Everything "works," but something feels sluggish. You can't quite put your finger on it. Most testers would move on. You dig deeper and find the payment processor is timing out 30% of the time &#8211; it just fails silently.</p><p><strong>The thing is:</strong> Your brain noticed the pattern before your conscious mind did.</p></blockquote><h3><strong>Hidden Beliefs (Assumptions)</strong></h3><p>We all carry invisible assumptions. The trick is catching them.</p><blockquote><p><strong>Messy reality:</strong> You're testing a mobile app. The whole team uses iPhones. Six months later, you get complaints from Android users about broken features. Nobody thought to test on older Android versions because "everyone upgrades, right?"</p><p><strong>The mess:</strong> Assumptions feel like facts until reality proves them wrong.</p></blockquote><h3><strong>Your Feelings Are Data (Emotion)</strong></h3><p>Don't ignore frustration, boredom, or gut feelings &#8211; they're signals worth investigating, not conclusions.</p><blockquote><p><strong>Messy reality:</strong> You're testing the same login flow for the 20th time. You're bored out of your mind. That boredom makes you think, "What if I just mash the login button really fast?" You find a race condition that creates duplicate user accounts.</p><p><strong>The insight:</strong> Your boredom pointed you toward an untested scenario. But you still had to do the disciplined work of reproducing it, understanding it, and proving it was real.</p></blockquote><h3><strong>Words Mean Things (Language)</strong></h3><p>Vague language hides problems.</p><blockquote><p><strong>Messy reality:</strong> Product says the feature should be "intuitive." Three users try it and get completely lost. "Intuitive to whom?" becomes the million-dollar question.</p><p><strong>The mess:</strong> Everyone thinks they know what "intuitive" means until they watch real users struggle.</p></blockquote><h3><strong>Connecting Dots (Reasoning)</strong></h3><p>Look for patterns, not just individual bugs.</p><blockquote><p><strong>Messy reality:</strong> You find three seemingly unrelated bugs: a form doesn't save, search results are wrong, and user profiles show old data. They all happen after 2 PM. Turns out, the database backup process is locking tables during business hours.</p><p><strong>The puzzle:</strong> Sometimes the answer isn't in any single bug &#8211; it's in the pattern.</p></blockquote><h2>&#127917; Real Testing Dilemmas (No Clean Answers)</h2><h3><strong>The "Good Enough" Problem</strong></h3><p>Your manager says ship it. You found some edge case bugs, but they only affect 2% of users. The business pressure is real. What do you do?</p><p><strong>No perfect answer exists.</strong> You have to weigh risks, communicate impact clearly, and sometimes make uncomfortable decisions.</p><h3><strong>The Flaky Test Dilemma</strong></h3><p>A test fails randomly. Sometimes it passes, sometimes it doesn't. The team wants to ignore it because "it's probably environmental."</p><p><strong>Your gut says:</strong> Flaky tests often point to real timing issues or race conditions.</p><p><strong>The mess:</strong> You might spend hours investigating what turns out to be a test environment problem. Or you might find a critical production bug. You won't know until you dig.</p><h3><strong>The Time Crunch Reality</strong></h3><p>You have 2 days to test a major feature. You could run through all your test cases, or you could focus on the riskiest scenarios.</p><p><strong>The dilemma:</strong> If you focus and miss something "basic," people will question your competence. If you spread thin and miss something critical, users suffer.</p><h3><strong>The False Positive Pain</strong></h3><p>You find what looks like a serious bug. You write it up, the team investigates, and it turns out to be expected behavior that just wasn't documented well.</p><p><strong>The learning:</strong> Sometimes looking stupid is part of the job. Better to ask the "dumb" question than miss the real issue.</p><h2>&#129517; Navigation Tools (Thinking Aids, Not Rigid Rules)</h2><p><em>These are aids to help when you're stuck, not steps to follow religiously.</em></p><h3><strong>When Something Feels Wrong</strong></h3><ul><li><p>Trust the feeling, but investigate the facts</p></li><li><p>Ask someone else to look at it fresh</p></li><li><p>Step away and come back later</p></li><li><p>Try to break your own assumptions about what "should" happen</p></li></ul><h3><strong>When You're Stuck</strong></h3><ul><li><p>Change your perspective: test as a different type of user</p></li><li><p>Look at the problem from the data's point of view</p></li><li><p>Ask "What would happen if...?" and follow that thread</p></li><li><p>Talk to someone who wasn't involved in building the feature</p></li></ul><h3><strong>When Everything Seems Fine</strong></h3><ul><li><p>This is when you should worry most</p></li><li><p>Try harder to break things</p></li><li><p>Look for problems in areas you haven't tested yet</p></li><li><p>Ask: "What would embarrass us in production?"</p></li></ul><h3><strong>When You're Under Pressure</strong></h3><ul><li><p>Focus on the scariest scenarios first</p></li><li><p>Don't pretend you can test everything &#8211; be honest about coverage</p></li><li><p>Document what you didn't test, not just what you did</p></li><li><p>Your anxiety might be telling you about real risks</p></li></ul><h2>&#128269; Questions That Cut Through the Noise</h2><p>Instead of asking "Does this work?" ask:</p><ul><li><p><strong>Who gets hurt if this breaks?</strong> (Not just "users" &#8211; which users, how badly?)</p></li><li><p><strong>What happens at 3 AM when nobody's watching?</strong> (Edge cases love late nights)</p></li><li><p><strong>What did we assume would never happen?</strong> (Universe loves proving us wrong)</p></li><li><p><strong>What would a malicious user try?</strong> (Not just accidentally breaking things)</p></li><li><p><strong>What happens when everything goes wrong at once?</strong> (Murphy's Law in action)</p></li></ul><h2>&#127754; Working with the Mess (Disciplined Exploration)</h2><h3><strong>Embrace Uncertainty with Method</strong></h3><p>You'll never test everything. You'll never find every bug. But that doesn't mean chaos &#8211; it means focused discipline on what matters most.</p><p><strong>Example:</strong> You have 3 days to test a payment system. Instead of random exploration, you systematically think through: What breaks payment systems? (Network issues, invalid data, timing problems, security gaps) Then you design specific experiments around each risk area.</p><h3><strong>Use Your Network (Collaborative Thinking)</strong></h3><p>Different perspectives reveal different risks. This isn't just about gathering information &#8211; it's about expanding how you think about the problem.</p><p><strong>In practice:</strong></p><ul><li><p><strong>Developers</strong> show you the code's weak points and help you understand why certain bugs happen</p></li><li><p><strong>Product owners</strong> help you prioritize risks based on real business impact</p></li><li><p><strong>Customer support</strong> brings you actual user pain points, not theoretical ones</p></li><li><p><strong>Other testers</strong> challenge your assumptions and share their mental models</p></li></ul><p><strong>The key:</strong> Don't just collect their opinions. Let their perspectives change how you approach your testing. A developer might mention they're worried about a particular database query. That worry becomes a testing focus area.</p><p><strong>Remember:</strong> Collaboration enhances your thinking &#8211; it doesn't replace it.</p><h3><strong>Learn from Failure (Systematically)</strong></h3><p>Every bug that escapes to production is data:</p><ul><li><p>What pattern did you miss? Document it.</p></li><li><p>What assumption bit you? Challenge similar ones next time.</p></li><li><p>How can you adjust your thinking? Practice the skill you lacked.</p></li></ul><p><strong>Don't just feel bad. Extract the lesson and apply it.</strong></p><h3><strong>Trust Methods, Question Assumptions</strong></h3><p>Having a structured approach gives you the freedom to investigate interesting discoveries without losing track of your coverage.</p><p><strong>In practice:</strong> Your test plan ensures you don't miss the basics. But when you notice something unexpected &#8211; a weird error message, an unusual delay, data that doesn't look quite right &#8211; that's when you step off the plan and investigate. The structure helps you remember where you were when you're ready to continue.</p><h2>&#127919; Making It Practical</h2><h3><strong>Start Small</strong></h3><p>Pick one area where you usually just "check the boxes." This week, spend extra time there. Ask more questions. Try weirder scenarios. See what you discover.</p><h3><strong>Find Your Thinking Partners</strong></h3><p>Identify people who approach problems differently than you do. Test alongside them sometimes. Share your mental models and learn from theirs.</p><p><strong>Why this matters:</strong> You might always test workflows from start to finish. A colleague might jump around randomly. Both approaches reveal different types of issues.</p><p><strong>The collaboration angle:</strong> When you find something confusing, explain it to someone else. Often, the act of explaining helps you understand what you're really seeing. And their questions might point you toward aspects you hadn't considered.</p><p><strong>These become your expanded thinking toolkit.</strong> Not rules to follow, but different lenses to look through when your usual approach isn't revealing enough.</p><h3><strong>Collect Your "War Stories"</strong></h3><p>Keep notes about:</p><ul><li><p>Times your gut feeling was right</p></li><li><p>Assumptions that led you astray</p></li><li><p>Patterns you've noticed across different projects</p></li></ul><p><strong>These become your personal heuristics.</strong></p><h3><strong>Practice Explaining Risk</strong></h3><p>Get good at translating technical problems into business language:</p><ul><li><p>Instead of: "The API sometimes returns a 500 error"</p></li><li><p>Try: "About 5% of users can't complete checkout, losing us roughly $X per day"</p></li></ul><h2>&#128161; The Uncomfortable Truth</h2><p>Good testing often makes people uncomfortable. You'll ask annoying questions. You'll find problems nobody wants to deal with. You'll slow things down sometimes.</p><p><strong>That's not a bug in your approach &#8211; that's the feature.</strong></p><p>Your job isn't to make everyone happy. It's to help build better software by thinking about what could go wrong.</p><h2>&#127914; The Messy Reality</h2><p>Some days you'll feel like a genius who caught a critical bug nobody else saw. Other days you'll spend hours chasing what turns out to be a red herring.</p><p>Both days are part of being a tester.</p><p>The goal isn't to be right all the time. The goal is to be thoughtful, curious, and brave enough to ask the questions others avoid.</p><p><strong>Your thinking will get better with practice. Your instincts will sharpen. Your questions will get more precise.</strong></p><p>But it starts with accepting that testing is messy, unpredictable work that requires both logic and intuition.</p><div><hr></div><h2>&#128293; One Last Thing</h2><p><strong>Don't turn this into another checklist.</strong> Use these ideas as thinking aids when you get stuck, not as steps to follow religiously.</p><p><strong>The best testers aren't the ones who follow the best process. They're the ones who adapt their thinking to whatever weird situation they're facing.</strong></p><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/critical-thinking-in-testing-when/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/critical-thinking-in-testing-when/comments"><span>Leave a comment</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/lifeofqa&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy me a coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/lifeofqa"><span>&#9749;&#65039; Buy me a coffee</span></a></p>]]></content:encoded></item><item><title><![CDATA[Tools Don’t Test. Testers Do.]]></title><description><![CDATA[A Tester-First POC That Turned a Painful Workflow into a System-Level Test]]></description><link>https://www.lifeofqa.com/p/tools-dont-test-testers-do</link><guid isPermaLink="false">https://www.lifeofqa.com/p/tools-dont-test-testers-do</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Wed, 30 Jul 2025 10:21:51 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/d2361419-de69-41ca-b56c-9c7e934bf617_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>This isn&#8217;t about Python, Playwright, or becoming a developer.<br>It&#8217;s about exploring real risks testers face every day &#8212; and refusing to ignore them just because they&#8217;re inconvenient to automate.</strong></p><blockquote><p><em>&#8220;I&#8217;m a tester. I don&#8217;t write production code for a living.<br>But I built a small automation flow that exercised real user behavior end-to-end &#8212; because the risk was real, repetitive, and nobody else was covering it.&#8221;</em></p></blockquote><p>This story isn&#8217;t about learning a new tool stack or proving technical range.<br>It&#8217;s about what happens when a tester sees recurring risk and decides to explore it properly instead of accepting friction as &#8220;just how things are.&#8221;</p><div><hr></div><h2>Where the Friction Lived</h2><p>This didn&#8217;t start as a roadmap or an assigned initiative.</p><p>It started with repetition.</p><p>We had a set of scenarios we had to test again and again:</p><ul><li><p>Provision a Windows machine</p></li><li><p>Install our agent</p></li><li><p>Verify services on the machine</p></li><li><p>Confirm the agent showed up correctly on the dashboard</p></li><li><p>Repeat this across builds, versions, and environments</p></li></ul><p>These steps weren&#8217;t edge cases.<br>They were <strong>preconditions</strong> for most of our UI end-to-end testing.</p><p>And yet, they were handled manually or semi-manually every time.</p><p>The workflow itself was the problem.</p><p>Not UI testing.<br>Not API testing.<br>A <strong>system-level user flow</strong> that moved back and forth between machines, services, APIs, and UI.</p><p>In reality, the testing looked like this:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pMTB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pMTB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 424w, https://substackcdn.com/image/fetch/$s_!pMTB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 848w, https://substackcdn.com/image/fetch/$s_!pMTB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 1272w, https://substackcdn.com/image/fetch/$s_!pMTB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pMTB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png" width="500" height="186.6566716641679" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:498,&quot;width&quot;:1334,&quot;resizeWidth&quot;:500,&quot;bytes&quot;:183458,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/169640351?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!pMTB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 424w, https://substackcdn.com/image/fetch/$s_!pMTB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 848w, https://substackcdn.com/image/fetch/$s_!pMTB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 1272w, https://substackcdn.com/image/fetch/$s_!pMTB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F962d1c03-7952-43cb-998b-83e93fdcb391_1334x498.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Slow to execute.<br>Easy to get wrong.<br>Hard to repeat consistently.</p><p>That&#8217;s when the real testing question surfaced:</p><blockquote><p><strong>What risks does this workflow expose that UI tests alone will never catch?</strong></p></blockquote><div><hr></div><h2>This Was a POC. And a Risk.</h2><p>This was not a &#8220;let&#8217;s build a framework&#8221; project.</p><p>It was a <strong>Technical Opportunity Checkpoint</strong>.</p><p>I didn&#8217;t know if:</p><ul><li><p>The flow could be automated cleanly</p></li><li><p>The tooling would hold together</p></li><li><p>I could stitch system behavior and UI validation without faking things</p></li></ul><p>I&#8217;m not an SDET.<br>I don&#8217;t spend my days designing abstractions.</p><p>But I <em>do</em> understand how users install and experience this product.</p><p>So I approached it the only way I know how: <strong>as a tester</strong>.</p><p>Break the problem down.<br>Explore one boundary at a time.<br>Keep asking: <em>what would make this look healthy when it actually isn&#8217;t?</em></p><div><hr></div><h2>From Script to System-Level Test</h2><p>I started small. No grand design.</p><p>One capability at a time:</p><ul><li><p><strong>Provision a Windows VM</strong><br>Automated setup using Python to remove human inconsistency.</p></li><li><p><strong>Remote access</strong><br>Used SSH (via <code>paramiko</code>) to interact with the machine exactly as an admin or user would.</p></li><li><p><strong>Installer transfer</strong><br>Copied the real agent binary. No mocks. No shortcuts.</p></li><li><p><strong>Real installation</strong><br>Executed PowerShell commands following the same steps users follow.</p></li><li><p><strong>Service validation</strong><br>Parsed <code>sc</code> and PowerShell output to confirm:</p><ul><li><p>service existence</p></li><li><p>running state</p></li><li><p>restart behavior after failure</p></li></ul><p>This mattered because <strong>&#8220;installer finished&#8221; does not mean &#8220;agent is healthy.&#8221;</strong></p></li><li><p><strong>Dashboard verification</strong><br>Used Playwright (Python bindings) to verify:</p><ul><li><p>agent registration</p></li><li><p>status propagation</p></li><li><p>API responses aligned with what the UI claimed</p></li></ul></li></ul><p>At this point, something important changed.</p><p>This was no longer &#8220;a script.&#8221;<br>It became a <strong>repeatable, system-level test flow</strong> that exercised the product the way users actually experience it.</p><div><hr></div><h2>Why Python, Not TypeScript?</h2><p>We already use Playwright with TypeScript for browser E2E tests.</p><p>So yes, this was a deliberate deviation.</p><p>The reason was simple:<br>This problem wasn&#8217;t browser-first.</p><p>Python gave me:</p><ul><li><p>Straightforward SSH and file transfer</p></li><li><p>Cleaner service inspection and error handling</p></li><li><p>One place to orchestrate machine setup, system validation, and UI checks</p></li></ul><p>Could this have been done in TypeScript? Probably.<br>Would it have required more glue, dependencies, and orchestration? Definitely.</p><p>For a POC, <strong>clarity beats purity</strong>.</p><div><hr></div><h2>Where This Became Testing (Not Automation)</h2><p>This is the line most automation misses.</p><p>I didn&#8217;t:</p><ul><li><p>Stub services</p></li><li><p>Skip installation steps</p></li><li><p>Treat &#8220;service started&#8221; as proof of correctness</p></li></ul><p>Instead, I looked for <strong>failure signals</strong>:</p><ul><li><p>Installer succeeds but the service never stabilizes</p></li><li><p>Service runs but stops reporting after a restart</p></li><li><p>Agent appears in the UI but silently stops sending data</p></li><li><p>API and UI disagree on agent health</p></li></ul><p><strong>One concrete example:</strong><br>In one run, the installer completed successfully and the service showed as <em>running</em>, but after a machine restart the agent stopped reporting.<br>UI-only tests passed.<br>This flow caught it immediately by correlating service state, restart behavior, and dashboard health.</p><p>That issue would have broken downstream E2E tests and likely reached production undetected.</p><p>Automation didn&#8217;t hide the problem.<br>It <strong>made it visible early and repeatedly</strong>.</p><p>That&#8217;s testing.</p><div><hr></div><h2>What Didn&#8217;t Work (And Matters)</h2><p>Not everything was clean.</p><ul><li><p>Debugging remote failures was slower than local tests</p></li><li><p>Logs mattered more than assertions</p></li><li><p>Failures didn&#8217;t occur neatly at one layer</p></li></ul><p><strong>Next time:</strong></p><ul><li><p>Structured logging first</p></li><li><p>Explicit health criteria upfront</p></li><li><p>Time-boxed exploration before stabilization</p></li></ul><p>POCs are supposed to expose limits, not just successes.</p><div><hr></div><h2>What Changed Because of This POC</h2><p>This wasn&#8217;t theoretical value.</p><ul><li><p>Manual setup time dropped from ~20 minutes to ~5 minutes per run</p></li><li><p>The flow caught multiple &#8220;looks healthy but isn&#8217;t&#8221; service states</p></li><li><p>Roughly <strong>30&#8211;40% of precondition failures</strong> that previously surfaced as flaky UI tests were caught before UI execution</p></li></ul><p>More importantly, the team stopped treating this workflow as &#8220;too messy to automate&#8221; &#8212; and started treating it as <strong>a risk worth testing properly</strong>.</p><div><hr></div><h2>If You Want to Try This Yourself</h2><p>Start small:</p><ol><li><p>Identify a workflow users repeat and testers dread</p></li><li><p>Map the system boundaries involved (machine, service, API, UI)</p></li><li><p><strong>Automate one boundary honestly</strong></p></li><li><p>Observe what fails before optimizing anything</p></li><li><p>Only then decide whether it deserves a framework</p></li></ol><p>Avoid:</p><ul><li><p>Automating around the system</p></li><li><p>Proving tool skill instead of risk coverage</p></li><li><p>Treating green execution as confidence</p></li></ul><p>Always ask: <strong>what risks does this flow expose that my current tests miss?</strong></p><div><hr></div><h2>Final Words</h2><p>This POC wasn&#8217;t about Python, Playwright, or Copilot.</p><p>It was about refusing to accept that<br>&#8220;we can&#8217;t automate this&#8221;<br>really meant<br>&#8220;we&#8217;ve stopped questioning it.&#8221;</p><p>So the next time you hear that phrase, pause.</p><p>Is it a tooling limitation?<br>Or hesitation disguised as practicality?</p><p>Because at the end of the day:</p><p><strong>Tools don&#8217;t test. Testers do.</strong></p><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/tools-dont-test-testers-do/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/tools-dont-test-testers-do/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Testing Is a Social Activity — Not a Solo Act]]></title><description><![CDATA[What I learned as the first (and only) tester in a startup]]></description><link>https://www.lifeofqa.com/p/testing-is-a-social-activity-not</link><guid isPermaLink="false">https://www.lifeofqa.com/p/testing-is-a-social-activity-not</guid><dc:creator><![CDATA[Deepak Karn]]></dc:creator><pubDate>Mon, 07 Jul 2025 12:12:29 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/0177ae9e-ed5c-49ea-8568-ab769b2eee47_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p>Skilled testing is not a solo act, nor a factory line. It&#8217;s a social, cognitive process. Quality emerges when testers and teams question deeply, share tacit knowledge, and explore uncertainty together.</p></blockquote><p>I didn&#8217;t read this <strong>idea</strong> in a book.<br>I lived it.</p><p>I was hired as the first test engineer.</p><p>No prior QA.<br>No scripts.<br>No legacy tools.<br>No test artifacts.</p><p>Just a team of engineers who had never worked with a tester before.</p><p>Honestly, I was excited. Not because it was smooth, but because it was uncertain. And testing thrives in uncertainty.</p><p>There was no structured onboarding.<br>Just one 1-hour product walkthrough.</p><p>But here&#8217;s what mattered: the team was curious and collaborative.</p><p>They didn&#8217;t see me as a bottleneck. They saw me as someone who could help them understand the product better. And I saw them the same way.</p><p>I didn&#8217;t wait for clarity. I went looking for it.</p><p>I started asking questions.<br>I explored the product.<br>I observed how features were shipped.</p><p>And I noticed something else.</p><p>Almost every release needed a hotfix.</p><p>Not because developers were careless.<br>But because no one was really testing.</p><p>They were mostly checking. Verifying that features met basic requirements. Edge cases, interaction risks, and behavior under strain were rarely explored.</p><p>So I tried something different.</p><p>I didn&#8217;t bring in a process.<br>I didn&#8217;t write a test plan.<br>I didn&#8217;t pitch automation tools.</p><p>Instead, I made testing visible.</p><p>I shared what I found in Slack, in meetings, and in 1:1s.<br>I involved myself early, even when there was no formal invitation.<br>I asked about goals, not just features.<br>I mapped customer complaints to real problems.<br>I prioritized based on risk, not a checklist.</p><p>Not every question was welcomed.<br>Some findings were inconvenient.<br>Some discussions were uncomfortable.</p><p>But something important changed.</p><p>What actually changed wasn&#8217;t the number of bugs found.<br>It was <strong>when conversations happened</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rUg-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rUg-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 424w, https://substackcdn.com/image/fetch/$s_!rUg-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 848w, https://substackcdn.com/image/fetch/$s_!rUg-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 1272w, https://substackcdn.com/image/fetch/$s_!rUg-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rUg-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png" width="304" height="268.07272727272726" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1164,&quot;width&quot;:1320,&quot;resizeWidth&quot;:304,&quot;bytes&quot;:827915,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.lifeofqa.com/i/167713664?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rUg-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 424w, https://substackcdn.com/image/fetch/$s_!rUg-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 848w, https://substackcdn.com/image/fetch/$s_!rUg-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 1272w, https://substackcdn.com/image/fetch/$s_!rUg-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df56a41-2ebf-4edf-a4ae-f83f76eab4e7_1320x1164.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Risks surfaced before code was &#8220;done.&#8221;<br>Assumptions were challenged while they were still cheap.<br>Surprises moved left.</p><p>When the next feature release went out, it went out with fewer surprises.</p><p>Known risks were consciously accepted, not discovered in production.</p><p>Not because I&#8217;m a magician.<br>But because we talked, questioned, and learned together.</p><p>Some issues were fixed.<br>Some were negotiated.<br>Some were deferred.</p><p>But they were seen. Understood. Discussed.</p><p>That&#8217;s what good testing does.</p><p>The common belief is that testing is something a tester does after development.<br>What I learned is that testing fails the moment it becomes isolated.</p><h3>What I learned</h3><p>This wasn&#8217;t about being &#8220;the only QA.&#8221;<br>It was about what happens when testing becomes social.</p><p>Testing is not a service.<br>It&#8217;s not a script.<br>It&#8217;s not a gate.</p><p>It&#8217;s a conversation.</p><p>A skilled tester doesn&#8217;t wait for instructions.<br>They ask better questions.<br>They notice things others miss.<br>They think like a user and speak like a teammate.</p><p>Testing is a team sport.</p><p>And the real work doesn&#8217;t happen when testers follow scripts, but when they work in sync with others, learning and thinking together.</p><h3>Final thought</h3><p>If you&#8217;re the only tester, don&#8217;t try to do everything.</p><p>Trying to do everything alone is how testers become invisible &#8212; and eventually irrelevant.</p><p>This doesn&#8217;t guarantee agreement.<br>It guarantees awareness.</p><p>Bring people into the act of testing.<br>Ask questions.<br>Share discoveries.<br>Make invisible risks visible.</p><p>You don&#8217;t need to be a gatekeeper.<br>Just be a skilled investigator in a room full of builders.</p><div><hr></div><p><strong>If you found this helpful, stay connected with </strong><em><strong>Life of QA</strong></em><strong> for more real-world testing experiences, tips, and lessons from the journey!</strong></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption"></p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.lifeofqa.com/p/testing-is-a-social-activity-not/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.lifeofqa.com/p/testing-is-a-social-activity-not/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item></channel></rss>