<?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[Engineering at OBDeleven]]></title><description><![CDATA[My personal Substack]]></description><link>https://obdeleven.engineering</link><image><url>https://substackcdn.com/image/fetch/$s_!1GX6!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0ff90be-82b9-4ac8-a2e6-eb7048fb3aeb_243x243.png</url><title>Engineering at OBDeleven</title><link>https://obdeleven.engineering</link></image><generator>Substack</generator><lastBuildDate>Tue, 21 Apr 2026 06:43:48 GMT</lastBuildDate><atom:link href="https://obdeleven.engineering/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[OBDeleven]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[obdeleven@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[obdeleven@substack.com]]></itunes:email><itunes:name><![CDATA[OBDeleven]]></itunes:name></itunes:owner><itunes:author><![CDATA[OBDeleven]]></itunes:author><googleplay:owner><![CDATA[obdeleven@substack.com]]></googleplay:owner><googleplay:email><![CDATA[obdeleven@substack.com]]></googleplay:email><googleplay:author><![CDATA[OBDeleven]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Scaling QA with Automation and AI-Assisted Development]]></title><description><![CDATA[At OBDeleven, we continuously expand to support new vehicle brands, communication with hardware, user-facing features.]]></description><link>https://obdeleven.engineering/p/scaling-qa-with-automation-and-ai</link><guid isPermaLink="false">https://obdeleven.engineering/p/scaling-qa-with-automation-and-ai</guid><pubDate>Wed, 17 Dec 2025 08:40:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jjOG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.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_!jjOG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jjOG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png 424w, https://substackcdn.com/image/fetch/$s_!jjOG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png 848w, https://substackcdn.com/image/fetch/$s_!jjOG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png 1272w, https://substackcdn.com/image/fetch/$s_!jjOG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jjOG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png" width="1024" height="608" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d1415383-eaad-41d4-9420-14777abd36ef_1024x608.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:608,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jjOG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png 424w, https://substackcdn.com/image/fetch/$s_!jjOG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png 848w, https://substackcdn.com/image/fetch/$s_!jjOG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.png 1272w, https://substackcdn.com/image/fetch/$s_!jjOG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1415383-eaad-41d4-9420-14777abd36ef_1024x608.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>At OBDeleven, we continuously expand to support new vehicle brands, communication with hardware, user-facing features. Each addition increases the complexity of our quality assurance (QA) efforts &#8211; especially when behaviour shall remain reliable across a wide range of vehicles, firmware versions.</p><p>As our apps grew, one limitation became clear: manual regression testing no longer scaled. What was once manageable, gradually turned into a time-consuming repetitive process as regression scope expanded with every new car brand and feature. Maintaining release confidence required a different approach.</p><h1>From Manual Testing To Automation</h1><p>Manual regression testing became a bottleneck as:</p><ul><li><p>The number of supported vehicle brands increased</p></li><li><p>New features and code changes were introduced more frequently</p></li><li><p>Existing functionality required re-validation</p></li></ul><p>Relying on manual execution alone meant that regression cycles grew longer with every release, limiting how fast we could confidently ship changes.</p><p>Our first step was to move toward automation-first QA. The goal was not to eliminate manual testing, but to reduce reliance on repetitive regression work and ensure that critical flows were consistently validated across releases.</p><p>By prioritizing automation for stable and repeatable scenarios, we were able to significantly shorten regression cycles. However, as automated coverage expanded, so did the effort required to develop and maintain test code.</p><h1>AI-Assisted Test Development</h1><p>To address end-to-end automation issues, we integrated AI-assisted developer tools &#8212; such as GitHub Copilot and Cursor &#8212; Into our test development workflow.</p><p>These tools help our QA teams to:</p><ul><li><p>Implement automated test cases more quickly</p></li><li><p>Refactor and extend existing tests as features evolve</p></li><li><p>Reduce repetitive boilerplate when onboarding new brands</p></li><li><p>Navigate and understand large test suites more efficiently</p></li></ul><p>AI is used only as productivity aid. All test logic, assertions, domain-specific decisions remain fully under engineer control, which is especially important in hardware-dependent automotive context.</p><h1>Results And Impact</h1><p>By combining automation with AI-assisted development, we scaled regression coverage alongside platform growth without a proportional increase in manual effort.</p><p>In practice, this means:</p><ul><li><p>New features are covered by automated tests written by either QA engineers or developers, ensuring that regression-related technical debt does not accumulate over time.</p></li><li><p>Regression feedback has shifted from late in the release cycle to earlier stages of development, closer to code changes that introduced it.</p></li><li><p>AI-assisted development reduced test implementation time for common scenarios; on average, a complete flow &#8211; including both happy paths and edge cases &#8211; can be covered by automation within a day.</p></li><li><p>Manual testing is primarily focused on exploratory scenarios and edge cases where human insight provides the most value.</p></li></ul><p>For a long time, AI solutions for mobile testing lagged their web-focused counterparts, leaving mobile QA largely reliant on manual and traditional automation approaches. Today, the mobile testing landscape is caching up. At OBDeleven, we are experimenting with AI agents that can execute test flows on mobile apps based on provided test cases. While still in early stages, these experiments have the potential to accelerate coverage further and reduce manual effort, especially with the flows that are hard or even impossible to automate via automated tests. </p><h1>Key Takeaways</h1><ul><li><p>Manual regression testing does not scale with rapid feature and brand expansion</p></li><li><p>Automation provides the foundation for sustainable QA and reliable release cycles</p></li><li><p>AI-assisted development accelerates test implementation without replacing human judgement</p></li><li><p>Human expertise remains essential, especially for exploratory testing and edge cases</p></li><li><p>Mobile testing is an emerging frontier where AI has the potential to further enhance coverage and efficiency</p></li></ul><h1>What&#8217;s Next</h1><p>We are experimenting with AI agents that execute mobile test flows, which are difficult to automate using traditional approaches. These experiments run in Firebase Test Lab, where agents receive predefined test cases written in natural language and perform actions on emulators.</p><p>While promising, this approach comes with several challenges:</p><ul><li><p>AI-driven interactions can be non-deterministic</p></li><li><p>Dynamic UI changes can confuse the agent</p></li><li><p>Execution cost and duration are higher than traditional automation</p></li><li><p>Hardware dependencies (vehicle control units, OBDeleven devices) cannot yet be tested</p></li></ul><p>For now, AI agents complement rather than replace automation. They are best suited for exploratory testing and uncovering unexpected behaviour, while critical regression paths remain covered by stable, scripted tests and targeted manual testing.</p><p>In parallel, we are exploring the use of AI to analyse logs and metrics to identify patterns and anomalies.</p><p>Our goal is to continue combining automation, AI assistance, and human expertise to deliver high-quality releases faster while keeping QA efficient and scalable.</p>]]></content:encoded></item><item><title><![CDATA[Under the Hood: Building OBDeleven]]></title><description><![CDATA[Hey there, and welcome to our very first Engineering at OBDeleven Blog post!]]></description><link>https://obdeleven.engineering/p/coming-soon</link><guid isPermaLink="false">https://obdeleven.engineering/p/coming-soon</guid><dc:creator><![CDATA[OBDeleven]]></dc:creator><pubDate>Thu, 09 Jan 2025 15:29:03 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8sWw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic" 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_!8sWw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8sWw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 424w, https://substackcdn.com/image/fetch/$s_!8sWw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 848w, https://substackcdn.com/image/fetch/$s_!8sWw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 1272w, https://substackcdn.com/image/fetch/$s_!8sWw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8sWw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1054722,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/heic&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8sWw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 424w, https://substackcdn.com/image/fetch/$s_!8sWw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 848w, https://substackcdn.com/image/fetch/$s_!8sWw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 1272w, https://substackcdn.com/image/fetch/$s_!8sWw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F778ee952-fe4a-4d36-9a09-af92a7702a78_2912x1632.heic 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>If you&#8217;re passionate about exploring the cutting edge of technology - or simply curious how we&#8217;re reinventing automotive diagnostics and customizations - you&#8217;re in the right place. In upcoming posts, we&#8217;ll dive into the engineering challenges that power OBDeleven, from novel approaches in system design to breakthrough optimizations. Stay tuned - exciting things are on the horizon!</p>]]></content:encoded></item></channel></rss>