<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sonia Bobrik</title>
    <description>The latest articles on DEV Community by Sonia Bobrik (@sonia_bobrik_1939cdddd79d).</description>
    <link>https://dev.to/sonia_bobrik_1939cdddd79d</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3423281%2Fb9547be6-14b6-48f6-8a94-9de77fde6ca0.jpg</url>
      <title>DEV Community: Sonia Bobrik</title>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sonia_bobrik_1939cdddd79d"/>
    <language>en</language>
    <item>
      <title>Your Feature Has a Cost Per Execution. Why Isn’t It in the Code?</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 15:30:38 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/your-feature-has-a-cost-per-execution-why-isnt-it-in-the-code-2lf9</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/your-feature-has-a-cost-per-execution-why-isnt-it-in-the-code-2lf9</guid>
      <description>&lt;p&gt;A strange thing happens inside modern software companies: engineers can tell you the latency of an endpoint to the millisecond, but often nobody can tell you what executing that endpoint actually costs. That gap matters more than it used to. The broader financial discipline described in &lt;a href="https://tinybuddha.com/members/business-finance-that-actually-prevents/" rel="noopener noreferrer"&gt;Business Finance That Actually Prevents Failure&lt;/a&gt; becomes much more concrete when applied at the software layer, because a growing number of products now accumulate real costs every time a user clicks a button, uploads a file, generates an image, runs a search, sends a message, or asks an AI model a question. &lt;strong&gt;A feature can be technically successful, heavily used, loved by customers—and economically terrible.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For decades, software benefited from an attractive assumption: once the product was built, serving one more user was comparatively cheap.&lt;/p&gt;

&lt;p&gt;That assumption has not disappeared, but it has become dangerously unreliable.&lt;/p&gt;

&lt;p&gt;A modern application may call an LLM, invoke an OCR service, generate embeddings, query a vector database, send an SMS, use a geocoding API, process an image, write logs to an observability platform, transfer data across regions, run a serverless function, store the result, and pay a transaction fee before the user sees a single response.&lt;/p&gt;

&lt;p&gt;Each component might look inexpensive in isolation.&lt;/p&gt;

&lt;p&gt;The feature is not.&lt;/p&gt;

&lt;h2&gt;
  
  
  We Still Design Features as if Compute Were Free
&lt;/h2&gt;

&lt;p&gt;Imagine a startup selling an AI document-analysis product for $49 per month.&lt;/p&gt;

&lt;p&gt;The product team launches a feature called “Deep Review.” Users upload contracts and receive a detailed analysis.&lt;/p&gt;

&lt;p&gt;Engagement is excellent.&lt;/p&gt;

&lt;p&gt;Customers love it.&lt;/p&gt;

&lt;p&gt;Usage grows rapidly.&lt;/p&gt;

&lt;p&gt;Everyone celebrates.&lt;/p&gt;

&lt;p&gt;But one Deep Review is not one operation. Behind the button, the system might extract text, classify pages, call a large model several times, generate embeddings, search stored context, call another model to verify the answer, save the output, and retain the source document.&lt;/p&gt;

&lt;p&gt;Assume, purely as an example, that an ordinary review costs the company $0.18 to process.&lt;/p&gt;

&lt;p&gt;That sounds irrelevant.&lt;/p&gt;

&lt;p&gt;Then someone uploads a huge document.&lt;/p&gt;

&lt;p&gt;It needs multiple OCR passes. Chunking creates dozens of model calls. A retry fires after one provider times out. The verification step receives far more context than expected. That review costs $1.40.&lt;/p&gt;

&lt;p&gt;A customer on the $49 plan runs 70 of them.&lt;/p&gt;

&lt;p&gt;The customer has paid $49.&lt;/p&gt;

&lt;p&gt;The company may have spent close to the entire subscription price on one feature before paying for databases, support, engineering, payment processing, salaries, or anything else.&lt;/p&gt;

&lt;p&gt;The feature has not failed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Its economics have.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is one of the most important architectural changes developers need to recognize: in a metered software stack, product behavior and financial behavior are no longer separate systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  “Cloud Bill” Is Too Coarse a Data Type
&lt;/h2&gt;

&lt;p&gt;A monthly infrastructure bill tells you approximately as much about product economics as total CPU utilization tells you about which endpoint is slow.&lt;/p&gt;

&lt;p&gt;You need attribution.&lt;/p&gt;

&lt;p&gt;If the company spends $80,000 on infrastructure, the interesting questions are not limited to “Why is AWS expensive?” or “Can we reduce the bill by 10%?”&lt;/p&gt;

&lt;p&gt;The interesting questions are:&lt;/p&gt;

&lt;p&gt;Which customers caused the spend?&lt;/p&gt;

&lt;p&gt;Which workflows caused it?&lt;/p&gt;

&lt;p&gt;Which product tier generated it?&lt;/p&gt;

&lt;p&gt;Which release changed it?&lt;/p&gt;

&lt;p&gt;Which feature creates the highest gross profit?&lt;/p&gt;

&lt;p&gt;Which popular feature becomes less profitable as usage increases?&lt;/p&gt;

&lt;p&gt;Which customer appears valuable in the CRM but loses money after its actual resource consumption is included?&lt;/p&gt;

&lt;p&gt;This is not merely a finance problem. &lt;a href="https://aws.amazon.com/blogs/apn/saas-cost-attribution-how-to-align-technology-with-business/" rel="noopener noreferrer"&gt;AWS’s work on SaaS cost attribution&lt;/a&gt; makes the architectural implication clear: understanding resource consumption at the tenant and feature level can influence pricing, product decisions, and architecture itself.&lt;/p&gt;

&lt;p&gt;That is a radically better framing than “engineering needs to reduce cloud costs.”&lt;/p&gt;

&lt;p&gt;Cost is not something finance discovers after engineering has finished building.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cost is an output of the architecture.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Cost Should Travel With the Request
&lt;/h2&gt;

&lt;p&gt;Most applications already propagate context through their systems.&lt;/p&gt;

&lt;p&gt;A request may carry a user ID, tenant ID, trace ID, session ID, request ID, experiment ID, region, and application version.&lt;/p&gt;

&lt;p&gt;Why not economic context?&lt;/p&gt;

&lt;p&gt;Suppose an AI workflow generates an event after each billable or resource-intensive operation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"tenant_id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"tenant_482"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"feature"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"deep_review"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"operation"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"contract_analysis"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"provider"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"model_provider"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"large_model"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"input_units"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;43820&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"output_units"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;6140&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"estimated_cost"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;0.173&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"request_id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"req_91af"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"release"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2026.08.18"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is not intended to replace the provider's invoice.&lt;/p&gt;

&lt;p&gt;It solves a different problem.&lt;/p&gt;

&lt;p&gt;The invoice tells you &lt;strong&gt;what the company owes&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Application-level cost attribution tells you &lt;strong&gt;what created the obligation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Once that information exists, entirely new questions become easy to answer.&lt;/p&gt;

&lt;p&gt;You can compare feature revenue with feature cost. You can identify customers whose usage patterns are structurally different from everyone else's. You can discover that a new release increased the cost of a workflow. You can compare two implementations not only on latency but on cost per successful outcome.&lt;/p&gt;

&lt;p&gt;Most importantly, engineers gain a feedback loop.&lt;/p&gt;

&lt;p&gt;Without that loop, architecture has financial side effects that remain invisible until someone notices the monthly bill.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Most Dangerous Customer May Be Your “Best” Customer
&lt;/h2&gt;

&lt;p&gt;SaaS dashboards train teams to celebrate heavy users.&lt;/p&gt;

&lt;p&gt;More sessions.&lt;/p&gt;

&lt;p&gt;More queries.&lt;/p&gt;

&lt;p&gt;More generated content.&lt;/p&gt;

&lt;p&gt;More uploaded files.&lt;/p&gt;

&lt;p&gt;More API calls.&lt;/p&gt;

&lt;p&gt;Usually, those are good signs.&lt;/p&gt;

&lt;p&gt;But usage and value are not identical.&lt;/p&gt;

&lt;p&gt;Consider two customers paying $500 per month.&lt;/p&gt;

&lt;p&gt;Customer A makes 2,000 lightweight requests, rarely contacts support, and consumes $35 of variable infrastructure.&lt;/p&gt;

&lt;p&gt;Customer B makes 70,000 requests, uploads unusually large files, frequently triggers the most expensive workflow, stores enormous amounts of generated data, and consumes $430 of variable infrastructure.&lt;/p&gt;

&lt;p&gt;A revenue dashboard sees two $500 customers.&lt;/p&gt;

&lt;p&gt;An economic model sees two completely different products being delivered at the same price.&lt;/p&gt;

&lt;p&gt;This becomes especially important when software contains AI workloads. The economics of AI are unusually sensitive to behavior because the cost of serving two apparently identical users can differ dramatically depending on context size, model selection, number of generations, retries, media processing, agent loops, or tool calls.&lt;/p&gt;

&lt;p&gt;That is one reason &lt;a href="https://stripe.com/resources/more/pricing-strategies-for-ai-companies" rel="noopener noreferrer"&gt;Stripe’s analysis of pricing for AI products&lt;/a&gt; focuses on connecting pricing with actual consumption and underlying compute economics rather than assuming the traditional flat subscription automatically works.&lt;/p&gt;

&lt;p&gt;Developers do not need to become pricing consultants to care about this.&lt;/p&gt;

&lt;p&gt;They need to understand that &lt;strong&gt;unbounded product behavior can create unbounded financial behavior&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  An Infinite Loop Can Now Appear on the Income Statement
&lt;/h2&gt;

&lt;p&gt;Software engineers already protect systems against technical runaway conditions.&lt;/p&gt;

&lt;p&gt;We limit recursion.&lt;/p&gt;

&lt;p&gt;We set timeouts.&lt;/p&gt;

&lt;p&gt;We cap retries.&lt;/p&gt;

&lt;p&gt;We rate-limit APIs.&lt;/p&gt;

&lt;p&gt;We kill jobs that run for too long.&lt;/p&gt;

&lt;p&gt;We stop queues from expanding indefinitely.&lt;/p&gt;

&lt;p&gt;But consider an AI agent.&lt;/p&gt;

&lt;p&gt;The agent receives a task, calls a model, invokes a tool, reads the result, decides it needs more information, calls another tool, queries the model again, retries an unsuccessful step, expands its context, and repeats the cycle.&lt;/p&gt;

&lt;p&gt;From a technical perspective, the workflow may still be functioning exactly as designed.&lt;/p&gt;

&lt;p&gt;From an economic perspective, it may have entered a runaway loop.&lt;/p&gt;

&lt;p&gt;This produces a new category of engineering requirement: &lt;strong&gt;financial bounds&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;An operation should not only have a timeout. It may need a cost ceiling.&lt;/p&gt;

&lt;p&gt;A job should not only have a maximum retry count. It may need a maximum cumulative inference budget.&lt;/p&gt;

&lt;p&gt;A customer should not only have an API rate limit. The application may need a resource budget based on the economics of the customer's plan.&lt;/p&gt;

&lt;p&gt;A feature should not only satisfy latency and reliability requirements. It may need an acceptable cost-per-successful-execution range.&lt;/p&gt;

&lt;p&gt;That sounds obvious once stated.&lt;/p&gt;

&lt;p&gt;It is rarely treated as a first-class software requirement.&lt;/p&gt;

&lt;h2&gt;
  
  
  Put Economics Into the Pull Request
&lt;/h2&gt;

&lt;p&gt;Here is where things get more interesting.&lt;/p&gt;

&lt;p&gt;Suppose a developer improves an AI workflow.&lt;/p&gt;

&lt;p&gt;The old implementation makes one expensive model call.&lt;/p&gt;

&lt;p&gt;The new implementation performs five smaller calls because the developer discovers that decomposition improves answer quality.&lt;/p&gt;

&lt;p&gt;The accuracy benchmark improves 8%.&lt;/p&gt;

&lt;p&gt;The latency remains acceptable.&lt;/p&gt;

&lt;p&gt;Tests pass.&lt;/p&gt;

&lt;p&gt;The pull request looks excellent.&lt;/p&gt;

&lt;p&gt;But suppose the cost per successful workflow rises from $0.11 to $0.39.&lt;/p&gt;

&lt;p&gt;Is the new version better?&lt;/p&gt;

&lt;p&gt;There is no universal answer.&lt;/p&gt;

&lt;p&gt;If customers pay $20 every time the workflow succeeds, almost certainly.&lt;/p&gt;

&lt;p&gt;If it is included without limits inside a $9 monthly plan, perhaps not.&lt;/p&gt;

&lt;p&gt;The point is that &lt;strong&gt;the economic regression belongs in the engineering discussion&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Teams already reject code because it creates unacceptable latency, memory consumption, security exposure, or reliability risk.&lt;/p&gt;

&lt;p&gt;Why should a 250% increase in variable cost remain invisible?&lt;/p&gt;

&lt;p&gt;For measurable workflows, teams can go surprisingly far with simple tooling.&lt;/p&gt;

&lt;p&gt;A benchmark suite can record the number of external calls.&lt;/p&gt;

&lt;p&gt;It can record input and output units.&lt;/p&gt;

&lt;p&gt;It can estimate compute duration.&lt;/p&gt;

&lt;p&gt;It can compare those values with a baseline.&lt;/p&gt;

&lt;p&gt;It can flag a pull request that makes a common workflow dramatically more expensive.&lt;/p&gt;

&lt;p&gt;Not every cost estimate will be perfect. It does not need to be.&lt;/p&gt;

&lt;p&gt;A smoke detector does not need to calculate the insurance value of the house before it becomes useful.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Database Query That Saves $50,000 Is Still an Optimization
&lt;/h2&gt;

&lt;p&gt;Developers frequently debate optimization using technical language.&lt;/p&gt;

&lt;p&gt;This query is 200 milliseconds faster.&lt;/p&gt;

&lt;p&gt;This cache reduces database load.&lt;/p&gt;

&lt;p&gt;This architecture supports more requests per second.&lt;/p&gt;

&lt;p&gt;This model produces better answers.&lt;/p&gt;

&lt;p&gt;Those are legitimate improvements.&lt;/p&gt;

&lt;p&gt;But at sufficient scale, some of the highest-impact performance work may be invisible when measured only in milliseconds.&lt;/p&gt;

&lt;p&gt;Imagine that a high-volume request performs three redundant database operations. Removing them saves an amount so small per request that nobody cares during development.&lt;/p&gt;

&lt;p&gt;Multiply that amount across hundreds of millions of executions.&lt;/p&gt;

&lt;p&gt;Now it matters.&lt;/p&gt;

&lt;p&gt;Or imagine that an image-processing workflow keeps the original, intermediate files, generated variants, and debug artifacts forever.&lt;/p&gt;

&lt;p&gt;Nothing breaks.&lt;/p&gt;

&lt;p&gt;Storage simply compounds.&lt;/p&gt;

&lt;p&gt;Or a tracing configuration sends huge payloads for successful requests that nobody will ever inspect.&lt;/p&gt;

&lt;p&gt;Or an AI application sends an entire conversation history back to a model even when only a small section is relevant.&lt;/p&gt;

&lt;p&gt;Technically, the product works.&lt;/p&gt;

&lt;p&gt;Economically, the implementation contains waste.&lt;/p&gt;

&lt;p&gt;The important shift is not “developers should always choose the cheapest architecture.”&lt;/p&gt;

&lt;p&gt;That would be bad engineering.&lt;/p&gt;

&lt;p&gt;The shift is: &lt;strong&gt;developers should be able to see the economic consequence of architectural choices.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sometimes paying more is absolutely correct.&lt;/p&gt;

&lt;p&gt;A more expensive model may improve conversion enough to justify itself.&lt;/p&gt;

&lt;p&gt;Additional redundancy may be essential for reliability.&lt;/p&gt;

&lt;p&gt;Lower latency may generate enough business value to justify significantly higher infrastructure spend.&lt;/p&gt;

&lt;p&gt;Premium observability may reduce incident duration.&lt;/p&gt;

&lt;p&gt;The goal is not minimum cost.&lt;/p&gt;

&lt;p&gt;The goal is deliberate cost.&lt;/p&gt;

&lt;h2&gt;
  
  
  “Unlimited” Is an Engineering Decision
&lt;/h2&gt;

&lt;p&gt;Product teams love the word “unlimited.”&lt;/p&gt;

&lt;p&gt;Customers do too.&lt;/p&gt;

&lt;p&gt;Engineers should hear something else when they see it:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What technically prevents one user from consuming 10,000 times more resources than another user paying the same price?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sometimes the answer is that nothing prevents it because marginal cost really is negligible.&lt;/p&gt;

&lt;p&gt;Fine.&lt;/p&gt;

&lt;p&gt;Sometimes the answer is that extreme usage is statistically rare enough that the economics still work.&lt;/p&gt;

&lt;p&gt;Also fine.&lt;/p&gt;

&lt;p&gt;But sometimes “unlimited” simply means nobody modeled the tail.&lt;/p&gt;

&lt;p&gt;Average users are frequently irrelevant to infrastructure risk. Outliers matter.&lt;/p&gt;

&lt;p&gt;The same principle appears in performance engineering.&lt;/p&gt;

&lt;p&gt;A system with a 100 ms average response time can still be terrible if its tail latency is 12 seconds.&lt;/p&gt;

&lt;p&gt;Product economics also have tails.&lt;/p&gt;

&lt;p&gt;The average customer may cost $6 per month to serve while the top one percent costs $90.&lt;/p&gt;

&lt;p&gt;If pricing was designed around the average, growth can gradually select for the customers who exploit the mismatch most effectively.&lt;/p&gt;

&lt;p&gt;That is not abuse.&lt;/p&gt;

&lt;p&gt;They are using the product you sold them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Build a Cost Map Before You Build a Cost Dashboard
&lt;/h2&gt;

&lt;p&gt;You do not need a massive FinOps implementation to start.&lt;/p&gt;

&lt;p&gt;You need to understand where money enters the execution path.&lt;/p&gt;

&lt;p&gt;For one important customer action, trace the full chain from click to result and identify every resource whose cost changes with usage.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Trigger:&lt;/strong&gt; user requests a video analysis&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Variable work:&lt;/strong&gt; upload, transcoding, model inference, object storage, database operations, data transfer, notifications&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cost driver:&lt;/strong&gt; video duration, resolution, model runtime, generated output size&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customer dimension:&lt;/strong&gt; tenant, plan, geography, contract type&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Product dimension:&lt;/strong&gt; feature, workflow version, experiment&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Business output:&lt;/strong&gt; successful analysis, revenue associated with usage, gross contribution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is the only list this article needs because the important part comes afterward.&lt;/p&gt;

&lt;p&gt;Instrument one workflow.&lt;/p&gt;

&lt;p&gt;Not the entire company.&lt;/p&gt;

&lt;p&gt;Pick the feature that is expensive, rapidly growing, strategically important, or difficult to understand.&lt;/p&gt;

&lt;p&gt;Then ask a question most teams cannot currently answer:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What happens to our gross profit if usage of this exact feature increases 10x tomorrow?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If the answer requires three people, two spreadsheets, a cloud invoice, and a week of analysis, the architecture is hiding business-critical information.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Best Architecture May Depend on Who Is Using It
&lt;/h2&gt;

&lt;p&gt;Cost attribution also complicates a sacred engineering instinct: finding the single “best” implementation.&lt;/p&gt;

&lt;p&gt;There may not be one.&lt;/p&gt;

&lt;p&gt;An enterprise customer paying $50,000 per year might justify a computationally expensive workflow that produces the highest possible accuracy.&lt;/p&gt;

&lt;p&gt;A self-service customer paying $12 per month may need a different model, smaller context window, lower retention period, asynchronous processing, or stricter usage limits.&lt;/p&gt;

&lt;p&gt;That is not necessarily an inferior product.&lt;/p&gt;

&lt;p&gt;It is resource allocation.&lt;/p&gt;

&lt;p&gt;Cloud architecture already changes resources according to workload. Product architecture can do the same according to economics.&lt;/p&gt;

&lt;p&gt;Model routing is an obvious example.&lt;/p&gt;

&lt;p&gt;A request does not automatically need the most capable model available.&lt;/p&gt;

&lt;p&gt;A lightweight classification might go to a smaller model. An ambiguous case can escalate. A high-value workflow can justify a more expensive path. Repeated context can be cached. Inputs can be compressed. Work that does not require immediate completion can be batched.&lt;/p&gt;

&lt;p&gt;The interesting engineering problem becomes:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is the cheapest execution path that still delivers the required outcome?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That is much better than asking engineers to “cut AI costs.”&lt;/p&gt;

&lt;h2&gt;
  
  
  Your Unit Test Knows Whether the Function Works. It Could Also Know Whether the Business Model Still Works.
&lt;/h2&gt;

&lt;p&gt;Software development has spent decades moving failure detection earlier.&lt;/p&gt;

&lt;p&gt;We moved testing from users to QA.&lt;/p&gt;

&lt;p&gt;Then from QA to automated test suites.&lt;/p&gt;

&lt;p&gt;Then into continuous integration.&lt;/p&gt;

&lt;p&gt;We moved security checks into development pipelines.&lt;/p&gt;

&lt;p&gt;We moved dependency scanning into pull requests.&lt;/p&gt;

&lt;p&gt;We moved performance benchmarks closer to the code.&lt;/p&gt;

&lt;p&gt;The same direction makes sense for variable product economics.&lt;/p&gt;

&lt;p&gt;A feature whose economics are only discovered on a monthly invoice has a feedback loop measured in weeks.&lt;/p&gt;

&lt;p&gt;A feature whose resource consumption is measured during development has a feedback loop measured in minutes.&lt;/p&gt;

&lt;p&gt;That does not mean putting the CFO in GitHub.&lt;/p&gt;

&lt;p&gt;It means recognizing a simple truth:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In modern metered software, cost is increasingly a runtime property.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Runtime properties belong close to engineering.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Next Generation of Great Developers Will Understand the Machine and the Meter
&lt;/h2&gt;

&lt;p&gt;There was a period when a developer could reasonably treat infrastructure economics as someone else's concern.&lt;/p&gt;

&lt;p&gt;Servers were purchased centrally. Finance handled contracts. Product set pricing. Engineering built the application.&lt;/p&gt;

&lt;p&gt;Cloud computing already weakened that separation.&lt;/p&gt;

&lt;p&gt;Serverless weakened it further.&lt;/p&gt;

&lt;p&gt;API-first software weakened it again.&lt;/p&gt;

&lt;p&gt;AI may finally destroy it.&lt;/p&gt;

&lt;p&gt;A developer can now add a few lines of code and change the company's variable cost structure instantly. Choosing a different model, changing context length, adding a second validation pass, moving data between regions, retaining files longer, increasing observability volume, or introducing a third-party API can alter the economics of a feature without changing its price by one cent.&lt;/p&gt;

&lt;p&gt;That gives engineers more responsibility.&lt;/p&gt;

&lt;p&gt;It also gives them more influence.&lt;/p&gt;

&lt;p&gt;The developer who can say, “This version is faster,” is useful.&lt;/p&gt;

&lt;p&gt;The developer who can say, “This version is faster, improves successful completion by 6%, and reduces cost per successful task by 31%,” is participating in the business at an entirely different level.&lt;/p&gt;

&lt;p&gt;The future of software engineering is not about turning developers into accountants.&lt;/p&gt;

&lt;p&gt;It is about giving architecture one more observable property.&lt;/p&gt;

&lt;p&gt;We already measure whether software works.&lt;/p&gt;

&lt;p&gt;We measure how fast it works.&lt;/p&gt;

&lt;p&gt;We measure whether it is available.&lt;/p&gt;

&lt;p&gt;We measure whether it is secure.&lt;/p&gt;

&lt;p&gt;Now, for the growing class of software in which every meaningful action consumes metered resources, we should measure one more thing:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Was executing it worth what it cost?&lt;/strong&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>The Most Dangerous File in Your Repo Might Be SECURITY.md</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 12:41:53 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/the-most-dangerous-file-in-your-repo-might-be-securitymd-5e52</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/the-most-dangerous-file-in-your-repo-might-be-securitymd-5e52</guid>
      <description>&lt;p&gt;Developers write far more legally consequential prose than they think, and almost none of it is code. It's the SECURITY.md in the repo root. It's the "Security" page someone in marketing asked you to fill in three years ago. It's the status page update typed at 2 a.m., and the sentence in a customer notice specifying exactly which data was affected. The research summarized in &lt;a href="https://arcarrierpoint.net/what-research-says-about-cyber-incident-disclosure/" rel="noopener noreferrer"&gt;this overview of what the evidence shows about cyber incident disclosure&lt;/a&gt; treats post-breach communication as a measurable discipline with predictable failure modes — and the enforcement record of the last three years has quietly turned it into an engineering discipline too. In the most closely watched cybersecurity case of the decade, the only allegation that survived a motion to dismiss concerned a technical description of access controls posted on a website.&lt;/p&gt;

&lt;h2&gt;
  
  
  The claim that survived was written by engineers
&lt;/h2&gt;

&lt;p&gt;On July 18, 2024, Judge Paul Engelmayer of the Southern District of New York issued a 107-page opinion in the SEC's case against SolarWinds and its CISO. Most of it was a defeat for the agency. Claims built on blog posts, press releases, and podcast appearances were dismissed as &lt;strong&gt;non-actionable corporate puffery&lt;/strong&gt; — statements too general for any reasonable investor to lean on. The theory that cybersecurity controls fall under "internal accounting controls" was rejected outright. Post-incident 8-K disclosures were held to be reasonable given what was knowable at the time.&lt;/p&gt;

&lt;p&gt;One thing lived: the company's "Security Statement," a technical page describing its practices to customers. The court let claims proceed specifically on its representations about &lt;strong&gt;access controls and password policy&lt;/strong&gt;, because those were concrete enough to rely on and, as pled, contradicted by internal presentations, security assessments, and Slack messages. The SEC ultimately dismissed the whole action with prejudice in November 2025, so no liability was ever established — but the legal line drawn in 2024 didn't go anywhere. Vague marketing language is protected precisely because it says nothing. The specific, verifiable technical claim is the one with teeth.&lt;/p&gt;

&lt;p&gt;Read that sentence again if you maintain a trust page. "We take security seriously" is legally inert. "All administrative access requires MFA" is a factual assertion about your infrastructure that someone will one day compare against your actual IAM configuration, your Jira backlog, and your team's Slack history.&lt;/p&gt;

&lt;h2&gt;
  
  
  A file-name review became a false public statement
&lt;/h2&gt;

&lt;p&gt;The second case is more uncomfortable, because the mistake was a technical judgment call that any of us could make under pressure.&lt;/p&gt;

&lt;p&gt;Blackbaud discovered a ransomware intrusion in May 2020. To scope it, technology staff reviewed the &lt;strong&gt;names&lt;/strong&gt; of exfiltrated files rather than analyzing their contents. Based on that review, the company posted a notice in July 2020 telling customers the attacker had not accessed bank account information or Social Security numbers. Then customers began writing in — over a thousand messages — many pointing out that they had entered sensitive data into fields the software did not encrypt. Deeper analysis confirmed unencrypted bank account details and Social Security numbers had in fact been taken. That finding never reached the people responsible for the company's public disclosures, and the website statement stayed uncorrected while a later quarterly filing described data-exfiltration risk as hypothetical. &lt;a href="https://www.sec.gov/files/litigation/admin/2023/33-11165.pdf" rel="noopener noreferrer"&gt;The SEC's settled order&lt;/a&gt; imposed a $3 million penalty in March 2023, without alleging intentional misconduct.&lt;/p&gt;

&lt;p&gt;There is no villain in that story. There is a scoping shortcut, a schema assumption ("that field holds notes, not SSNs"), and a missing edge in the org chart between the person who learned the truth and the person who had published the falsehood. All three are engineering artifacts.&lt;/p&gt;

&lt;h2&gt;
  
  
  It is not only a public-company problem
&lt;/h2&gt;

&lt;p&gt;Anyone at a startup assuming this is a Fortune 500 concern should read &lt;a href="https://www.ftc.gov/news-events/news/press-releases/2025/05/ftc-finalizes-order-godaddy-over-data-security-failures" rel="noopener noreferrer"&gt;the FTC's finalized order against GoDaddy&lt;/a&gt; from May 2025. The agency's theory was straightforward: the company advertised "award-winning security" while lacking multi-factor authentication, threat monitoring, and secure connections for customer data. Section 5 of the FTC Act reaches any company making deceptive claims, private or public, seed-stage or not. The remedy reads like a backlog someone else wrote for you — mandatory MFA including at least one method that doesn't require a phone number, HTTPS on APIs handling covered information, an update-management program, biennial third-party assessments, and incident reporting to the Commission within ten days.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why silence is not the safe default
&lt;/h2&gt;

&lt;p&gt;The instinct after reading all this is to say nothing about security anywhere, ever. The empirical record argues the opposite. In a study published in the &lt;em&gt;Review of Accounting Studies&lt;/em&gt;, Amir, Levi, and Livne compared attacks companies disclosed themselves against attacks that were concealed and later surfaced by outsiders. Withheld incidents were associated with roughly a &lt;strong&gt;3.6% decline&lt;/strong&gt; in equity value in the month of discovery; disclosed incidents, around &lt;strong&gt;0.7%&lt;/strong&gt;. Their model also suggested managers tend to speak only once outsiders already suspect an attack with about 40% probability — meaning the incidents that stay hidden skew toward the severe ones, and the "breaches don't really hurt stock prices" folk wisdom is built largely on the mild cases that got announced.&lt;/p&gt;

&lt;p&gt;So the goal is not silence. It is writing things that stay true under adversarial reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Describe controls that are enforced, not intended.&lt;/strong&gt; If MFA is required for 94% of admin accounts, the honest sentence names the exception. A published claim your own audit log contradicts is the exact shape of every case above.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Version your security page like code.&lt;/strong&gt; Keep it in the repo, require review, and let &lt;code&gt;git log&lt;/code&gt; prove when each claim was accurate. An undated marketing page is a permanent unqualified assertion.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Never scope a breach by metadata alone.&lt;/strong&gt; File names, table names, and bucket paths describe intent, not contents. Users put card numbers in "comments" fields. Verify before publishing a negative.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prefer "we have confirmed X" over "Y did not happen."&lt;/strong&gt; Negative claims require exhaustive verification; positive claims about confirmed findings age gracefully as the investigation continues.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Make correction a defined path, not a favor.&lt;/strong&gt; Whoever discovers the earlier statement was wrong needs a named recipient and an obligation to use it. Blackbaud's penalty rests substantially on that link being absent.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Assume Slack is exhibit A.&lt;/strong&gt; Internal messages contradicting public claims were central to the surviving SolarWinds allegation. Write internally as though it will be read aloud, not because you're hiding anything, but because accurate internal writing is what makes accurate public writing possible.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The uncomfortable summary
&lt;/h2&gt;

&lt;p&gt;Nothing in the enforcement record punishes being breached. Courts and regulators accept that competent organizations get compromised. What draws liability is the delta between what a company published about itself and what its own engineers knew — a gap authored, almost always, by people writing documentation rather than exploits.&lt;/p&gt;

&lt;p&gt;The fix isn't legal review of everything. It's treating security documentation as a claim about a system, with the same expectation of verification you'd apply to any other assertion about production. If you can't point to the control that makes a sentence true, delete the sentence.&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>github</category>
      <category>security</category>
      <category>software</category>
    </item>
    <item>
      <title>The Engineering Principle Your Startup's Balance Sheet Is Missing</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 12:36:54 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/the-engineering-principle-your-startups-balance-sheet-is-missing-4l2k</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/the-engineering-principle-your-startups-balance-sheet-is-missing-4l2k</guid>
      <description>&lt;p&gt;Developers spend years internalizing a simple truth: unreadable code eventually kills a project, no matter how clever it is. What most of us never notice is that the same law governs the business wrapped around our code, and a recent piece arguing that &lt;a href="https://intelligentnews.co.uk/the-new-financial-edge-is-not-growth-it-is-legibility/" rel="noopener noreferrer"&gt;the real financial edge is legibility, not growth&lt;/a&gt;, makes that connection impossible to ignore. A company whose finances cannot be read quickly by an investor, a lender, or a senior engineer deciding whether to accept an offer is carrying the corporate equivalent of a 4,000-line function with no tests. It might run today. Nobody can safely bet on it tomorrow.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Engineers Should Care About a Finance Concept
&lt;/h2&gt;

&lt;p&gt;If you write software for a living, your salary, your equity, and your roadmap all sit downstream of decisions made by people reading your company's numbers. When those numbers are confusing, the confusion does not stay in the finance department. It shows up as a hiring freeze announced without warning, a "strategic pivot" that kills the service you spent a year building, or a funding round that closes on brutal terms because investors priced in uncertainty.&lt;/p&gt;

&lt;p&gt;Paul Graham captured the core question years ago in his essay on whether a startup is &lt;a href="https://www.paulgraham.com/aord.html" rel="noopener noreferrer"&gt;default alive or default dead&lt;/a&gt;: given current growth and current spending, does the company reach profitability before the money runs out? What is striking about that framing is how few founders can answer it, and how few engineers ever think to ask. Legibility starts exactly there. A financially legible company can answer that question in one sentence, with numbers, on any given Tuesday.&lt;/p&gt;

&lt;p&gt;The parallel to software is almost mechanical. &lt;strong&gt;Technical debt&lt;/strong&gt; is the gap between how a system behaves and how easily that behavior can be understood. &lt;strong&gt;Financial illegibility&lt;/strong&gt; is the gap between how a business performs and how easily that performance can be verified. Both compound quietly. Both feel free right up until the moment someone external needs to evaluate you, whether that is a new team member reading the codebase or a bank reading the ledger.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reading a Company the Way You Read a Codebase
&lt;/h2&gt;

&lt;p&gt;Engineers already own the mental tools for this. You know how to trace data flow, distinguish signal from noise, and spot the difference between a system that works and a system that merely demos well. Applied to a business, that skill set translates into a short review checklist worth running before you join a startup, accept equity in place of cash, or push your own side project toward incorporation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Trace the cash, not the revenue.&lt;/strong&gt; Revenue is a promise; cash arriving in the account is the merged pull request. Ask how long the gap is between "customer signed" and "money landed."&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Check the dependencies.&lt;/strong&gt; One customer generating 40% of income is a single point of failure, exactly like one unmaintained library holding up production.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Look for observability.&lt;/strong&gt; Can leadership produce current runway, gross margin, and burn within a day? If the answer requires "pulling some things together," the monitoring stack is fiction.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Read the error handling.&lt;/strong&gt; How does the company behave when a big invoice is paid late? Improvised panic is a smell; a documented playbook is a feature.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inspect the interfaces.&lt;/strong&gt; Do the story told to investors, the story told to employees, and the actual ledger describe the same system? Divergence between docs and code is always a warning.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is the only list you need, because the underlying move is singular: treat the business as a system under review and refuse to accept "trust me, it's fine" as a substitute for readable state.&lt;/p&gt;

&lt;h2&gt;
  
  
  Working Capital Is Just Memory Management
&lt;/h2&gt;

&lt;p&gt;The least glamorous concept in this whole domain turns out to be the most decisive one. Working capital, which Investopedia defines cleanly as the difference between &lt;a href="https://www.investopedia.com/terms/w/workingcapital.asp" rel="noopener noreferrer"&gt;current assets and current liabilities&lt;/a&gt;, is effectively a company's available RAM. Inventory sitting in a warehouse is allocated memory doing nothing. Unpaid invoices are pointers to money that exists in theory. A business can post impressive growth while leaking working capital the way a service leaks memory: everything looks fine on the dashboard until the process gets killed at 3 a.m.&lt;/p&gt;

&lt;p&gt;For anyone freelancing or running a small SaaS, this stops being an analogy and becomes daily reality. Invoicing the day work ships, setting payment terms before delivery rather than after, and knowing your personal runway to the week are not accounting chores. They are the financial equivalent of writing tests before merging: small disciplines that make your entire operation auditable by anyone, including future you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Legibility Is a Feature You Can Ship
&lt;/h2&gt;

&lt;p&gt;Here is the optimistic ending, and it is genuinely optimistic. Unlike growth, which depends heavily on market luck, legibility is fully within your control. You can ship it. A one-page document explaining how your project makes money, a spreadsheet that reconciles with the bank account, a public changelog of pricing decisions, a straight answer to the default-alive question: each of these is a pull request against the fog.&lt;/p&gt;

&lt;p&gt;The companies and the individual developers who win the next few years will not necessarily be the fastest-growing ones. They will be the ones that are easiest to believe, because every claim they make can be traced to evidence in constant time. Make your finances as readable as you wish every codebase were, and you will have built the rarest asset in a skeptical market: a story that survives code review.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Media Exposure Is the Underrated Growth Lever Most Technical Founders Ignore</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 12:36:30 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/why-media-exposure-is-the-underrated-growth-lever-most-technical-founders-ignore-2g3g</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/why-media-exposure-is-the-underrated-growth-lever-most-technical-founders-ignore-2g3g</guid>
      <description>&lt;p&gt;Every developer who has ever shipped a side project knows the painful silence that follows a launch: the code works, the product solves a real problem, and yet nobody outside your immediate circle seems to notice. Most technical founders respond by writing more code, when the real bottleneck is visibility — and as a detailed breakdown of &lt;a href="https://www.freelistingusa.com/blog/pr-as-a-gateway-how-media-exposure-opens-doors-to-investors-and-strategic-partners/" rel="noopener noreferrer"&gt;PR as a gateway to investors and strategic partners&lt;/a&gt; explains, earned media coverage is often the single most efficient way to put your project in front of the exact people who can fund it, integrate with it, or acquire it. This is not marketing fluff. It is a measurable input into how investors and partners evaluate risk, and it deserves the same engineering mindset you apply to everything else you build.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Due Diligence Problem You Didn't Know You Had
&lt;/h2&gt;

&lt;p&gt;Here is an uncomfortable truth: before any investor or potential partner takes a meeting with you, they Google you. If that search returns an empty page — no articles, no interviews, no independent mention of your product anywhere — it raises questions. Have you been building in stealth? Is there no market interest? Is the founder unable to articulate the story?&lt;/p&gt;

&lt;p&gt;Silence reads as risk. A single feature in a respected publication, on the other hand, works as third-party validation: an editor with no financial stake in your success decided your story was worth telling. That signal cannot be bought with ad spend, which is precisely why it carries weight. Research consistently shows that audiences — and investors are an audience too — trust independent editorial voices far more than paid promotion, a point argued convincingly in Forbes' analysis of &lt;a href="https://www.forbes.com/councils/forbesagencycouncil/2026/03/12/why-earned-media-still-outperforms-paid-when-trust-matters-most/" rel="noopener noreferrer"&gt;why earned media still outperforms paid channels when trust matters most&lt;/a&gt;. For a bootstrapped developer, this is excellent news: credibility is one of the few growth assets that does not require a marketing budget.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Coverage Compounds Like Technical Debt in Reverse
&lt;/h2&gt;

&lt;p&gt;Think of media exposure as the inverse of technical debt. Each placement is a small commit to a public repository of trust, and the interest compounds in your favor. One article leads to a podcast invitation. The podcast leads to a conference panel. The panel puts you in a hallway conversation with a partner at a fund who read that first article six months ago. None of these steps is dramatic on its own, but the chain reaction is what opens doors that cold emails never will.&lt;/p&gt;

&lt;p&gt;There is also a very modern twist: AI assistants and answer engines increasingly synthesize their recommendations from earned media. When a potential customer or investor asks a chatbot "who are the interesting players in this space," the companies that appear are the ones with a documented public footprint. Your press coverage is now training data for the systems advising your future stakeholders.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Practical Playbook for Developers Who Hate Self-Promotion
&lt;/h2&gt;

&lt;p&gt;You do not need an agency or a rolodex of journalists to get started. You need a story that is genuinely useful to a reporter's readers, delivered without jargon. Here is a minimal viable approach:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Lead with data you own.&lt;/strong&gt; Usage metrics, benchmark results, or an unexpected trend from your logs give journalists something exclusive they cannot get elsewhere.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Write the post-mortem nobody else will.&lt;/strong&gt; Honest accounts of failures, migrations, and hard trade-offs are catnip for tech media and build more credibility than any success story.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Target tier-appropriate outlets first.&lt;/strong&gt; A niche developer publication that actually covers your category beats a long-shot pitch to a national outlet, and it becomes proof for the next, bigger pitch.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Time announcements around milestones.&lt;/strong&gt; Funding rounds, major releases, and notable customer wins give editors a news hook and give investors a reason to look twice.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Make yourself quotable.&lt;/strong&gt; Short, opinionated, technically grounded commentary on industry news positions you as a source journalists return to.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The pattern behind all five tactics is the same: give before you ask. Journalists are drowning in pitches that say "cover me"; they respond to pitches that say "here is something your readers will thank you for."&lt;/p&gt;

&lt;h2&gt;
  
  
  The Investor Math Behind a Headline
&lt;/h2&gt;

&lt;p&gt;Skeptical engineers reasonably ask whether any of this moves real numbers. The evidence says yes. Companies that build media presence before a raise consistently report faster fundraising cycles and stronger inbound interest, because coverage converts a cold pitch into a warm one — the investor has already encountered your name in a context they trust. Entrepreneur's examination of &lt;a href="https://www.entrepreneur.com/growing-a-business/why-startups-need-public-relations-to-spark-growth-and/485672" rel="noopener noreferrer"&gt;how public relations sparks growth and credibility for startups&lt;/a&gt; reaches the same conclusion: meaningful press in respected outlets directly increases investor confidence and strengthens a company's position in funding and acquisition conversations.&lt;/p&gt;

&lt;p&gt;None of this replaces building a great product. But if you have already done the hard part — shipping something people need — then staying invisible is a choice, and an expensive one. Treat visibility as part of your stack. Instrument it, iterate on it, and let each piece of coverage do what good infrastructure always does: quietly open doors while you sleep.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Your Architecture Now Matters More Than Your Model</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 12:35:55 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/why-your-architecture-now-matters-more-than-your-model-31he</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/why-your-architecture-now-matters-more-than-your-model-31he</guid>
      <description>&lt;p&gt;For the past few years, engineering conversations have been dominated by a single question: which model is best? Teams argued over benchmarks, swapped API keys the moment a new release dropped, and treated model choice as the decisive factor in product quality. That era is ending. A recent discussion on &lt;a href="https://listen.hubhopper.com/episode/why-the-next-technology-advantage-will-come-from-systems-not-models/32990503?s=hh-web-app" rel="noopener noreferrer"&gt;why the next technology advantage will come from systems, not models&lt;/a&gt; captures the shift precisely: as frontier models converge in capability, the durable edge moves to the layer around the model — retrieval, orchestration, evaluation, feedback loops, and the unglamorous plumbing that turns raw intelligence into a dependable product. If you build software today, this reframing should change how you spend your engineering hours.&lt;/p&gt;

&lt;h2&gt;
  
  
  Models Are Becoming a Commodity Layer
&lt;/h2&gt;

&lt;p&gt;Look at any capability benchmark from the last eighteen months and a pattern emerges: the gap between top-tier models keeps shrinking, and the gap between a given model today and the same family six months ago keeps widening. Whatever advantage you gain by picking "the best" model evaporates on the next release cycle — often in weeks. Meanwhile, switching costs between providers keep falling because APIs look increasingly alike.&lt;/p&gt;

&lt;p&gt;What does not evaporate is the system you build around the model. Your retrieval pipeline that surfaces the right context at the right moment. Your evaluation harness that catches regressions before users do. Your fallback logic, your caching strategy, your guardrails, your data flywheel. These compound. A competitor can adopt your model tomorrow; they cannot adopt your two years of accumulated system design overnight.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Lesson Engineers Learned a Decade Ago
&lt;/h2&gt;

&lt;p&gt;None of this is actually new. Researchers at Google warned about it back in 2015, in the now-classic paper on &lt;a href="https://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems" rel="noopener noreferrer"&gt;hidden technical debt in machine learning systems&lt;/a&gt;, which showed that the learning code itself is a tiny black box in the middle of a sprawling diagram of configuration, data verification, serving infrastructure, and monitoring. The model was never the hard part. The system was. Large language models did not repeal that finding — they amplified it, because prompts, context windows, and non-deterministic outputs introduce entirely new categories of entanglement and silent failure.&lt;/p&gt;

&lt;p&gt;The practical implication is uncomfortable for teams that have organized themselves around model selection. If ninety percent of your production risk lives outside the model, then ninety percent of your engineering attention should live there too.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the Real Leverage Hides
&lt;/h2&gt;

&lt;p&gt;So what does "investing in the system" actually mean day to day? In my experience reviewing AI-heavy codebases, the highest-leverage work clusters in a few places:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Evaluation before optimization.&lt;/strong&gt; Teams that cannot measure output quality end up arguing from vibes. A few hundred labeled examples and an automated eval loop beat any amount of prompt tinkering, because they tell you whether a change helped at all.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Context engineering over prompt engineering.&lt;/strong&gt; The single biggest driver of answer quality is usually what information reaches the model, not how politely you ask. Retrieval quality, chunking strategy, and freshness of source data deserve real design reviews.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Graceful degradation.&lt;/strong&gt; Timeouts, malformed outputs, and rate limits are certainties, not edge cases. Systems that retry intelligently, fall back to cheaper models, or fail visibly earn user trust that no benchmark score can buy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Feedback capture.&lt;/strong&gt; Every user correction is training signal. Products that log it, structure it, and route it back into evals build a moat that widens with usage.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Notice that none of these items require frontier research. They require the same disciplines — testing, observability, incremental design — that good engineers already practice, applied to a stochastic component.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Human Side of the System
&lt;/h2&gt;

&lt;p&gt;There is one more component in every AI system that rarely appears in architecture diagrams: the people operating it. Harvard Business School professor Karim Lakhani put it memorably when he argued that &lt;a href="https://hbr.org/2023/08/ai-wont-replace-humans-but-humans-with-ai-will-replace-humans-without-ai" rel="noopener noreferrer"&gt;AI won't replace humans, but humans with AI will replace humans without it&lt;/a&gt;. Translated into engineering terms, the organizations that win are the ones where developers, reviewers, and domain experts are woven into the loop — labeling edge cases, auditing outputs, and continuously teaching the system what "good" looks like. A brilliant model dropped into a team with no review culture produces confident garbage at scale. A merely decent model embedded in a well-designed sociotechnical loop improves every single week.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to Do Differently Starting Monday
&lt;/h2&gt;

&lt;p&gt;Stop asking "which model should we use?" as your opening question. Ask instead: how will we know if output quality drops? Where does our context come from, and how stale is it? What happens when the API fails at 2 a.m.? Who reviews the cases the system gets wrong, and where does that knowledge go? Answer those four questions well and the model becomes what it was always destined to be — a swappable part inside something much harder to copy. The advantage was never in the weights. It is in the wiring, and the wiring is yours to build.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
      <category>llm</category>
      <category>systemdesign</category>
    </item>
    <item>
      <title>Why Engineers Who Ignore PR Are Leaving Growth on the Table</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 12:35:28 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/why-engineers-who-ignore-pr-are-leaving-growth-on-the-table-4b8f</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/why-engineers-who-ignore-pr-are-leaving-growth-on-the-table-4b8f</guid>
      <description>&lt;p&gt;Most developers treat public relations the way they treat legacy code: someone else's problem, best avoided. You ship the product, the marketing team "does the talking," and the two worlds rarely meet. But if you've ever launched a side project into total silence, you already know that great engineering doesn't distribute itself. A thoughtful breakdown of &lt;a href="https://getinkspired.com/en/blog/601987/post/1760341/strategic-pr-as-a-growth-tool/" rel="noopener noreferrer"&gt;strategic PR as a growth tool&lt;/a&gt; makes a point worth internalizing early: reputation compounds like interest, and the teams that plan for it deliberately grow faster than the teams that hope for it. This article is about what that means in practice for people who write code for a living.&lt;/p&gt;

&lt;h2&gt;
  
  
  PR Is Infrastructure, Not Decoration
&lt;/h2&gt;

&lt;p&gt;Think of public relations the way you think about observability. Nobody &lt;em&gt;needs&lt;/em&gt; logging until something breaks, and nobody &lt;em&gt;needs&lt;/em&gt; a reputation until a customer, investor, or hiring manager googles you. By then it's too late to start building one.&lt;/p&gt;

&lt;p&gt;The mechanics are surprisingly close to systems design. A press mention is a cache hit: someone else's audience discovers you without you paying for the impression. A founder's technical blog post is a long-lived service: it keeps answering requests years after deployment. A crisis response is your incident runbook: if you write it during the outage, you've already lost. The teams that win treat all of this as &lt;strong&gt;infrastructure built before it's needed&lt;/strong&gt;, not decoration bolted on after launch.&lt;/p&gt;

&lt;p&gt;There's hard data behind the intuition. The &lt;a href="https://www.edelman.com/trust/2026/trust-barometer" rel="noopener noreferrer"&gt;2026 Edelman Trust Barometer&lt;/a&gt; found that people worldwide are retreating into smaller, more insular circles of trust — 70% are hesitant to trust anyone whose values or background differ from their own. For a startup, that's a brutal environment: strangers don't extend benefit of the doubt anymore. The only reliable way through is third-party validation — coverage, community reputation, and voices your audience already trusts vouching for you. That is precisely what strategic PR manufactures.&lt;/p&gt;

&lt;h2&gt;
  
  
  What "Strategic" Actually Means for a Technical Team
&lt;/h2&gt;

&lt;p&gt;The word "strategic" separates PR from noise. Spraying press releases at journalists is the marketing equivalent of committing directly to main and hoping CI catches it. A strategy has a target state, constraints, and a feedback loop.&lt;/p&gt;

&lt;p&gt;For a developer-led company, that usually looks like this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pick one narrative and repeat it relentlessly.&lt;/strong&gt; "We make Postgres backups boring" beats five clever taglines. Journalists, users, and search engines all reward consistency.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Publish engineering content that only you could write.&lt;/strong&gt; Post-mortems, benchmark deep-dives, migration war stories. This is the rare PR channel where technical honesty &lt;em&gt;is&lt;/em&gt; the differentiator.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instrument everything.&lt;/strong&gt; Track referral traffic, branded search volume, and inbound demo requests after each placement. If you can't measure a channel, you can't justify it — the same rule you apply to features.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prepare the crisis playbook now.&lt;/strong&gt; Draft the security-incident statement before the incident. Decide who speaks, on which channel, within what SLA. Calm, fast, honest responses have saved companies that slow silence would have killed.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Notice what's absent: buying followers, chasing virality, gaming anything. Strategic PR is boring in the way good infrastructure is boring — deliberate inputs, compounding outputs.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Trust Dividend Nobody Budgets For
&lt;/h2&gt;

&lt;p&gt;Here's the part that rarely makes it into a quarterly plan. Trust doesn't just make selling easier; it lowers the cost of &lt;em&gt;everything&lt;/em&gt;. Recruiting gets cheaper because candidates arrive pre-convinced. Partnerships close faster because due diligence starts from goodwill. Even fundraising terms improve, because investors price risk, and reputation is risk reduction they can see.&lt;/p&gt;

&lt;p&gt;Harvard Business Review's ongoing coverage of &lt;a href="https://hbr.org/topic/subject/public-relations" rel="noopener noreferrer"&gt;public relations and stakeholder trust&lt;/a&gt; keeps circling one uncomfortable finding: only about a third of consumers trust the brands they use, and public-facing communication is often what tips the balance between the trusted third and everyone else. If you want the praise when things go well, you have to build the credibility to survive when they don't. That trade is the entire business case for doing PR on purpose.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start Smaller Than You Think
&lt;/h2&gt;

&lt;p&gt;You don't need an agency retainer to begin. Write one genuinely useful technical post this month. Answer one journalist's request for expert comment. Document one architectural decision publicly. Each artifact is a small deposit into an account that pays out at the exact moment you need it most — a launch, a funding round, a bad day.&lt;/p&gt;

&lt;p&gt;Engineers already understand compounding systems better than almost anyone. Reputation is just another one. The only mistake is waiting until you need it to start building it.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Every Developer Should Understand Cryptocurrency Before Writing a Single Line of Web3 Code</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 12:35:00 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/why-every-developer-should-understand-cryptocurrency-before-writing-a-single-line-of-web3-code-41gf</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/why-every-developer-should-understand-cryptocurrency-before-writing-a-single-line-of-web3-code-41gf</guid>
      <description>&lt;p&gt;Most engineers meet cryptocurrency the wrong way around: they clone a Solidity boilerplate, deploy a token to a testnet, and only later ask what problem this technology actually solves. Reversing that order pays off, and a solid primer on &lt;a href="https://www.europeanbusinessreview.com/this-is-what-you-should-know-about-cryptocurrency-before-2023/" rel="noopener noreferrer"&gt;what you should know about cryptocurrency&lt;/a&gt; is a better first step than any tutorial, because the conceptual foundations — decentralization, cryptographic ownership, consensus — have not changed even as the tooling around them evolved dramatically. If you understand why a distributed ledger exists, the code you write on top of it becomes far easier to reason about, audit, and defend.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Mental Model: Money as a State Machine
&lt;/h2&gt;

&lt;p&gt;Strip away the hype and a blockchain is a replicated state machine with an unusual trust model. Every full node holds the same append-only log, and the network agrees on the next valid state transition without a central coordinator. For a backend developer, this is both familiar and alien. Familiar, because event sourcing and distributed consensus (Raft, Paxos) are established patterns. Alien, because the participants are assumed to be adversarial, which is why proof-of-work and proof-of-stake exist at all: they make lying about the ledger economically irrational rather than merely difficult.&lt;/p&gt;

&lt;p&gt;This adversarial assumption changes how you write software. In a conventional CRUD app, a bug ships a patch. On-chain, a bug in an immutable contract can drain funds permanently. &lt;strong&gt;Code is not just logic; it is custody.&lt;/strong&gt; That single sentence explains most of the engineering culture around audits, formal verification, and multi-signature deployments.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Developers Consistently Get Wrong
&lt;/h2&gt;

&lt;p&gt;The gap between crypto-curious developers and production-ready ones usually comes down to a handful of misconceptions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Confusing wallets with accounts.&lt;/strong&gt; A wallet stores keys, not coins. The "balance" is a derived value computed from ledger history, which is why losing a private key means losing access forever — there is no password-reset endpoint.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Treating gas as a nuisance instead of a design constraint.&lt;/strong&gt; Fees are the pricing signal of a shared computer. Efficient storage layouts and batched transactions are not micro-optimizations; they are the difference between a usable product and an abandoned one.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Assuming volatility is the whole story.&lt;/strong&gt; Stablecoins and settlement rails behave very differently from speculative tokens, and conflating them leads to bad architecture decisions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ignoring the regulatory layer.&lt;/strong&gt; Compliance requirements shape token design as much as any technical spec, and pretending otherwise is how promising projects die in legal review.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each of these mistakes is cheap to fix in a design document and catastrophically expensive to fix after mainnet deployment.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Business Layer You Cannot Skip
&lt;/h2&gt;

&lt;p&gt;Engineers love to dismiss the "business side," but in this domain the economics are the protocol. Incentive design determines whether validators behave honestly, whether liquidity stays in a pool, and whether users tolerate transaction costs. Researchers at Harvard have documented how &lt;a href="https://hbr.org/2022/05/how-digital-currencies-can-help-small-businesses" rel="noopener noreferrer"&gt;digital currencies can reshape payments for small businesses&lt;/a&gt;, lowering cross-border settlement costs that traditional rails have kept artificially high for decades. That is the actual product story: not price charts, but cheaper, faster, programmable movement of value. A developer who can articulate that story writes better requirements, asks sharper questions in sprint planning, and builds features people genuinely need.&lt;/p&gt;

&lt;p&gt;It also helps to be honest about trade-offs. Decentralization costs throughput. Immutability costs flexibility. Transparency costs privacy. Great crypto engineering is the art of choosing which of those costs your specific use case can afford — a payments app, an identity system, and a game economy will land in three different places on that spectrum, and no single chain is optimal for all of them.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Practical Learning Path That Actually Works
&lt;/h2&gt;

&lt;p&gt;Start with primary sources instead of influencer threads. Read the Bitcoin whitepaper (nine pages, remarkably readable), then work through a reference explainer such as Investopedia's guide to &lt;a href="https://www.investopedia.com/terms/c/cryptocurrency.asp" rel="noopener noreferrer"&gt;how cryptocurrency functions as an asset and a technology&lt;/a&gt;, which grounds the vocabulary you will encounter in every spec and audit report afterward. Next, run a local node and watch real transactions propagate; nothing demystifies consensus like observing it in your own terminal. Only then move to smart-contract development, and treat your first deployments as disposable experiments, not products.&lt;/p&gt;

&lt;p&gt;Finally, build something small that touches real constraints: a faucet with rate limiting, a gas-cost dashboard, a script that verifies Merkle proofs. Toy projects that interact with live network conditions teach more than any course, because they force you to handle reorgs, nonce management, and fee spikes — the unglamorous details that separate demos from software.&lt;/p&gt;

&lt;p&gt;The technology will keep mutating. The fundamentals in this article will not. Learn them once, properly, and every future framework becomes just another syntax on top of ideas you already own.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>You Shipped the Product and Closed the Round. Now Comes the Part Nobody Prepared You For</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Tue, 18 Aug 2026 12:33:18 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/you-shipped-the-product-and-closed-the-round-now-comes-the-part-nobody-prepared-you-for-1b1i</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/you-shipped-the-product-and-closed-the-round-now-comes-the-part-nobody-prepared-you-for-1b1i</guid>
      <description>&lt;p&gt;There is a strange silence that settles over a startup the week after a funding announcement. The wire transfer clears, the congratulatory messages slow down, and suddenly the metric that matters is no longer "can we raise" but "will anyone believe us." Most technical founders discover this the hard way, which is why the argument laid out in &lt;a href="https://ipsnews.net/business/2025/07/12/youve-secured-funding-now-build-trust-why-pr-is-your-next-strategic-move/" rel="noopener noreferrer"&gt;this breakdown of why PR is your next strategic move after securing funding&lt;/a&gt; deserves more attention from engineering-led teams than it typically gets. Capital buys you runway; it does not buy you credibility. And credibility, not code, is usually the bottleneck between a funded startup and its first hundred paying customers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Engineers Underestimate the Trust Problem
&lt;/h2&gt;

&lt;p&gt;If you come from a software background, you are trained to believe that quality is self-evident. Good code passes tests. Fast APIs benchmark well. The product either works or it doesn't. Trust feels like something that should emerge automatically from technical excellence.&lt;/p&gt;

&lt;p&gt;The market does not work that way. A prospective enterprise customer evaluating your API cannot read your codebase. An early hire weighing your offer against a FAANG salary cannot inspect your cap table. A journalist deciding whether your launch is worth covering has forty other pitches in their inbox. Every one of these people is making a decision under uncertainty, and under uncertainty, humans default to social proof: who else vouches for you, who has written about you, and whether your public footprint matches your private claims.&lt;/p&gt;

&lt;p&gt;This is not a soft-skills platitude — it is measurable. The &lt;a href="https://www.edelman.com/trust/2026/trust-barometer" rel="noopener noreferrer"&gt;2026 Edelman Trust Barometer&lt;/a&gt;, which surveyed nearly 34,000 people across 28 countries, found that people have retreated into narrow, insular circles of trust and are openly hesitant to extend confidence to anyone unfamiliar. For a startup, "unfamiliar" is your default state. You are asking skeptical strangers to bet their money, careers, or reputations on a company they learned about last Tuesday. The data says they won't — unless you give them independent reasons to.&lt;/p&gt;

&lt;h2&gt;
  
  
  Trust Is an Engineering Problem With Known Components
&lt;/h2&gt;

&lt;p&gt;The good news for systematic thinkers: trust decomposes. Harvard Business School professor Frances Frei and her co-author Anne Morriss argue in their widely cited framework, &lt;a href="https://hbr.org/2020/05/begin-with-trust" rel="noopener noreferrer"&gt;Begin with Trust&lt;/a&gt;, that trust rests on three drivers — authenticity, logic, and empathy — and that when trust breaks, it is almost always because one specific driver "wobbles." That framing turns a fuzzy concept into something you can debug.&lt;/p&gt;

&lt;p&gt;Applied to a freshly funded startup, the three drivers translate into concrete workstreams:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Logic&lt;/strong&gt; means your public claims are verifiable. Publish real benchmarks, honest changelogs, and postmortems when things break. Nothing destroys credibility faster than a landing page that promises magic and a product that ships excuses.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Authenticity&lt;/strong&gt; means the founders are visible as actual humans. Technical blog posts, conference talks, and candid interviews about what you got wrong outperform polished corporate messaging, especially with developer audiences who have finely tuned marketing detectors.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Empathy&lt;/strong&gt; means communicating in your audience's language about their problems. A security-conscious CTO cares about your SOC 2 timeline, not your Series A party. Coverage and content that address the reader's risk, not your ego, build durable goodwill.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Notice that none of this requires a massive budget. It requires the same discipline you already apply to shipping software: consistent output, honest error handling, and iteration based on feedback.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Compounding Effect Most Founders Miss
&lt;/h2&gt;

&lt;p&gt;Here is where post-funding communications stops being a vanity exercise and starts behaving like infrastructure. Every credible third-party mention — a feature in a respected outlet, a founder quote in an industry analysis, a well-received technical deep dive — becomes a permanent asset. Sales teams attach it to outbound emails. Recruiters cite it in offer conversations. Future investors find it during diligence. Unlike a paid ad, which stops working the moment you stop paying, earned credibility compounds quietly in the background of every deal you pursue for years.&lt;/p&gt;

&lt;p&gt;There is also a defensive dimension. At some point your startup will hit turbulence: an outage, a layoff, a pricing change that angers users. Companies with an established, honest public voice get the benefit of the doubt. Companies that only ever communicated through press releases get roasted on Hacker News. The reputation you build in calm weather is the only thing that protects you in a storm, and it cannot be manufactured retroactively.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Practical Starting Point
&lt;/h2&gt;

&lt;p&gt;If you are a founder staring at fresh capital and wondering where communications fits in your roadmap, treat it like any other system: start small, instrument it, and iterate. Pick one channel where your actual buyers spend time and commit to a sustainable cadence — one substantive engineering post a month beats a burst of five followed by a year of silence. Write down the three claims about your company you most need strangers to believe, then audit whether any independent source currently supports them. Wherever the answer is no, you have found your first project.&lt;/p&gt;

&lt;p&gt;Funding proves that a handful of investors believed your story. Trust is what happens when everyone else does. The teams that treat it as a first-class deliverable — planned, shipped, and maintained like production code — are the ones still standing when the runway from that celebrated round finally runs out.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Due Diligence Is Becoming the Most Underrated Skill in Tech</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Sun, 09 Aug 2026 13:49:30 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/why-due-diligence-is-becoming-the-most-underrated-skill-in-tech-19al</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/why-due-diligence-is-becoming-the-most-underrated-skill-in-tech-19al</guid>
      <description>&lt;p&gt;Every week, engineering teams adopt new frameworks, sign off on vendor integrations, and greenlight AI tools that will quietly shape their products for years — often after nothing more rigorous than a quick demo and a gut feeling. A recent conversation on &lt;a href="https://pocketcasts.com/podcast/the-technology-podcast/18d37100-2b81-013f-adab-02a48833f363/becoming-the-new-due-diligence-layer-for-innovation/fa5d4ae2-34e5-48ae-92d2-bad9518d656b" rel="noopener noreferrer"&gt;becoming the new due diligence layer for innovation&lt;/a&gt; captures a shift many of us have felt but rarely named: in a world where anyone can ship something that &lt;em&gt;looks&lt;/em&gt; impressive in a weekend, the ability to verify what actually works has become more valuable than the ability to build. Due diligence is no longer a back-office ritual for lawyers and investors. It is becoming a core engineering discipline — and the developers who master it are quietly becoming the most trusted people in the room.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Demo Is No Longer Evidence
&lt;/h2&gt;

&lt;p&gt;For most of software history, a working demo was a reasonable proxy for competence. If someone could show you a functioning product, they had almost certainly done serious engineering to get there. That signal is now broken. AI-assisted development means a polished prototype can be assembled in hours, complete with a landing page, documentation, and confident marketing claims. The gap between "looks finished" and "is finished" has never been wider.&lt;/p&gt;

&lt;p&gt;This is why verification is eating the software conversation. When output is cheap, scrutiny becomes the scarce resource. The teams that thrive are not the ones that adopt the most tools — they are the ones that can quickly and reliably answer three questions: &lt;strong&gt;Does this actually do what it claims? What breaks under load? What will this cost us in two years?&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What Investors Figured Out Before Engineers Did
&lt;/h2&gt;

&lt;p&gt;The venture capital world institutionalized this mindset decades ago. In a landmark survey of nearly 900 firms, researchers writing for Harvard Business Review found that the average fund screens around 200 companies a year and invests in only four — a filtering ratio that makes even the pickiest code reviewer look permissive. Their findings on &lt;a href="https://hbr.org/2021/03/how-venture-capitalists-make-decisions" rel="noopener noreferrer"&gt;how venture capitalists make decisions&lt;/a&gt; reveal something instructive: experienced investors weight the &lt;em&gt;team&lt;/em&gt; more heavily than the product, because products can be rebuilt but judgment cannot. The same logic applies when you evaluate an open-source dependency. The code you see today matters less than the maintainers behind it, their responsiveness to security issues, and the health of the community that will carry the project forward.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Hidden Liability Nobody Prices In
&lt;/h2&gt;

&lt;p&gt;The single most expensive thing due diligence uncovers is rarely a bug. It is accumulated technical debt — the invisible mortgage attached to every system that was built fast and cleaned up never. McKinsey's research on &lt;a href="https://www.mckinsey.com/capabilities/tech-and-ai/our-insights/tech-debt-reclaiming-tech-equity" rel="noopener noreferrer"&gt;tech debt and how to reclaim tech equity&lt;/a&gt; found that CIOs estimate this debt at 20 to 40 percent of the value of their entire technology estate, with 10 to 20 percent of new-product budgets silently diverted to servicing it. Read that again: up to a fifth of the money meant for innovation is being taxed by yesterday's shortcuts.&lt;/p&gt;

&lt;p&gt;When you evaluate a vendor, an acquisition target, or even a codebase you are about to inherit, this is the number that matters most — and it never appears in the pitch deck. A skilled due diligence practitioner learns to estimate it anyway, from clues like deployment frequency, test coverage trends, dependency freshness, and how long the team takes to answer a simple technical question.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Practical Framework You Can Use Tomorrow
&lt;/h2&gt;

&lt;p&gt;You do not need an M&amp;amp;A budget to run meaningful diligence. Before your next significant adoption decision, work through these checks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Trace the claim to the mechanism.&lt;/strong&gt; For every headline feature, ask &lt;em&gt;how&lt;/em&gt; it works. Vague answers about "proprietary AI" or "advanced algorithms" are a signal, not an explanation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stress the edges, not the center.&lt;/strong&gt; Demos are optimized for the happy path. Feed the system malformed input, concurrent requests, and your ugliest real-world data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audit the humans.&lt;/strong&gt; Check commit history, issue response times, and turnover. A brilliant tool maintained by one exhausted person is a risk, not an asset.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model the exit before the entrance.&lt;/strong&gt; Estimate what migrating &lt;em&gt;away&lt;/em&gt; would cost. If the answer is "we couldn't," you are not buying a tool — you are accepting a dependency.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verify independently.&lt;/strong&gt; Talk to actual users outside the vendor's reference list. Five minutes with a disillusioned customer is worth fifty pages of documentation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Career Angle Nobody Is Talking About
&lt;/h2&gt;

&lt;p&gt;Here is the uncomfortable truth for developers worried about AI commoditizing their work: writing code was never the hard part, and it is about to become even less so. The durable skill is judgment — the ability to look at something new, ask the questions that expose its real shape, and take responsibility for the answer. Every organization is drowning in options and starving for verification. The engineer who can say "I checked, and here is what I found" with genuine rigor behind it is not competing with autocomplete.&lt;/p&gt;

&lt;p&gt;Due diligence is not glamorous. It produces no launch tweets and no conference talks. But it is rapidly becoming the layer that separates organizations that compound value from organizations that compound regret. Learn to be that layer, and you will never be the person a team can afford to lose.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>The Most Dangerous Endpoint Is the One Nobody Remembers Owning</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Sun, 09 Aug 2026 13:48:56 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/the-most-dangerous-endpoint-is-the-one-nobody-remembers-owning-5ddf</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/the-most-dangerous-endpoint-is-the-one-nobody-remembers-owning-5ddf</guid>
      <description>&lt;p&gt;Somewhere on the internet, an application built for a temporary event is still answering requests years after everyone involved has moved on. One surprisingly good illustration is &lt;a href="https://alumni.bowdoin.edu/reunion/page.aspx?pid=1111&amp;amp;dgs6717=3&amp;amp;tid6717=32975" rel="noopener noreferrer"&gt;a Bowdoin Reunion ride board from 2013&lt;/a&gt;, where the surrounding event belongs to another era of the web while the discussion surface has continued to host much newer activity. The interesting part is not that an old page survived. The interesting part is that &lt;strong&gt;software can outlive its purpose without outliving its capabilities&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Developers are trained to think about software in terms of what exists in the current product: the routes in the current repository, the services visible in the current architecture diagram, the APIs documented in the current OpenAPI specification.&lt;/p&gt;

&lt;p&gt;The internet does not care about any of those boundaries.&lt;/p&gt;

&lt;p&gt;If an endpoint still answers, it exists.&lt;/p&gt;

&lt;p&gt;If a form can still submit, it exists.&lt;/p&gt;

&lt;p&gt;If an old API version can still reach production data, it exists.&lt;/p&gt;

&lt;p&gt;If an abandoned subdomain still resolves to infrastructure, it exists.&lt;/p&gt;

&lt;p&gt;And if your engineering team has forgotten it exists, an external observer may understand that part of your system better than you do.&lt;/p&gt;

&lt;p&gt;That is the uncomfortable engineering problem behind what we can call &lt;strong&gt;zombie functionality&lt;/strong&gt;: features that are dead organizationally but alive technically.&lt;/p&gt;

&lt;h2&gt;
  
  
  “Nobody Uses It” Is Not a System State
&lt;/h2&gt;

&lt;p&gt;Teams use surprisingly imprecise language when software gets old.&lt;/p&gt;

&lt;p&gt;“We don't use that anymore.”&lt;/p&gt;

&lt;p&gt;“That was for the old site.”&lt;/p&gt;

&lt;p&gt;“I think marketing stopped using it.”&lt;/p&gt;

&lt;p&gt;“That API was replaced two years ago.”&lt;/p&gt;

&lt;p&gt;“That admin panel belongs to the previous platform.”&lt;/p&gt;

&lt;p&gt;None of these statements tells us what the computer will do when someone sends it a request.&lt;/p&gt;

&lt;p&gt;There is a huge difference between &lt;strong&gt;deprecated&lt;/strong&gt;, &lt;strong&gt;hidden&lt;/strong&gt;, &lt;strong&gt;unlinked&lt;/strong&gt;, &lt;strong&gt;unsupported&lt;/strong&gt;, &lt;strong&gt;read-only&lt;/strong&gt;, &lt;strong&gt;access-restricted&lt;/strong&gt;, and &lt;strong&gt;actually removed&lt;/strong&gt;. Inside a company, those states can feel roughly equivalent because employees no longer encounter the feature in normal workflows. From outside the company, they are completely different.&lt;/p&gt;

&lt;p&gt;Removing a navigation link does not remove a route.&lt;/p&gt;

&lt;p&gt;Deleting the frontend button does not disable the backend operation.&lt;/p&gt;

&lt;p&gt;Launching &lt;code&gt;/api/v3/&lt;/code&gt; does not automatically kill &lt;code&gt;/api/v1/&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Moving employees to a new admin portal does not make the previous portal unreachable.&lt;/p&gt;

&lt;p&gt;This distinction sounds obvious when written down. In real systems, it is repeatedly missed because product retirement is usually treated as an organizational decision rather than a technical lifecycle.&lt;/p&gt;

&lt;p&gt;A feature gets a launch process.&lt;/p&gt;

&lt;p&gt;It rarely gets a death process.&lt;/p&gt;

&lt;h2&gt;
  
  
  Software Has an Afterlife
&lt;/h2&gt;

&lt;p&gt;Modern software development optimizes aggressively for creation.&lt;/p&gt;

&lt;p&gt;We have templates for starting services, infrastructure-as-code for provisioning resources, CI/CD pipelines for shipping builds, feature flags for activating functionality, observability for watching it, and dashboards for measuring adoption.&lt;/p&gt;

&lt;p&gt;There is much less infrastructure for proving that something is gone.&lt;/p&gt;

&lt;p&gt;Imagine an internal tool launched in 2020.&lt;/p&gt;

&lt;p&gt;The first version lives at &lt;code&gt;admin.example.com&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;In 2022, the company rebuilds it at &lt;code&gt;console.example.com&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Everyone migrates. Documentation is updated. The old link disappears from Notion. A year later, half the engineers who built the first version have left.&lt;/p&gt;

&lt;p&gt;What happened to &lt;code&gt;admin.example.com&lt;/code&gt;?&lt;/p&gt;

&lt;p&gt;Maybe the DNS record still exists.&lt;/p&gt;

&lt;p&gt;Maybe a load balancer still knows where to send the request.&lt;/p&gt;

&lt;p&gt;Maybe the old application still authenticates against the same identity provider.&lt;/p&gt;

&lt;p&gt;Maybe the application uses an old authorization model.&lt;/p&gt;

&lt;p&gt;Maybe it shares a database with the new console.&lt;/p&gt;

&lt;p&gt;Or maybe it returns a 404.&lt;/p&gt;

&lt;p&gt;The important point is that &lt;strong&gt;you cannot infer its technical state from its organizational state&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This is why forgotten functionality is such an interesting class of engineering debt. Ordinary technical debt is visible because engineers encounter it while changing the system. Zombie functionality can become less visible precisely because nobody changes it.&lt;/p&gt;

&lt;p&gt;Its lack of activity protects it from attention.&lt;/p&gt;

&lt;h2&gt;
  
  
  Attack Surface Is an Inventory Problem Before It Is a Vulnerability Problem
&lt;/h2&gt;

&lt;p&gt;Security discussions often begin with vulnerabilities: outdated dependencies, injection, broken authorization, leaked credentials.&lt;/p&gt;

&lt;p&gt;But before you can secure an asset, you have to know that you have it.&lt;/p&gt;

&lt;p&gt;That sounds trivial until an organization has accumulated acquisitions, cloud accounts, test environments, regional deployments, SaaS integrations, old domains, contractor-built applications, temporary campaign sites, preview environments, versioned APIs, migration infrastructure, and years of DNS history.&lt;/p&gt;

&lt;p&gt;A useful way to understand the problem comes from &lt;a href="https://cloud.google.com/blog/products/identity-security/external-attack-surface-management" rel="noopener noreferrer"&gt;Google Cloud’s explanation of external attack surface management&lt;/a&gt;, which focuses on continuously discovering internet-facing assets rather than assuming the internal inventory is complete.&lt;/p&gt;

&lt;p&gt;That word — &lt;strong&gt;discovering&lt;/strong&gt; — matters.&lt;/p&gt;

&lt;p&gt;Traditional asset management asks:&lt;/p&gt;

&lt;p&gt;“What systems do we own?”&lt;/p&gt;

&lt;p&gt;External discovery asks:&lt;/p&gt;

&lt;p&gt;“What systems can somebody on the internet find that appear to belong to us?”&lt;/p&gt;

&lt;p&gt;Those datasets should be identical.&lt;/p&gt;

&lt;p&gt;In a mature organization, they often are not.&lt;/p&gt;

&lt;p&gt;And the difference between them is where some of the most interesting risks live.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Frontend Can Die While the Capability Survives
&lt;/h2&gt;

&lt;p&gt;One reason zombie functionality is easy to create is that users experience products through interfaces, while systems expose capabilities through layers.&lt;/p&gt;

&lt;p&gt;Suppose a company has a profile page with a “Delete account” button.&lt;/p&gt;

&lt;p&gt;Later, the UI is redesigned and the button moves into a new settings application. The previous settings page is removed from the router.&lt;/p&gt;

&lt;p&gt;From the product team's perspective, the old feature is gone.&lt;/p&gt;

&lt;p&gt;But perhaps the original request was:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;POST /legacy/account/delete?id=1234&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;If that handler still exists, the capability has not disappeared. Only one path humans used to discover it has disappeared.&lt;/p&gt;

&lt;p&gt;This distinction becomes especially important with APIs because APIs are designed to be called directly. They do not need a visible button.&lt;/p&gt;

&lt;p&gt;A deprecated mobile application may therefore leave behind an API generation long after the application itself has vanished from app stores.&lt;/p&gt;

&lt;p&gt;A retired integration may leave behind OAuth scopes.&lt;/p&gt;

&lt;p&gt;A discontinued partner program may leave callback handlers.&lt;/p&gt;

&lt;p&gt;A removed upload screen may leave the upload endpoint.&lt;/p&gt;

&lt;p&gt;A beta feature may leave database fields, jobs, queues, permissions, and routes long after the feature flag is turned off.&lt;/p&gt;

&lt;p&gt;What users see as one feature may correspond to dozens of independently surviving technical artifacts.&lt;/p&gt;

&lt;p&gt;Deleting the visible part is easy.&lt;/p&gt;

&lt;p&gt;Proving that the capability has disappeared is harder.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Real Problem Is Ownership Decay
&lt;/h2&gt;

&lt;p&gt;Code does not literally become more dangerous because it is old.&lt;/p&gt;

&lt;p&gt;Ownership decays.&lt;/p&gt;

&lt;p&gt;The engineer who understood why an endpoint bypasses the normal service layer leaves.&lt;/p&gt;

&lt;p&gt;The team that operated a microsite is dissolved.&lt;/p&gt;

&lt;p&gt;The vendor that built the original portal is replaced.&lt;/p&gt;

&lt;p&gt;A cloud subscription moves between departments.&lt;/p&gt;

&lt;p&gt;A database gets inherited by another application.&lt;/p&gt;

&lt;p&gt;The source repository is archived.&lt;/p&gt;

&lt;p&gt;Monitoring is pointed at the new system.&lt;/p&gt;

&lt;p&gt;The old system continues answering requests.&lt;/p&gt;

&lt;p&gt;Eventually you reach a strange condition: &lt;strong&gt;the company still owns the software, but nobody meaningfully owns its behavior&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This is more serious than missing documentation.&lt;/p&gt;

&lt;p&gt;Ownership determines who receives alerts, approves dependency upgrades, understands data flows, responds to incidents, evaluates changes in authentication requirements, and makes the decision to finally shut something down.&lt;/p&gt;

&lt;p&gt;Without an owner, “temporary” infrastructure has a remarkable tendency to become permanent.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Internet Has Better Memory Than Your Org Chart
&lt;/h2&gt;

&lt;p&gt;There is another asymmetry developers should understand.&lt;/p&gt;

&lt;p&gt;Internal knowledge disappears when people leave and systems change.&lt;/p&gt;

&lt;p&gt;External evidence often remains.&lt;/p&gt;

&lt;p&gt;Certificate Transparency logs can reveal historical hostnames. Search engines remember paths. Old JavaScript bundles contain API routes. Public Git repositories preserve configuration history. Documentation forks survive after official docs are rewritten. Browser extensions and mobile binaries can preserve references to servers long after those products stop being maintained.&lt;/p&gt;

&lt;p&gt;This means removing something from your current architecture diagram does not necessarily make it undiscoverable.&lt;/p&gt;

&lt;p&gt;Attack-surface discovery tools work from exactly this assumption. &lt;a href="https://blog.cloudflare.com/attack-surface-intelligence/" rel="noopener noreferrer"&gt;Cloudflare’s discussion of attack surface intelligence&lt;/a&gt; describes outside-in discovery of assets such as forgotten subdomains and unmanaged infrastructure — things an internal security workflow can miss because nobody remembered to put them into the inventory in the first place.&lt;/p&gt;

&lt;p&gt;There is an important engineering lesson here:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Documentation describes what your organization believes exists. The network reveals what actually exists.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Those are not always the same system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deprecation Should Be a State Machine
&lt;/h2&gt;

&lt;p&gt;One reason software retirement goes badly is that “deprecated” is treated as a label.&lt;/p&gt;

&lt;p&gt;It should be a sequence of technical states.&lt;/p&gt;

&lt;p&gt;A feature should move from something like &lt;code&gt;ACTIVE&lt;/code&gt; to &lt;code&gt;DEPRECATED&lt;/code&gt;, then perhaps &lt;code&gt;READ_ONLY&lt;/code&gt;, then &lt;code&gt;DISCONNECTED&lt;/code&gt;, and finally &lt;code&gt;REMOVED&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Each transition should have observable consequences.&lt;/p&gt;

&lt;p&gt;When an API becomes deprecated, new consumers should no longer be allowed to register against it.&lt;/p&gt;

&lt;p&gt;When it becomes read-only, mutating methods should stop succeeding.&lt;/p&gt;

&lt;p&gt;When it is disconnected, application traffic should no longer reach sensitive downstream systems.&lt;/p&gt;

&lt;p&gt;When it is removed, infrastructure should disappear rather than merely stop appearing in documentation.&lt;/p&gt;

&lt;p&gt;Most importantly, the transition should have an owner and an expiry date.&lt;/p&gt;

&lt;p&gt;“Deprecated indefinitely” is another way of saying “production forever.”&lt;/p&gt;

&lt;h2&gt;
  
  
  Build the Exit Before You Launch
&lt;/h2&gt;

&lt;p&gt;Developers usually think about decommissioning when they are already trying to decommission something.&lt;/p&gt;

&lt;p&gt;That is too late.&lt;/p&gt;

&lt;p&gt;The easiest system to retire is one designed with retirement in mind.&lt;/p&gt;

&lt;p&gt;If you are building a temporary microsite, decide at launch what happens to it after the campaign.&lt;/p&gt;

&lt;p&gt;If you are introducing &lt;code&gt;/v2/&lt;/code&gt;, decide when &lt;code&gt;/v1/&lt;/code&gt; loses write access.&lt;/p&gt;

&lt;p&gt;If you create a preview environment, decide what deletes it.&lt;/p&gt;

&lt;p&gt;If you launch a feature flag, decide whether disabling it removes only UI exposure or also backend capability.&lt;/p&gt;

&lt;p&gt;If you provision a new public hostname, give it an owner at creation time.&lt;/p&gt;

&lt;p&gt;A useful production lifecycle check can be surprisingly compact:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;What publicly reachable asset is being created?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Who owns it after the original project ends?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;What sensitive systems or data can it reach?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;How will we know whether legitimate traffic still depends on it?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;What exact event moves it into retirement?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;What proves that retirement actually completed?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;What prevents the same asset from silently reappearing during a rollback or old deployment?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The point is not to create more paperwork.&lt;/p&gt;

&lt;p&gt;The point is to make deletion as real an engineering operation as deployment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start Measuring Negative Space
&lt;/h2&gt;

&lt;p&gt;Most engineering metrics measure things that are happening.&lt;/p&gt;

&lt;p&gt;Requests per second.&lt;/p&gt;

&lt;p&gt;Error rate.&lt;/p&gt;

&lt;p&gt;Latency.&lt;/p&gt;

&lt;p&gt;CPU.&lt;/p&gt;

&lt;p&gt;Active users.&lt;/p&gt;

&lt;p&gt;Deploy frequency.&lt;/p&gt;

&lt;p&gt;Conversion.&lt;/p&gt;

&lt;p&gt;Zombie systems often require the opposite question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is still reachable even though almost nothing legitimate should be happening there?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That makes low traffic interesting.&lt;/p&gt;

&lt;p&gt;Imagine an endpoint that normally receives five requests per month.&lt;/p&gt;

&lt;p&gt;Traditional monitoring may consider it irrelevant.&lt;/p&gt;

&lt;p&gt;But if the product containing that endpoint was retired two years ago, five requests are not “low usage.” They are unexplained usage.&lt;/p&gt;

&lt;p&gt;The baseline should be zero.&lt;/p&gt;

&lt;p&gt;The same applies to old domains, deprecated APIs, retired OAuth clients, stale service accounts, abandoned queues, and forgotten cloud functions.&lt;/p&gt;

&lt;p&gt;Engineering organizations are good at detecting unexpected increases.&lt;/p&gt;

&lt;p&gt;They should become equally good at detecting unexpected survival.&lt;/p&gt;

&lt;h2&gt;
  
  
  Do Not Confuse a 404 With Decommissioning
&lt;/h2&gt;

&lt;p&gt;Even apparently dead systems can remain alive underneath.&lt;/p&gt;

&lt;p&gt;A reverse proxy can return a 404 while the original application continues running behind it.&lt;/p&gt;

&lt;p&gt;A firewall rule can block public access while an obsolete service retains broad internal network access.&lt;/p&gt;

&lt;p&gt;A DNS record can be removed while cloud resources continue accumulating cost and credentials remain valid.&lt;/p&gt;

&lt;p&gt;A frontend deployment can disappear while storage buckets and serverless functions survive.&lt;/p&gt;

&lt;p&gt;Real decommissioning therefore requires working backward through dependencies.&lt;/p&gt;

&lt;p&gt;What identity can access the system?&lt;/p&gt;

&lt;p&gt;What identities can the system access?&lt;/p&gt;

&lt;p&gt;What databases does it know about?&lt;/p&gt;

&lt;p&gt;What secrets does it hold?&lt;/p&gt;

&lt;p&gt;What queues does it consume?&lt;/p&gt;

&lt;p&gt;What webhooks point to it?&lt;/p&gt;

&lt;p&gt;What scheduled jobs invoke it?&lt;/p&gt;

&lt;p&gt;What DNS records reference it?&lt;/p&gt;

&lt;p&gt;What certificates were issued for it?&lt;/p&gt;

&lt;p&gt;What logs would prove that something still depends on it?&lt;/p&gt;

&lt;p&gt;This is essentially garbage collection for infrastructure, except reference counting is much harder because many references live outside the system you control.&lt;/p&gt;

&lt;h2&gt;
  
  
  Temporary Software Is Often the Least Temporary Software
&lt;/h2&gt;

&lt;p&gt;Some of the strangest long-lived systems begin as short-term projects.&lt;/p&gt;

&lt;p&gt;Conference registration sites.&lt;/p&gt;

&lt;p&gt;University event boards.&lt;/p&gt;

&lt;p&gt;Marketing campaigns.&lt;/p&gt;

&lt;p&gt;Election dashboards.&lt;/p&gt;

&lt;p&gt;COVID-era portals.&lt;/p&gt;

&lt;p&gt;Hackathon applications.&lt;/p&gt;

&lt;p&gt;Product betas.&lt;/p&gt;

&lt;p&gt;Migration bridges.&lt;/p&gt;

&lt;p&gt;Emergency internal tools.&lt;/p&gt;

&lt;p&gt;Temporary systems are often built under deadline pressure, with weaker ownership structures and an assumption that somebody will remove them later.&lt;/p&gt;

&lt;p&gt;Then they work.&lt;/p&gt;

&lt;p&gt;And because they work, nobody wants to touch them.&lt;/p&gt;

&lt;p&gt;The project ends, priorities change, the original team moves on, and “remove old site” loses every roadmap battle against new revenue-generating work.&lt;/p&gt;

&lt;p&gt;Ironically, the feature nobody expected to survive ten years may receive less lifecycle engineering than the platform explicitly designed to survive ten years.&lt;/p&gt;

&lt;p&gt;That is how temporary becomes permanent.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Best Security Improvement May Be Subtraction
&lt;/h2&gt;

&lt;p&gt;Software engineering has a strong bias toward adding controls.&lt;/p&gt;

&lt;p&gt;Add authentication.&lt;/p&gt;

&lt;p&gt;Add a WAF.&lt;/p&gt;

&lt;p&gt;Add monitoring.&lt;/p&gt;

&lt;p&gt;Add another scanner.&lt;/p&gt;

&lt;p&gt;Add another policy.&lt;/p&gt;

&lt;p&gt;Sometimes the cleanest control is to remove the capability entirely.&lt;/p&gt;

&lt;p&gt;An endpoint that does not exist needs no patch.&lt;/p&gt;

&lt;p&gt;A deleted cloud account needs no monitoring.&lt;/p&gt;

&lt;p&gt;A removed API version needs no authorization policy.&lt;/p&gt;

&lt;p&gt;A retired admin interface cannot accidentally retain yesterday's permissions.&lt;/p&gt;

&lt;p&gt;A destroyed credential cannot leak next year.&lt;/p&gt;

&lt;p&gt;This is one of the rare areas where maintainability, cost, architecture, and security all point in the same direction.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Smaller systems are easier to understand because there are fewer truths to keep synchronized.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The challenge is that subtraction requires certainty. Teams hesitate to delete old systems because they do not know what depends on them.&lt;/p&gt;

&lt;p&gt;Which brings us back to inventory.&lt;/p&gt;

&lt;p&gt;You cannot confidently remove what you cannot confidently map.&lt;/p&gt;

&lt;h2&gt;
  
  
  Every Deployment Creates a Future Legacy System
&lt;/h2&gt;

&lt;p&gt;Developers rarely think of the service they are launching today as legacy software.&lt;/p&gt;

&lt;p&gt;But unless it fails immediately, that is exactly what it is becoming.&lt;/p&gt;

&lt;p&gt;Frameworks will change.&lt;/p&gt;

&lt;p&gt;Teams will change.&lt;/p&gt;

&lt;p&gt;Authentication systems will change.&lt;/p&gt;

&lt;p&gt;Domains will be reorganized.&lt;/p&gt;

&lt;p&gt;APIs will be replaced.&lt;/p&gt;

&lt;p&gt;Infrastructure providers will come and go.&lt;/p&gt;

&lt;p&gt;The question is not whether today's architecture becomes old.&lt;/p&gt;

&lt;p&gt;The question is whether the organization retains enough control over its lifecycle to know when old software is still doing real work.&lt;/p&gt;

&lt;p&gt;The most important mental shift is simple:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Production is not the set of systems your team currently works on. Production is the set of systems that can still do something.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once you use that definition, neglected endpoints stop being digital archaeology.&lt;/p&gt;

&lt;p&gt;They become current architecture.&lt;/p&gt;

&lt;p&gt;And perhaps the most valuable question in your next architecture review is not “What are we building?”&lt;/p&gt;

&lt;p&gt;It is:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is still running that nobody in this room remembers building?&lt;/strong&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Reputation Behaves Like a Financial Variable</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Sun, 09 Aug 2026 13:48:08 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/why-reputation-behaves-like-a-financial-variable-269k</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/why-reputation-behaves-like-a-financial-variable-269k</guid>
      <description>&lt;p&gt;Every engineer knows that technical debt eventually shows up in the release schedule, yet few founders realize that reputational debt shows up somewhere far more painful — the income statement. The idea that &lt;a href="https://velog.io/@biver/Reputation-Is-a-Financial-Variable-How-Trust-Changes-Cash-Flow-Risk-and-Valuation" rel="noopener noreferrer"&gt;reputation is a financial variable&lt;/a&gt; rather than a soft PR concept changes how you should think about everything from your changelog to your incident reports, because trust quietly rewrites three numbers investors care about most: cash flow, risk premium, and terminal valuation. If you build products, you are already building (or burning) this asset every single sprint, whether you track it or not.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Mechanics: How Trust Moves Cash
&lt;/h2&gt;

&lt;p&gt;Think of reputation as a discount applied to friction. A trusted company closes deals with shorter sales cycles, negotiates better payment terms, and retains customers without bribing them with promotions. An untrusted company pays for the same outcomes in cash — bigger marketing budgets, deeper discounts, longer legal reviews, higher churn. The revenue line might look similar for a while, but the cost structure diverges dramatically.&lt;/p&gt;

&lt;p&gt;This is why acquirers routinely pay far more than the book value of a target's tangible assets. Accountants have a name for that premium: as the classic explainer on &lt;a href="https://www.investopedia.com/terms/g/goodwill.asp" rel="noopener noreferrer"&gt;goodwill in accounting&lt;/a&gt; makes clear, brand strength, customer loyalty, and reputation are literally capitalized onto the balance sheet the moment a transaction forces the market to name their price. Until that moment, the asset is invisible — but it was always there, compounding or decaying.&lt;/p&gt;

&lt;p&gt;For a developer-founder, the practical translation is simple. Every public postmortem you write honestly, every breaking change you document properly, every security disclosure you handle transparently is a deposit. Every silent outage, every dark-pattern upsell, every quietly deprecated API is a withdrawal — with interest.&lt;/p&gt;

&lt;h2&gt;
  
  
  Risk: The Multiplier Nobody Budgets For
&lt;/h2&gt;

&lt;p&gt;Cash flow is only half the equation. The other half is the rate at which future cash flows get discounted, and that rate is a direct function of perceived risk. Two companies with identical revenue can carry wildly different valuations because one of them is considered fragile.&lt;/p&gt;

&lt;p&gt;Reputation acts as an insurance policy here. When a trusted company stumbles — a data incident, a bad quarter, a botched launch — stakeholders extend the benefit of the doubt. Customers wait for the fix instead of migrating. Journalists frame it as an anomaly. Investors hold. When a distrusted company makes the identical mistake, the same event triggers cancellations, coverage pile-ons, and margin calls. The mistake is constant; the damage function is not.&lt;/p&gt;

&lt;p&gt;Harvard Business School's Frances Frei has argued persuasively that this dynamic starts inside the organization: her framework on &lt;a href="https://hbr.org/2020/05/begin-with-trust" rel="noopener noreferrer"&gt;why leaders must begin with trust&lt;/a&gt; breaks credibility down into authenticity, logic, and empathy — and shows that when any one leg wobbles, everything built on top of it wobbles too. External reputation is largely internal trust made visible; teams that don't trust their leadership eventually ship products users can feel that distrust through.&lt;/p&gt;

&lt;h2&gt;
  
  
  What This Means for People Who Ship Software
&lt;/h2&gt;

&lt;p&gt;You don't need a CFO to act on this. You need to treat trust signals as engineering artifacts with the same rigor you apply to test coverage. Concretely, the highest-leverage moves are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Publish honest postmortems.&lt;/strong&gt; A blameless, detailed incident writeup converts a failure into proof of competence. Silence converts it into a rumor.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Version and deprecate predictably.&lt;/strong&gt; Nothing erodes developer trust faster than surprise breaking changes. A boring, well-communicated deprecation policy is a valuation asset.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Make pricing and data practices legible.&lt;/strong&gt; If users need a lawyer to understand what you do with their data, you are accruing reputational debt at a compounding rate.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Respond to security reports fast and gratefully.&lt;/strong&gt; How you treat the researcher who found your vulnerability is public information within hours.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Notice that none of these items is expensive. They are disciplines, not budgets — which is exactly why they are underinvested. Costs that don't appear on any dashboard get deferred, and reputational maintenance is the ultimate invisible cost until the day it becomes the only visible one.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Compounding Curve
&lt;/h2&gt;

&lt;p&gt;The most counterintuitive property of reputation-as-capital is its asymmetry. Building it is linear and slow: one honest release note, one kept promise, one transparent quarter at a time. Destroying it is exponential and fast: a single incident handled badly can vaporize years of deposits in a weekend, because trust violations propagate through networks far faster than trust confirmations do.&lt;/p&gt;

&lt;p&gt;This asymmetry is not a reason for paranoia; it's a reason for process. Companies that survive crises are rarely the ones that never make mistakes — they are the ones whose reserve of accumulated credibility was deep enough to absorb the drawdown. In financial terms, they held a buffer against reputational volatility, the same way a prudent treasury holds a cash buffer against operational volatility.&lt;/p&gt;

&lt;p&gt;So the next time someone on your team dismisses transparency as "just optics," reframe it in the only language every stakeholder understands: reputation is working capital. It lowers your cost of everything, cushions your downside, and gets priced — eventually, always — into what your work is worth.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>A Developer's Guide to Financial Friction</title>
      <dc:creator>Sonia Bobrik</dc:creator>
      <pubDate>Sun, 09 Aug 2026 13:47:27 +0000</pubDate>
      <link>https://dev.to/sonia_bobrik_1939cdddd79d/a-developers-guide-to-financial-friction-jn2</link>
      <guid>https://dev.to/sonia_bobrik_1939cdddd79d/a-developers-guide-to-financial-friction-jn2</guid>
      <description>&lt;p&gt;Every engineer who has ever wired up a checkout flow knows the quiet dread of watching conversion metrics after deploy day. A single extra form field, a redirect to a bank page, a 3-second delay on card authorization — each one bleeds users. What fewer developers realize is that these micro-frustrations have macro consequences, and a growing body of analysis, including a sharp breakdown of &lt;a href="https://accidentallywesanderson.com/user-profile/why-financial-friction-is-reshaping-competitive/" rel="noopener noreferrer"&gt;why financial friction is reshaping competitive dynamics&lt;/a&gt; across entire industries, suggests that friction is no longer just a UX problem. It is a strategic weapon, a moat, and — depending on which side of the API you sit on — either your biggest opportunity or your slowest-acting existential threat.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Friction Actually Costs
&lt;/h2&gt;

&lt;p&gt;In economics, friction is anything that makes an exchange harder than it needs to be: fees, delays, paperwork, uncertainty. Economists have studied this for decades under the umbrella of &lt;a href="https://www.investopedia.com/terms/t/transactioncosts.asp" rel="noopener noreferrer"&gt;transaction costs&lt;/a&gt;, the invisible tax that every intermediary, verification step, and settlement window adds to a deal. For most of the twentieth century, these costs were treated as fixed features of the landscape. Banks settled when banks settled. Cross-border transfers took five days because that was simply how correspondent banking worked.&lt;/p&gt;

&lt;p&gt;Software changed the equation. Once payments became programmable, friction became a variable — something a product team could measure, reduce, or deliberately preserve. And that is exactly where competition got interesting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Friction as a Competitive Lever
&lt;/h2&gt;

&lt;p&gt;Consider two companies selling identical products at identical prices. Company A requires account creation, a billing form, and an email confirmation. Company B offers one-tap purchase with stored credentials. Over a quarter, Company B does not just convert better — it accumulates behavioral data, repeat purchases, and habit formation that compound into a durable advantage. The product never changed. The friction did.&lt;/p&gt;

&lt;p&gt;This is why incumbents and challengers now fight over milliseconds and form fields rather than features. The pattern echoes what Michael Porter and James Heppelmann described in their landmark analysis of &lt;a href="https://hbr.org/2014/11/how-smart-connected-products-are-transforming-competition" rel="noopener noreferrer"&gt;how smart, connected products are transforming competition&lt;/a&gt;: when the connective tissue of an industry becomes digital, the basis of rivalry shifts from what you sell to how seamlessly you deliver it. Payments are the connective tissue of &lt;em&gt;everything&lt;/em&gt;, which makes financial friction the most universal battleground in modern software.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where Developers Feel It Most
&lt;/h2&gt;

&lt;p&gt;If you build products for a living, financial friction shows up in your work in concrete, recurring ways:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Checkout abandonment&lt;/strong&gt;, where every additional second of latency or every extra input field measurably reduces completed purchases&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Onboarding drop-off in fintech&lt;/strong&gt;, where KYC and identity verification steps are legally required but brutally punishing to activation rates&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Marketplace liquidity&lt;/strong&gt;, where slow seller payouts push suppliers toward platforms that settle faster&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Subscription churn&lt;/strong&gt;, where failed card retries and involuntary cancellations quietly erode recurring revenue&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cross-border expansion&lt;/strong&gt;, where currency conversion costs and settlement delays decide which markets are even viable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these are traditionally "engineering problems," yet engineers are the ones who solve them — through smarter retry logic, tokenized credentials, asynchronous verification, webhook-driven payout systems, and payment orchestration layers that route transactions to whichever processor clears fastest and cheapest.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Strategic Paradox: Sometimes Friction Is the Product
&lt;/h2&gt;

&lt;p&gt;Here is the counterintuitive part. Not all friction is bad, and removing it indiscriminately can destroy value. Fraud prevention is friction. Two-factor authentication is friction. Cooling-off periods before large transfers are friction — and they save users from irreversible mistakes. The companies winning right now are not the ones with &lt;em&gt;zero&lt;/em&gt; friction; they are the ones with &lt;strong&gt;precisely placed&lt;/strong&gt; friction. They make the happy path effortless and reserve resistance for the moments where risk genuinely lives.&lt;/p&gt;

&lt;p&gt;This is a design philosophy as much as a technical one. A well-architected payment system behaves like a good type system: invisible when you are doing the right thing, loud exactly when you are about to do the wrong thing.&lt;/p&gt;

&lt;h2&gt;
  
  
  What This Means for Your Roadmap
&lt;/h2&gt;

&lt;p&gt;If you are building or maintaining anything that touches money, three practical shifts are worth making. First, instrument friction the way you instrument errors — measure time-to-complete, step abandonment, and retry rates as first-class metrics, not afterthoughts. Second, treat your payment stack as a product surface, not plumbing; the difference between a 1.5% and a 2.1% authorization failure rate is a competitor's entire growth budget. Third, watch the regulatory horizon. Open banking mandates, instant payment rails, and real-time settlement systems are dismantling old frictions faster than most incumbents can adapt, and every dismantled friction reshuffles who wins.&lt;/p&gt;

&lt;p&gt;The uncomfortable truth is that the smoothest experience in your market sets the expectation for everyone else. Users do not compare your checkout to your direct competitor's checkout — they compare it to the best checkout they used anywhere, yesterday. In a world where friction is programmable, the teams that treat it as a strategic variable rather than an inherited constant will be the ones still shipping five years from now.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
