[{"data":1,"prerenderedAt":64},["ShallowReactive",2],{"\u002Fblog\u002Fautomation-with-measurable-return":3},{"id":4,"title":5,"body":6,"date":53,"description":54,"extension":55,"meta":56,"navigation":57,"path":58,"readingTime":59,"seo":60,"stem":61,"tag":62,"__hash__":63},"blog\u002Fblog\u002Fautomation-with-measurable-return.md","Building automation that delivers a measurable return",{"type":7,"value":8,"toc":47},"minimark",[9,13,18,21,25,28,44],[10,11,12],"p",{},"Automation is an attractive investment, but it is easy to commit resources before the return is clear. Our guiding principle is to automate first the tasks that are both high in frequency and low in judgment.",[14,15,17],"h2",{"id":16},"reliability-is-the-real-engineering-work","Reliability is the real engineering work",[10,19,20],{},"Data extraction pipelines, including scrapers and crawlers, illustrate this well. They can save substantial time, but the meaningful engineering effort does not lie in the first version that works on a developer's machine. It lies in a system that continues to operate when target sites change, proxies are blocked and volumes increase.",[14,22,24],{"id":23},"designing-for-failure","Designing for failure",[10,26,27],{},"We therefore design for failure from the first day:",[29,30,31,35,38,41],"ul",{},[32,33,34],"li",{},"Retries with exponential backoff",[32,36,37],{},"Proxy rotation and rate limiting",[32,39,40],{},"Structured logging for every run",[32,42,43],{},"Alerts when extraction rates fall below expected levels",[10,45,46],{},"This operational groundwork is what turns a useful script into a dependable business system.",{"title":48,"searchDepth":49,"depth":49,"links":50},"",2,[51,52],{"id":16,"depth":49,"text":17},{"id":23,"depth":49,"text":24},"2026-06-21","A practical framework for deciding what to automate first, and how to keep data extraction pipelines reliable in production.","md",{},true,"\u002Fblog\u002Fautomation-with-measurable-return",1,{"title":5,"description":54},"blog\u002Fautomation-with-measurable-return","Automation","WJtVmvnxn6ogDYlVDCgMKXVbRRhEQ10Je9Huwt8Hy6Q",1792002393786]