{"id":239245,"date":"2025-12-18T13:18:12","date_gmt":"2025-12-18T13:18:12","guid":{"rendered":"https:\/\/www.europesays.com\/ie\/239245\/"},"modified":"2025-12-18T13:18:12","modified_gmt":"2025-12-18T13:18:12","slug":"qcon-ai-new-york-2025-moving-mountains-migrating-legacy-code-in-weeks-instead-of-years","status":"publish","type":"post","link":"https:\/\/www.europesays.com\/ie\/239245\/","title":{"rendered":"QCon AI New York 2025: Moving Mountains: Migrating Legacy Code in Weeks Instead of Years"},"content":{"rendered":"<p><a href=\"https:\/\/ai.qconferences.com\/speakers\/davidstein\" rel=\"nofollow noopener\" target=\"_blank\">David Stein<\/a>, Principal AI Engineer at ServiceTitan, presented <a href=\"https:\/\/ai.qconferences.com\/presentation\/newyork2025\/moving-mountains-migrating-legacy-code-weeks-instead-years\" rel=\"nofollow noopener\" target=\"_blank\">Moving Mountains: Migrating Legacy Code in Weeks instead of Years<\/a> at the very first <a href=\"https:\/\/ai.qconferences.com\/\" rel=\"nofollow noopener\" target=\"_blank\">QCon AI New York 2025<\/a>.<\/p>\n<p>Stein kicked off his presentation describing how large-scale migrations are synonymous to &#8220;moving mountains.&#8221; Major architectural changes have historically required a time measured in quarters-of-a-year to years along with an inherent risk in rewriting tremendous amounts of code. While the benefits of a successful migration may be significant, the risks may be equally as significant because migrations may not have always worked out as planned.<\/p>\n<p>He presented an internal case study related to ServiceTitan having migrated their legacy reporting datasets to their new metric platform based on DBT Labs MetricFlow. This included: a reliance on production SQL databases; hundreds of metrics calculated in a monolith application using object-relational mapping; and thousands of lines of C# and complex SQL code. The timeline was quarters-of-a-year to years.<\/p>\n<p>Stein introduced the term, &#8220;false summit,&#8221; a concept related to hazards that may occur during a migration that may lead to failure. The hard parts of the migration may sometimes stall and those benefits are never realized. Developers are left to ask, &#8220;Wait, are we building the right thing?&#8221;<\/p>\n<p>The <strong>Principle of Acceleration<\/strong>, a concept involving techniques to boost performance by optimizing data flow. As shown below, the old way involved a decision point, early in the process, after establishing the initial proof-of-concepts before investing in the migration. The new way, however, adds a validation step with a standardized set of tools used before the migration begins.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.infoq.com\/news\/2025\/12\/moving-mountains-stein\/news\/2025\/12\/moving-mountains-stein\/en\/resources\/1infoq-principle-of-acceleration-1766005970058.jpg\" style=\"width: 600px; height: 331px;\" rel=\"share\"\/><\/p>\n<p>The <strong>Assembly Line Pattern<\/strong>, a sequential, automated process for building, testing and deploying applications, often used in CI\/CD, is composed of three steps in transforming an application migration:<\/p>\n<ul>&#13;<\/p>\n<li><strong>Decompose:<\/strong> break the &#8220;mountain&#8221; into &#8220;pebbles.&#8221;<\/li>\n<p>&#13;<\/p>\n<li><strong>Standardize:<\/strong> create a &#8220;physics engine&#8221; for automated and instant validation.<\/li>\n<p>&#13;<\/p>\n<li><strong>Automate:<\/strong> use of agents to execute tasks.<\/li>\n<p>&#13;\n<\/ul>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.infoq.com\/news\/2025\/12\/moving-mountains-stein\/news\/2025\/12\/moving-mountains-stein\/en\/resources\/1infoq-assembly-line-pattern-1766005970058.jpg\" style=\"width: 600px; height: 332px;\" rel=\"share\"\/><\/p>\n<p>Stein listed the breakdown of tasks used by ServiceTitan for their heritage migrations, namely: <strong>objective<\/strong>; <strong>plan<\/strong>; <strong>code<\/strong>; <strong>test<\/strong>; and <strong>release<\/strong> that took them years to complete. Using the Assembly Line Pattern, they can now execute a successful migration in a number of weeks.<\/p>\n<p>Stein discussed a number of challenges with their corresponding solutions along the way:<\/p>\n<ul>&#13;<\/p>\n<li>The agent incorrectly believes it has succeeded \u2192 fix the validation logic.<\/li>\n<p>&#13;<\/p>\n<li>The agent gets stuck and can&#8217;t make progress \u2192 add context and test data; subdivide tasks.<\/li>\n<p>&#13;<\/p>\n<li>Small portions of tasks can&#8217;t be completed \u2192 engineers manually complete the most difficult tasks.<\/li>\n<p>&#13;<\/p>\n<li>A better architecture is identified partway \u2192 rewrite the migration, goals and validation; start over.<\/li>\n<p>&#13;\n<\/ul>\n<p>The paradigm shift in lowering the cost of a change in architecture from years to weeks unlocks a new level of agility. Stein mentioned that this has enabled developers to ask themselves new questions for which he offered suggestions that required only weeks to implement:<\/p>\n<ul>&#13;<\/p>\n<li>&#8220;Should we try platform X?&#8221; \u2192 Just do it and find out.<\/li>\n<p>&#13;<\/p>\n<li>&#8220;Is this new architecture actually better?&#8221; \u2192 Build both and compare.<\/li>\n<p>&#13;<\/p>\n<li>&#8220;Did we make the right call two years ago?&#8221; \u2192 Remigrate and check.<\/li>\n<p>&#13;\n<\/ul>\n<p>Stein concluded his presentation by stating that migrations aren&#8217;t &#8220;mountains&#8221; anymore.<\/p>\n","protected":false},"excerpt":{"rendered":"David Stein, Principal AI Engineer at ServiceTitan, presented Moving Mountains: Migrating Legacy Code in Weeks instead of Years&hellip;\n","protected":false},"author":2,"featured_media":239246,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[267],"tags":[291,289,365,362,363,364,366,7266,18,117,19,17,126278,14630,126277,126279,42178],"class_list":{"0":"post-239245","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-arts-and-design","8":"tag-ai","9":"tag-artificial-intelligence","10":"tag-arts","11":"tag-arts-and-design","12":"tag-artsanddesign","13":"tag-artsdesign","14":"tag-design","15":"tag-development","16":"tag-eire","17":"tag-entertainment","18":"tag-ie","19":"tag-ireland","20":"tag-legacy-code","21":"tag-ml-data-engineering","22":"tag-moving-mountains-stein","23":"tag-qcon-ai-2025","24":"tag-qcon-software-development-conference"},"share_on_mastodon":{"url":"https:\/\/pubeurope.com\/@ie\/115740770930783963","error":""},"_links":{"self":[{"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/posts\/239245","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/comments?post=239245"}],"version-history":[{"count":0,"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/posts\/239245\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/media\/239246"}],"wp:attachment":[{"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/media?parent=239245"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/categories?post=239245"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.europesays.com\/ie\/wp-json\/wp\/v2\/tags?post=239245"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}