<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Modernization | The AWS Blog</title><link>https://theawsblog.com/tags/modernization/</link><description>Articles, tutorials and insights from the AWS community.</description><generator>Hugo</generator><language>en</language><managingEditor>@theawsblog (The AWS Blog)</managingEditor><webMaster>@theawsblog</webMaster><lastBuildDate>Wed, 24 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://theawsblog.com/tags/modernization/index.xml" rel="self" type="application/rss+xml"/><item><title>AWS Transform makes migration assessments more conversational, but data quality still wins</title><link>https://theawsblog.com/news/emiliano-montesdeoca/aws-transform-migration-assessments/</link><pubDate>Wed, 24 Jun 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://theawsblog.com/news/emiliano-montesdeoca/aws-transform-migration-assessments/</guid><description>AWS Transform assessments use agentic AI to turn migration planning into an interactive business-case workflow, but builders still need inventory discipline and assumption control.</description><content:encoded>&lt;p&gt;Migration assessments are rarely wrong because the spreadsheet formula is hard. They are wrong because the inventory is incomplete, assumptions are stale, and the business case changes every time a stakeholder adds context.&lt;/p&gt;
&lt;p&gt;The AWS Migration &amp;amp; Modernization Blog post on &lt;a href="https://aws.amazon.com/blogs/migration-and-modernization/accelerating-migration-assessments-and-planning-with-aws-transform/"&gt;accelerating migration assessments and planning with AWS Transform&lt;/a&gt; is interesting because it treats assessment as an interactive workflow instead of a static report.&lt;/p&gt;
&lt;h2 id="what-changed"&gt;What changed&lt;/h2&gt;
&lt;p&gt;AWS Transform assessments can ingest inventory data from common discovery sources, generate a TCO business case, recommend AWS targets, and then let teams refine assumptions through chat. The source article shows examples such as adding missing servers, adjusting on-premises costs, modeling non-EC2 services, and exploring what-if scenarios.&lt;/p&gt;
&lt;p&gt;That changes the assessment loop. Instead of recollecting data and regenerating a report for every new question, teams can refine the model conversationally.&lt;/p&gt;
&lt;h2 id="why-builders-should-care"&gt;Why builders should care&lt;/h2&gt;
&lt;p&gt;Migration planning is full of partial information. A CMDB misses servers. RVTools exports do not capture every cost. Licensing assumptions change. Some workloads are heading to managed services, not EC2. Finance wants a different depreciation model. Application owners remember a dependency late in the process.&lt;/p&gt;
&lt;p&gt;An interactive assessment tool can keep momentum when those changes happen. That is valuable during early planning, executive conversations, and portfolio prioritization.&lt;/p&gt;
&lt;p&gt;But the output is only as good as the inputs and assumptions.&lt;/p&gt;
&lt;h2 id="the-trade-offs"&gt;The trade-offs&lt;/h2&gt;
&lt;p&gt;Conversational planning can make weak assumptions feel more authoritative than they are. A polished business case is still a model.&lt;/p&gt;
&lt;p&gt;Builders and migration leads should keep three things explicit:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Data source quality:&lt;/strong&gt; where inventory came from, when it was collected, and what is missing.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Assumptions:&lt;/strong&gt; utilization, licensing, storage growth, network costs, support model, and target services.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Decision status:&lt;/strong&gt; directional estimate, planning baseline, or approved migration wave.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;AWS Transform can help generate and adjust the assessment, but it should not replace stakeholder validation. Application owners, finance, security, and operations still need to review the model.&lt;/p&gt;
&lt;h2 id="what-to-do-next"&gt;What to do next&lt;/h2&gt;
&lt;p&gt;Use AWS Transform early, but label the results honestly. Start with directional estimates, then improve confidence as discovery data gets better.&lt;/p&gt;
&lt;p&gt;A practical workflow:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Import existing inventory instead of waiting for perfect data.&lt;/li&gt;
&lt;li&gt;Generate a first-pass business case.&lt;/li&gt;
&lt;li&gt;Use chat to add known missing costs and workloads.&lt;/li&gt;
&lt;li&gt;Review assumptions with finance and platform teams.&lt;/li&gt;
&lt;li&gt;Convert high-confidence groups into migration waves.&lt;/li&gt;
&lt;li&gt;Reassess after each wave to improve the next one.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The useful takeaway is that migration assessments can become living documents. That is a big improvement over static PDFs, as long as teams keep data quality and assumption ownership visible.&lt;/p&gt;</content:encoded></item><item><title>S3 Files makes Lambda file workflows simpler, but not automatically better</title><link>https://theawsblog.com/news/emiliano-montesdeoca/s3-files-lambda-modernization/</link><pubDate>Wed, 24 Jun 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://theawsblog.com/news/emiliano-montesdeoca/s3-files-lambda-modernization/</guid><description>Amazon S3 Files lets Lambda functions work with S3-backed file paths instead of download-process-upload code, which can simplify workloads if teams understand consistency, throughput, and VPC implications.</description><content:encoded>&lt;p&gt;A lot of Lambda code that works with S3 is not complicated because the business logic is complicated. It is complicated because the function has to download an object, manage &lt;code&gt;/tmp&lt;/code&gt;, process the file, upload the result, and clean up after itself.&lt;/p&gt;
&lt;p&gt;The AWS Compute Blog post on &lt;a href="https://aws.amazon.com/blogs/compute/modernizing-lambda-s3-workloads-with-amazon-s3-files/"&gt;modernizing Lambda and S3 workloads with Amazon S3 Files&lt;/a&gt; shows a different model: mount an S3-backed file system and let the function use normal file paths.&lt;/p&gt;
&lt;p&gt;That sounds small. For many workloads, it changes the shape of the code.&lt;/p&gt;
&lt;h2 id="what-changed"&gt;What changed&lt;/h2&gt;
&lt;p&gt;S3 Files lets a Lambda function mount an S3 bucket as a file system at a path such as &lt;code&gt;/mnt/data&lt;/code&gt;. Code can open, read, write, list, and organize files using filesystem operations while S3 remains the durable backing store.&lt;/p&gt;
&lt;p&gt;The source article uses examples such as image processing, ETL pipelines, and multi-agent shared workspaces. In each case, the function moves away from explicit S3 transfer code and toward direct file I/O.&lt;/p&gt;
&lt;p&gt;That removes a surprising amount of glue:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;no manual download before processing,&lt;/li&gt;
&lt;li&gt;no upload step after writing output,&lt;/li&gt;
&lt;li&gt;less &lt;code&gt;/tmp&lt;/code&gt; capacity management,&lt;/li&gt;
&lt;li&gt;fewer cleanup paths for failed invocations,&lt;/li&gt;
&lt;li&gt;simpler handoffs between functions that share a workspace.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-builders-should-care"&gt;Why builders should care&lt;/h2&gt;
&lt;p&gt;The strongest use case is modernization of existing file-oriented libraries. Many image, document, ML, and data-processing libraries expect file paths. Without S3 Files, Lambda code often has to adapt object storage into temporary local files before real work can start.&lt;/p&gt;
&lt;p&gt;S3 Files lets builders keep file-based code and still use S3 as the storage layer. That can make Lambda more attractive for workloads that previously moved to containers only because file handling became awkward.&lt;/p&gt;
&lt;p&gt;The shared workspace pattern is also interesting for AI agents. If multiple Lambda functions collaborate on a session, a directory tree can be easier to reason about than a collection of object keys and serialized state blobs.&lt;/p&gt;
&lt;h2 id="the-trade-offs"&gt;The trade-offs&lt;/h2&gt;
&lt;p&gt;I would not replace every S3 API call with file I/O.&lt;/p&gt;
&lt;p&gt;Object APIs are still excellent when you want explicit object boundaries, event-driven processing, presigned URLs, lifecycle policies, replication, and direct control over metadata. File systems are easier for some code, but they can also hide transfer and consistency behavior behind familiar syntax.&lt;/p&gt;
&lt;p&gt;Builders should validate:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;throughput for large files,&lt;/li&gt;
&lt;li&gt;behavior under high concurrency,&lt;/li&gt;
&lt;li&gt;consistency expectations between producers and consumers,&lt;/li&gt;
&lt;li&gt;VPC and mount target requirements,&lt;/li&gt;
&lt;li&gt;IAM permissions for mount and write operations,&lt;/li&gt;
&lt;li&gt;failure behavior when a function exits while writing.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Also remember that simpler code is not the same as simpler operations. If many functions share a writable workspace, you need naming conventions, cleanup policies, and safeguards against accidental overwrite.&lt;/p&gt;
&lt;h2 id="what-to-do-next"&gt;What to do next&lt;/h2&gt;
&lt;p&gt;Look for Lambda functions where more code is spent on S3 transfers than on the actual business logic. Image resizing, report generation, data conversion, document processing, and agent workspaces are good candidates.&lt;/p&gt;
&lt;p&gt;For each candidate, compare two versions:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;current S3 API flow with &lt;code&gt;/tmp&lt;/code&gt;,&lt;/li&gt;
&lt;li&gt;S3 Files flow with mounted paths.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Measure duration, memory, error handling complexity, and cost. The winning design may be different per workload.&lt;/p&gt;
&lt;p&gt;The useful takeaway is not that file systems are better than object APIs. It is that Lambda now has a cleaner option when the workload is naturally file-shaped.&lt;/p&gt;</content:encoded></item><item><title>Lambda runtime upgrades need campaigns, not reminders</title><link>https://theawsblog.com/news/emiliano-montesdeoca/lambda-runtime-upgrades-aws-transform/</link><pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://theawsblog.com/news/emiliano-montesdeoca/lambda-runtime-upgrades-aws-transform/</guid><description>AWS Transform custom can help teams upgrade Lambda runtimes at scale, but the durable improvement is treating runtime changes as governed modernization campaigns.</description><content:encoded>&lt;p&gt;Lambda runtime upgrades are easy to postpone because the function still works today. Then a deprecation date becomes a support risk, a security exception, or a rushed platform campaign.&lt;/p&gt;
&lt;p&gt;The AWS Compute Blog post on &lt;a href="https://aws.amazon.com/blogs/compute/upgrading-lambda-function-runtimes-at-scale-with-aws-transform-custom/"&gt;upgrading Lambda function runtimes at scale with AWS Transform custom&lt;/a&gt; is useful because it treats runtime upgrades as a repeatable modernization workflow, not a calendar reminder.&lt;/p&gt;
&lt;h2 id="what-changed"&gt;What changed&lt;/h2&gt;
&lt;p&gt;AWS Transform custom can analyze codebases, identify runtime upgrade risk, apply transformations, update dependencies or configuration, and validate against exit criteria. The source article focuses on Lambda runtime upgrades, including cases where code changes are required, such as moving callback-style Node.js handlers toward async patterns.&lt;/p&gt;
&lt;p&gt;For platform teams, the more important piece is campaign management. A large organization rarely has one repository and one owner. It has hundreds of functions across many accounts, teams, IaC stacks, and CI/CD systems.&lt;/p&gt;
&lt;h2 id="why-builders-should-care"&gt;Why builders should care&lt;/h2&gt;
&lt;p&gt;Runtime upgrades fail when ownership is unclear.&lt;/p&gt;
&lt;p&gt;An application team may not know a function exists. A platform team may see the deprecated runtime but not understand the deployment path. Security may see the exposure but not own the code. The result is a spreadsheet-driven migration with too many manual exceptions.&lt;/p&gt;
&lt;p&gt;A transformation tool can help, but only if it plugs into an operating model:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;inventory functions and repositories,&lt;/li&gt;
&lt;li&gt;map functions to owners,&lt;/li&gt;
&lt;li&gt;assess code and dependency risk,&lt;/li&gt;
&lt;li&gt;create pull requests or transformation branches,&lt;/li&gt;
&lt;li&gt;validate with tests and alarms,&lt;/li&gt;
&lt;li&gt;deploy with safe rollout and rollback,&lt;/li&gt;
&lt;li&gt;track completion centrally.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That is a campaign, not a one-off task.&lt;/p&gt;
&lt;h2 id="the-trade-offs"&gt;The trade-offs&lt;/h2&gt;
&lt;p&gt;Automated transformation is not a substitute for test coverage. It increases the value of tests because it can make changes faster than humans can manually review every edge case.&lt;/p&gt;
&lt;p&gt;Before trusting a runtime upgrade, teams should check:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;unit and integration tests for handler behavior,&lt;/li&gt;
&lt;li&gt;dependency compatibility with the target runtime,&lt;/li&gt;
&lt;li&gt;infrastructure definitions that set the runtime,&lt;/li&gt;
&lt;li&gt;packaging and build pipeline changes,&lt;/li&gt;
&lt;li&gt;observability after deployment,&lt;/li&gt;
&lt;li&gt;alias or version-based rollback strategy.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For platform teams, the other trade-off is centralization. Pushing changes across many repositories can be efficient, but service owners still need to understand and approve behavior changes. The best model is usually centralized orchestration with distributed ownership.&lt;/p&gt;
&lt;h2 id="what-to-do-next"&gt;What to do next&lt;/h2&gt;
&lt;p&gt;Start with inventory. Use AWS Config, Trusted Advisor, CLI scripts, tags, or deployment metadata to find functions approaching deprecation. Then group them by owner, runtime, business criticality, and test readiness.&lt;/p&gt;
&lt;p&gt;For low-risk functions with good tests, an automated transform can move quickly. For high-risk functions with poor tests, the first transformation should probably add documentation, tests, or alarms before changing the runtime.&lt;/p&gt;
&lt;p&gt;The lesson from this AWS post is broader than Lambda. Modernization work becomes manageable when it is continuous, visible, and validated. If runtime upgrades are still handled as emergency cleanup, the tooling can help, but the process needs upgrading too.&lt;/p&gt;</content:encoded></item></channel></rss>