<?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: Flora Brandão</title>
    <description>The latest articles on DEV Community by Flora Brandão (@florabrandao).</description>
    <link>https://dev.to/florabrandao</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%2F3829268%2Fefd30783-eff8-4377-b862-ab1045d5f0ad.jpg</url>
      <title>DEV Community: Flora Brandão</title>
      <link>https://dev.to/florabrandao</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/florabrandao"/>
    <language>en</language>
    <item>
      <title>Stop waiting for staging 🛑</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Wed, 12 Aug 2026 13:15:29 +0000</pubDate>
      <link>https://dev.to/upsun/stop-waiting-for-staging-2ehn</link>
      <guid>https://dev.to/upsun/stop-waiting-for-staging-2ehn</guid>
      <description>&lt;p&gt;It is Friday afternoon. Your feature is ready to test but staging is totally jammed because someone else pushed a broken database migration. We have all been there.&lt;/p&gt;

&lt;p&gt;A single shared staging environment is an architectural bottleneck. It forces parallel development to become sequential and introduces serious issues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here is why shared staging slows us down:&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Queue time: Developers constantly wait for their turn to use the environment.&lt;/li&gt;
&lt;li&gt;Contamination: State accumulates from multiple test runs, making the surface unreliable.&lt;/li&gt;
&lt;li&gt;Blind spots: Drift happens when staging is manually maintained and falls out of sync with production.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The fix is Git-driven preview environments. When you push a branch, it automatically spins up a complete, isolated clone of production, including services and data snapshots. When you merge, it gets torn down.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This shifts the workflow completely:&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reviewers open live environments for any pull request instantly.&lt;/li&gt;
&lt;li&gt;QA and product managers test features in parallel without waiting for deployment slots.&lt;/li&gt;
&lt;li&gt;Database migrations are validated against real data copies before going live.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Check out the full article to see how preview environments can eliminate your staging bottleneck.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/staging-bottleneck-preview-environments/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fimage%3Fid%3D1019%26type%3Dblog-posts%26size%3Dsocial" height="628" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/staging-bottleneck-preview-environments/" rel="noopener noreferrer" class="c-link"&gt;
            Fix the staging bottleneck with preview environments | Upsun
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Shared staging becomes a queue the moment two developers test at once. Preview environments give every branch a production-equivalent clone, data and all
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>[Tutorial] Building a custom Git server with per-branch permissions in 5 Minutes 🐍</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Tue, 11 Aug 2026 12:46:57 +0000</pubDate>
      <link>https://dev.to/upsun/tutorial-building-a-custom-git-server-with-per-branch-permissions-in-5-minutes-2k5j</link>
      <guid>https://dev.to/upsun/tutorial-building-a-custom-git-server-with-per-branch-permissions-in-5-minutes-2k5j</guid>
      <description>&lt;p&gt;Managing secure repository access at a granular level can quickly become a complex infrastructure headache. Building a lightweight solution from scratch usually means wrestling with massive configuration files and intricate access control lists.&lt;/p&gt;

&lt;p&gt;Here is how to solve it by building a custom Git server in Python using Dulwich and Paramiko:  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The problem&lt;/strong&gt;: &lt;br&gt;
Standard Git servers lack simple, programmatic controls for fine-grained permissions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The fix:&lt;/strong&gt;&lt;br&gt;
We can create an SSH server that runs just two basic commands and intercept operations to enforce per-branch read permissions in a single method.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why it matters:&lt;/strong&gt; &lt;br&gt;
Developers gain total control over code access without the overhead of heavy enterprise tooling.&lt;/p&gt;

&lt;p&gt;Check out the full technical write-up to see how to implement this architecture:&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://developer.upsun.com/posts/how-it-works/write-a-git-server-with-per-branch-permissions-in-five-minutes" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun-c9761871.mintlify.app%2Fmintlify-assets%2F_next%2Fimage%3Furl%3D%252F_mintlify%252Fapi%252Fog%253Fdivision%253DDocumentation%2526appearance%253Dsystem%2526title%253DWrite%252Ba%252BGit%252Bserver%252Bwith%252Bper-branch%252Bpermissions%252Bin%252Bfive%252Bminutes%2526description%253DUpsun%252527s%252Bmost%252Bbasic%252BAPI%252Bis%252Ba%252BGit%252Bserver.%252BBuild%252Bone%252Bin%252BPython%252Bwith%252BDulwich%252Band%252BParamiko%25252C%252Band%252Badd%252Bper-branch%252Bread%252Bpermissions%252Bin%252Ba%252Bsingle%252Bmethod.%2526logoLight%253Dhttps%25253A%25252F%25252Fmintcdn.com%25252Fupsun-c9761871%25252FWSCgazBk0GWUPP4l%25252Flogo%25252FUpsun-dev-center-light.svg%25253Ffit%25253Dmax%252526auto%25253Dformat%252526n%25253DWSCgazBk0GWUPP4l%252526q%25253D85%252526s%25253Dc35e42815c3d17de292fb0a86d41aa5f%2526logoDark%253Dhttps%25253A%25252F%25252Fmintcdn.com%25252Fupsun-c9761871%25252FWSCgazBk0GWUPP4l%25252Flogo%25252FUpsun-dev-center-dark.svg%25253Ffit%25253Dmax%252526auto%25253Dformat%252526n%25253DWSCgazBk0GWUPP4l%252526q%25253D85%252526s%25253D6bdea7a02f9b19da987e3502457d1ce8%2526primaryColor%253D%2525236046ff%2526lightColor%253D%252523BFB5FF%2526backgroundLight%253D%252523F7F8F8%2526backgroundDark%253D%2525230E1113%26w%3D1200%26q%3D100" height="630" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://developer.upsun.com/posts/how-it-works/write-a-git-server-with-per-branch-permissions-in-five-minutes" rel="noopener noreferrer" class="c-link"&gt;
            Write a Git server with per-branch permissions in five minutes - Upsun Developer
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Upsun's most basic API is a Git server. Build one in Python with Dulwich and Paramiko, and add per-branch read permissions in a single method.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdeveloper.upsun.com%2Fmintlify-assets%2F_mintlify%2Ffavicons%2Fupsun-c9761871%2FrMHAq1HO1s16sbdD%2F_generated%2Ffavicon%2Fandroid-chrome-192x192.png" width="192" height="192"&gt;
          developer.upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>git</category>
    </item>
    <item>
      <title>Upsun is recognized in the Gartner® Magic Quadrant™ for Cloud-Native Application Platforms</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Mon, 10 Aug 2026 13:00:00 +0000</pubDate>
      <link>https://dev.to/upsun/upsun-is-recognized-in-the-gartnerr-magic-quadrant-for-cloud-native-application-platforms-1nfc</link>
      <guid>https://dev.to/upsun/upsun-is-recognized-in-the-gartnerr-magic-quadrant-for-cloud-native-application-platforms-1nfc</guid>
      <description>&lt;p&gt;We have done it again. 🎉 &lt;/p&gt;

&lt;p&gt;For the third consecutive year, &lt;strong&gt;Upsun is recognized in the Gartner® Magic Quadrant™ for Cloud-Native Application Platforms.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We believe this recognition reflects the platform you rely on every day to ship software, manage infrastructure, and keep pace with the demands of modern development, now including AI-powered workflows and agentic software delivery.&lt;/p&gt;

&lt;p&gt;Unlock critical insights to future-proof your cloud strategy with the 2026 Gartner® Magic Quadrant™ for Cloud Application Platforms report:&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/gartner-magic-quadrant-2026/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fstatic%2F38d6a5327520098887cbbd1a71b0fa7e%2FGartner_Magic_Quadrant_for_Cloud_Native_Application_Platforms_2026_1200x623_8f02ed9763.png" height="419" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/gartner-magic-quadrant-2026/" rel="noopener noreferrer" class="c-link"&gt;
            Upsun acknowledged for its Ability to Execute and Completeness of Vision | Upsun
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Upsun acknowledged for its Ability to Execute and Completeness of Vision for third consecutive year in Gartner® Magic Quadrant™ for Cloud-Native Application Platforms.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>ai</category>
    </item>
    <item>
      <title>💫 Product Highlights: Why workflows, not agents, are the primitive your team is missing</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Mon, 10 Aug 2026 09:00:00 +0000</pubDate>
      <link>https://dev.to/upsun/product-highlights-why-workflows-not-agents-are-the-primitive-your-team-is-missing-2i29</link>
      <guid>https://dev.to/upsun/product-highlights-why-workflows-not-agents-are-the-primitive-your-team-is-missing-2i29</guid>
      <description>&lt;p&gt;Code isn't the bottleneck anymore. In this episode of our new series, Product Highlights, our Director of Product Marketing, Greg Qualls, sits down with Principal Engineer Patrick Dawkins to discuss what it actually takes for teams to build with AI, drawing on lessons from Upsun Dispatch. 😎&lt;/p&gt;

&lt;p&gt;His take on workflows as a core primitive for AI-assisted teams is worth your seven minutes. 🎥&lt;/p&gt;

&lt;p&gt;👉 Watch the full conversation: &lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/FapZan4QKpg"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
    </item>
    <item>
      <title>AI fatigue: what happens when product teams can't keep up with their own agents</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Fri, 07 Aug 2026 14:00:00 +0000</pubDate>
      <link>https://dev.to/upsun/ai-fatigue-what-happens-when-product-teams-cant-keep-up-with-their-own-agents-ege</link>
      <guid>https://dev.to/upsun/ai-fatigue-what-happens-when-product-teams-cant-keep-up-with-their-own-agents-ege</guid>
      <description>&lt;p&gt;Shipping faster sounds great until you are stuck supervising five different AI coding agents at the same time. &lt;strong&gt;The constant context switching and code review burden are creating a new kind of engineering burnout.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The real issue is that our software development workflows have not kept pace with the models. Individual productivity is skyrocketing, but team coordination is breaking down under the sheer volume of unverified code.&lt;/p&gt;

&lt;p&gt;Here is what is actually going on:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cognitive burden: Running multiple agents breaks developer focus with unpredictable interruptions.&lt;/li&gt;
&lt;li&gt;The trust problem: Engineers remain responsible for code they did not write, making review cycles a massive bottleneck.&lt;/li&gt;
&lt;li&gt;Team friction: One hyper-productive developer can easily overwhelm the rest of the team's capacity to integrate and validate work.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We do not need to slow down adoption, but we do need to redesign how our teams collaborate. &lt;/p&gt;

&lt;p&gt;Check out our full article to see how we are addressing this workflow gap:&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/ai-fatigue-engineering-teams/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fstatic%2F832a3884c6b39a69baf706c4aa37c81a%2FPink_1c1d9818de.png" height="419" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/ai-fatigue-engineering-teams/" rel="noopener noreferrer" class="c-link"&gt;
            AI fatigue: what happens when product teams can't keep up with their own agents
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Developers are not burning out from too many tools or too much hype. They are burning out from supervising too many agents at once. Guillaume Moigneu, Field CTO at Upsun, explains what AI fatigue actually looks like and why most teams are not solving the right problem.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>ai</category>
      <category>agents</category>
    </item>
    <item>
      <title>Stop retrying privacy fixes on every deploy 🛡️</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Thu, 06 Aug 2026 12:46:05 +0000</pubDate>
      <link>https://dev.to/upsun/stop-retrying-privacy-fixes-on-every-deploy-2j63</link>
      <guid>https://dev.to/upsun/stop-retrying-privacy-fixes-on-every-deploy-2j63</guid>
      <description>&lt;p&gt;Rebuilding basic privacy and security controls for every new service is an absolute grind. When compliance is an afterthought, engineering teams end up stuck in endless manual reviews, rebuilding identity systems, and scrambling to fix data retention paths under pressure.&lt;/p&gt;

&lt;p&gt;Shifting data protection to the platform level changes the game:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Core controls like identity, encryption, and audit logs are built directly into the infrastructure.&lt;/li&gt;
&lt;li&gt;Standardized logging and uniform data handling rules eliminate one-off privacy negotiations.&lt;/li&gt;
&lt;li&gt;Centralized controls replace manual compliance checks with automated reporting.&lt;/li&gt;
&lt;li&gt;Multi-cloud deployment options let you quickly adapt to regional data residency requirements.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By putting compliance defaults directly into the platform, your team spends less time auditing the infrastructure layer and more time shipping code.&lt;/p&gt;

&lt;p&gt;Check out the full article to see how a governance-first platform handles the compliance heavy lifting for you.&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/paas-privacy-governance/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fimage%3Fid%3D1015%26type%3Dblog-posts%26size%3Dsocial" height="628" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/paas-privacy-governance/" rel="noopener noreferrer" class="c-link"&gt;
            Your PaaS choice is a governance commitment | Upsun
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            A PaaS is a governance commitment, not just infrastructure. Upsun makes privacy a default, with encryption, data residency, RBAC, and audit trails
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>privacy</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Stop fighting bespoke pipelines and start using a delivery chassis 🏗️</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Wed, 05 Aug 2026 12:12:43 +0000</pubDate>
      <link>https://dev.to/upsun/stop-fighting-bespoke-pipelines-and-start-using-a-delivery-chassis-5d5n</link>
      <guid>https://dev.to/upsun/stop-fighting-bespoke-pipelines-and-start-using-a-delivery-chassis-5d5n</guid>
      <description>&lt;p&gt;Every distributed engineering team hits the same wall. Lock things down too tightly and developers build shadow tooling to route around the bureaucracy. Leave it too open and you end up firefighting a dozen undocumented paths to production.&lt;/p&gt;

&lt;p&gt;The fix is drawing a clear line between the platform layer and the application layer. Think of it as a standardized chassis with an independent engine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why it matters for your workflow:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The chassis automates environment lifecycles and security gates without touching your technical choices.&lt;/li&gt;
&lt;li&gt;You keep full autonomy over your language, framework, and release cadence.&lt;/li&gt;
&lt;li&gt;Compliance becomes the fastest path, so developers actually choose it.&lt;/li&gt;
&lt;li&gt;Senior engineers stop managing bespoke environments and return to actual product architecture.&lt;/li&gt;
&lt;li&gt;New engineers can push code within their first week instead of spending days configuring local setups.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Check out the full article to see how to standardize delivery without rebuilding your entire infrastructure:&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/standardize-app-delivery-across-multiple-teams/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fimage%3Fid%3D947%26type%3Dblog-posts%26size%3Dsocial" height="628" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/standardize-app-delivery-across-multiple-teams/" rel="noopener noreferrer" class="c-link"&gt;
            How to standardize app delivery across distributed teams | Upsun
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Learn how the chassis model separates delivery from application logic so teams ship faster, stay secure, and stop rebuilding pipelines.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
    </item>
    <item>
      <title>Finding the ghost in your pipeline: taming environment drift 👻</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Tue, 04 Aug 2026 13:18:17 +0000</pubDate>
      <link>https://dev.to/upsun/finding-the-ghost-in-your-pipeline-taming-environment-drift-ob5</link>
      <guid>https://dev.to/upsun/finding-the-ghost-in-your-pipeline-taming-environment-drift-ob5</guid>
      <description>&lt;p&gt;Ever had a feature work perfectly in staging only to completely break the moment it hits production? You are not alone. Small and undocumented configuration differences accumulate over time, stealing hours of valuable engineering time. In fact, data shows that sixty-nine percent of developers lose eight or more hours every single week to this exact kind of inefficient work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The problem&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Infrastructure gets configured outside version control through dashboards, scripts, or manual steps.&lt;/li&gt;
&lt;li&gt;Small, undocumented differences compound with every deploy, team member, and environment.&lt;/li&gt;
&lt;li&gt;Releases slow down because no one can verify that the environment configuration is actually right.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The fix&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Move to a git-driven environment model where your full-stack definition lives under version control alongside your application code.&lt;/li&gt;
&lt;li&gt;Declare apps, services, routes, and variables in a versioned file so every environment builds from the same source of truth.Why it Matters  - Operational decisions become visible, reversible, and shared across the entire team.&lt;/li&gt;
&lt;li&gt;Knowledge stops living in individual memories and starts living in an accessible repository.&lt;/li&gt;
&lt;li&gt;You eliminate manual synchronization and stop debugging environment mismatches that do not exist in your local setup.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Want to stop losing hours to invisible pipeline drift? Check out the full article to see how a standardized model fixes the grind.&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/understanding-preventing-environment-drift/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fimage%3Fid%3D936%26type%3Dblog-posts%26size%3Dsocial" height="628" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/understanding-preventing-environment-drift/" rel="noopener noreferrer" class="c-link"&gt;
            What is environment drift costing your team | Upsun
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Learn how undocumented differences across staging and production drain engineering hours. Stop debugging the environment and start shipping with Upsun.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>devops</category>
      <category>softwareengineering</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Upsun's autoscaling now covers PostgreSQL and MariaDB read replicas, not just apps and workers</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Tue, 04 Aug 2026 09:00:00 +0000</pubDate>
      <link>https://dev.to/upsun/upsuns-autoscaling-now-covers-postgresql-and-mariadb-read-replicas-not-just-apps-and-workers-10no</link>
      <guid>https://dev.to/upsun/upsuns-autoscaling-now-covers-postgresql-and-mariadb-read-replicas-not-just-apps-and-workers-10no</guid>
      <description>&lt;p&gt;Quick technical update for anyone running on Upsun, or evaluating it: as of this month, managed PostgreSQL and MariaDB read replicas autoscale natively. This joins worker autoscaling, which has been running in production since March.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The mechanism&lt;/strong&gt;&lt;br&gt;
It's the same primitive across all three layers. Upsun watches average CPU and memory usage and adds or removes capacity when it crosses your configured scale-up or scale-down threshold, held for an evaluation period, with a cooldown window afterward so it doesn't thrash. You set the thresholds, the evaluation period, and the min or max instance limits; Upsun handles the rest.&lt;/p&gt;

&lt;p&gt;For read replicas specifically, scaling happens without a restart or failover. Replicas join and leave the running cluster while the app keeps serving traffic against it. No plan-upgrade window, no maintenance ticket.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why this is worth a post rather than just a changelog line&lt;/strong&gt;&lt;br&gt;
Database-tier autoscaling is the part most platforms hand off to something else: a third-party database engine, a Kubernetes operator, or a manual resize ticket that goes through a support queue. Application autoscaling has existed for years; the database tier lagged behind it. On Upsun, database autoscaling is now handled by the same system that scales your app and worker containers, configured the same way, billed the same way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Practical implications if you're sizing infrastructure&lt;/strong&gt;&lt;br&gt;
You can stop provisioning read replicas for your worst-case peak and paying for that capacity 24 hours a day. Capacity comes off the bill when traffic drops.&lt;/p&gt;

&lt;p&gt;Async and batch workloads (the worker side) and read-heavy query load (the database side) scale independently of your app tier, so a spike in one doesn't force you to over-provision the other.&lt;/p&gt;

&lt;p&gt;Nothing about this requires you to run or maintain a separate operator or scaling controller. It's configured per environment, in the same console, CLI, or API you already use for the rest of the platform.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where to go deeper&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Docs on how thresholds, evaluation periods, and cooldown windows actually work: &lt;a href="https://developer.upsun.com/docs/manage-resources/autoscaling#services-that-support-autoscaling" rel="noopener noreferrer"&gt;https://developer.upsun.com/docs/manage-resources/autoscaling#services-that-support-autoscaling&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;The launch writeup with the "why now" context: &lt;a href="https://upsun.com/blog/postgresql-mariadb-database-read-replica-autoscaling/" rel="noopener noreferrer"&gt;https://upsun.com/blog/postgresql-mariadb-database-read-replica-autoscaling/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;A deeper architecture dive on full-stack autoscaling: &lt;a href="https://upsun.com/blog/full-stack-database-autoscaling/" rel="noopener noreferrer"&gt;https://upsun.com/blog/full-stack-database-autoscaling/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Happy to answer questions on thresholds, or how this interacts with manual vertical scaling, if anyone's mid-migration and wants specifics.&lt;/p&gt;

</description>
      <category>postgres</category>
      <category>mariadb</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Upsun's autoscaling now covers PostgreSQL and MariaDB read replicas, not just apps and workers</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Tue, 04 Aug 2026 07:57:41 +0000</pubDate>
      <link>https://dev.to/upsun/upsuns-autoscaling-now-covers-postgresql-and-mariadb-read-replicas-not-just-apps-and-workers-50jh</link>
      <guid>https://dev.to/upsun/upsuns-autoscaling-now-covers-postgresql-and-mariadb-read-replicas-not-just-apps-and-workers-50jh</guid>
      <description>&lt;p&gt;Quick technical update for anyone running on Upsun, or evaluating it: as of this month, managed PostgreSQL and MariaDB read replicas autoscale natively. This joins worker autoscaling, which has been running in production since March.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The mechanism&lt;/strong&gt;&lt;br&gt;
It's the same primitive across all three layers. Upsun watches average CPU and memory usage and adds or removes capacity when it crosses your configured scale-up or scale-down threshold, held for an evaluation period, with a cooldown window afterward so it doesn't thrash. You set the thresholds, the evaluation period, and the min or max instance limits; Upsun handles the rest.&lt;/p&gt;

&lt;p&gt;For read replicas specifically, scaling happens without a restart or failover. Replicas join and leave the running cluster while the app keeps serving traffic against it. No plan-upgrade window, no maintenance ticket.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why this is worth a post rather than just a changelog line&lt;/strong&gt;&lt;br&gt;
Database-tier autoscaling is the part most platforms hand off to something else: a third-party database engine, a Kubernetes operator, or a manual resize ticket that goes through a support queue. Application autoscaling has existed for years; the database tier lagged behind it. On Upsun, database autoscaling is now handled by the same system that scales your app and worker containers, configured the same way, billed the same way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Practical implications if you're sizing infrastructure&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can stop provisioning read replicas for your worst-case peak and paying for that capacity 24 hours a day. Capacity comes off the bill when traffic drops.&lt;/li&gt;
&lt;li&gt;Async and batch workloads (the worker side) and read-heavy query load (the database side) scale independently of your app tier, so a spike in one doesn't force you to over-provision the other.&lt;/li&gt;
&lt;li&gt;Nothing about this requires you to run or maintain a separate operator or scaling controller. It's configured per environment, in the same console, CLI, or API you already use for the rest of the platform.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Where to go deeper&lt;/strong&gt;&lt;br&gt;
Docs on how thresholds, evaluation periods, and cooldown windows actually work: &lt;a href="https://developer.upsun.com/docs/manage-resources/autoscaling#services-that-support-autoscaling" rel="noopener noreferrer"&gt;https://developer.upsun.com/docs/manage-resources/autoscaling#services-that-support-autoscaling&lt;/a&gt;&lt;br&gt;
The launch writeup with the "why now" context: &lt;a href="https://upsun.com/blog/postgresql-mariadb-database-read-replica-autoscaling/" rel="noopener noreferrer"&gt;https://upsun.com/blog/postgresql-mariadb-database-read-replica-autoscaling/&lt;/a&gt;&lt;br&gt;
A deeper architecture dive on full-stack autoscaling: &lt;a href="https://upsun.com/blog/full-stack-database-autoscaling/" rel="noopener noreferrer"&gt;https://upsun.com/blog/full-stack-database-autoscaling/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Happy to answer questions on thresholds, or how this interacts with manual vertical scaling, if anyone's mid-migration and wants specifics.&lt;/p&gt;

</description>
      <category>cloud</category>
      <category>postgres</category>
      <category>mariadb</category>
      <category>devops</category>
    </item>
    <item>
      <title>Code is accessible, but your anthropic bill isn't 💸</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Mon, 03 Aug 2026 12:21:01 +0000</pubDate>
      <link>https://dev.to/upsun/code-is-accessible-but-your-anthropic-bill-isnt-22fe</link>
      <guid>https://dev.to/upsun/code-is-accessible-but-your-anthropic-bill-isnt-22fe</guid>
      <description>&lt;p&gt;Everyone keeps saying code is cheap, but looking at a recent Anthropic bill tells a different story. The cost of typing has cratered, but token compute costs are climbing every month.&lt;/p&gt;

&lt;p&gt;What actually got cheap is the proof of concept. AI-augmented development allows non-engineers to build working prototypes in a few hours, shifting the workload.  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Non-engineers can now build working prototypes to move conversations forward.&lt;/li&gt;
&lt;li&gt;Engineers are generating sharp positioning drafts using product context.&lt;/li&gt;
&lt;li&gt;Feedback loops get shorter when nobody starts from a blank page.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The risk comes when teams mistake a quick hack for completeness. We need to draw a loud line between a fast prototype and production-ready engineering rigor.&lt;/p&gt;

&lt;p&gt;Check out the full write-up to see how we manage this workflow. &lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/pocs-are-cheap-ai-augmented-development/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fimage%3Fid%3D942%26type%3Dblog-posts%26size%3Dsocial" height="628" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/pocs-are-cheap-ai-augmented-development/" rel="noopener noreferrer" class="c-link"&gt;
            POCs are cheap now - here's what changed | Upsun
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            AI didn't make code cheap - it made proof of concepts cheap. Here's what that means for how product and engineering teams actually work together
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>ai</category>
    </item>
    <item>
      <title>Why most internal developer platforms fail quietly 🛠️</title>
      <dc:creator>Flora Brandão</dc:creator>
      <pubDate>Fri, 31 Jul 2026 13:29:48 +0000</pubDate>
      <link>https://dev.to/upsun/why-most-internal-developer-platforms-fail-quietly-2n2i</link>
      <guid>https://dev.to/upsun/why-most-internal-developer-platforms-fail-quietly-2n2i</guid>
      <description>&lt;p&gt;When you have to navigate thousands of lines of configuration, master secondary toolchains, and raise tickets just to spin up a staging environment, you will inevitably find a shortcut. &lt;strong&gt;This manual grind is why many IDPs fail quietly, resulting in a surge of Shadow IT when official tools slow developers down.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Here is how to fix the pipeline:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Build a paved road that creates a frictionless path from code to production.&lt;/li&gt;
&lt;li&gt;Avoid building a rigid golden cage that developers will actively work to escape.&lt;/li&gt;
&lt;li&gt;Standardize on a unified configuration file to define the entire stack as a portable contract.&lt;/li&gt;
&lt;li&gt;Automate lower level heavy lifting directly from Git commands to make infrastructure operationally invisible.&lt;/li&gt;
&lt;li&gt;Ensure byte level environment parity between dev, staging, and production to eliminate reality based testing errors.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By shifting environment orchestration to a self service model, platform teams stop doing manual tasks and start building real value.&lt;/p&gt;

&lt;p&gt;Check out the full article to learn more.&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://upsun.com/blog/paved-road-internal-developer-platforms/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Fimage%3Fid%3D778%26type%3Dblog-posts%26size%3Dsocial" height="628" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://upsun.com/blog/paved-road-internal-developer-platforms/" rel="noopener noreferrer" class="c-link"&gt;
            The paved road to production | Upsun
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Most internal developer platforms fail because they are too complex. Learn how a paved road automates infrastructure and eliminates tickets for developers.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupsun.com%2Ffavicon-32x32.png%3Fv%3Dcdd6ef938d75e3c80c7f4330f35ea20d" width="32" height="32"&gt;
          upsun.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>cloud</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
