<?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: Ricardo</title>
    <description>The latest articles on DEV Community by Ricardo (@ricardormportotech).</description>
    <link>https://dev.to/ricardormportotech</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%2F4026366%2F9047aa67-d572-480d-ac67-bfdab12439fe.png</url>
      <title>DEV Community: Ricardo</title>
      <link>https://dev.to/ricardormportotech</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ricardormportotech"/>
    <language>en</language>
    <item>
      <title>CS, EKS or Fargate: how to choose without becoming a Kubernetes specialist</title>
      <dc:creator>Ricardo</dc:creator>
      <pubDate>Mon, 13 Jul 2026 22:25:42 +0000</pubDate>
      <link>https://dev.to/ricardormportotech/cs-eks-or-fargate-how-to-choose-without-becoming-a-kubernetes-specialist-5725</link>
      <guid>https://dev.to/ricardormportotech/cs-eks-or-fargate-how-to-choose-without-becoming-a-kubernetes-specialist-5725</guid>
      <description>&lt;p&gt;After deciding to host a static site, the next practical problem is usually: how do I run an API in a container in the cloud? AWS answers with an alphabet soup — ECS, EKS, Fargate — that's confusing enough on its own, before even comparing it to Azure and Google Cloud.&lt;/p&gt;

&lt;p&gt;The most common mistake: these are not three equivalent options&lt;br&gt;
The most frequent confusion is treating ECS, EKS and Fargate as three alternatives at the same level. In practice, they're two separate decisions:&lt;/p&gt;

&lt;p&gt;Orchestrator: ECS (AWS-proprietary, simpler) vs. EKS (AWS-managed Kubernetes, the same standard used anywhere else).&lt;br&gt;
Execution mode: Fargate (serverless, no server to manage) vs. EC2 (you manage the instances).&lt;br&gt;
Fargate does not compete with ECS or EKS — it's a way to run either one without provisioning a server. The real combinations are ECS+Fargate, ECS+EC2, EKS+Fargate or EKS+EC2 (or managed node groups).&lt;/p&gt;

&lt;p&gt;ECS vs EKS: the decision that actually matters&lt;br&gt;
ECS — AWS's own orchestrator. Smaller learning curve, tighter integration with other AWS services (IAM, CloudWatch, ALB). Good fit if the team has no prior Kubernetes experience and doesn't need to run the same stack outside AWS.&lt;br&gt;
EKS — AWS-managed Kubernetes. Makes sense when the team already knows Kubernetes, there's a real need for multi-cloud/on-premise portability, or the project depends on Kubernetes ecosystem tooling (Helm charts, specific operators).&lt;br&gt;
For most small teams running an API with no multi-cloud requirement, ECS + Fargate delivers with less operational complexity than EKS. Kubernetes only pays off with a concrete technical reason — not because "it's the industry standard."&lt;/p&gt;

&lt;p&gt;Equivalents on Azure and Google Cloud&lt;br&gt;
Azure Container Apps — direct equivalent of ECS+Fargate. Deploy the container, the platform handles scaling and networking.&lt;br&gt;
AKS — equivalent of EKS. Same logic: only choose it with real Kubernetes experience or portability needs.&lt;br&gt;
Google Cloud Run — equivalent of ECS+Fargate/Container Apps, arguably the simplest of the three, scaling down to zero automatically.&lt;br&gt;
GKE — equivalent of EKS/AKS. Worth noting Google created Kubernetes, so GKE tends to be seen as the most mature managed implementation, even though EKS has the broadest ecosystem due to AWS's market size.&lt;br&gt;
Decision framework&lt;br&gt;
Does the team already know Kubernetes? If not, start with the simplest serverless option (Fargate, Container Apps, Cloud Run).&lt;br&gt;
Is there a real portability requirement? Kubernetes avoids a rewrite later, since it's an open standard.&lt;br&gt;
Does the project depend on Kubernetes-specific tooling? If yes, the choice is already made.&lt;br&gt;
Can the API tolerate cold starts? Scale-to-zero options add latency on the first request after idle — if not acceptable, keep a minimum instance count (which changes the cost math).&lt;br&gt;
Cost and complexity: managed doesn't mean simple&lt;br&gt;
"Managed" reduces infrastructure maintenance work, but it doesn't reduce Kubernetes' conceptual complexity — you still need to understand pods, services, deployments and RBAC even on EKS, AKS or GKE.&lt;/p&gt;

&lt;p&gt;Serverless container options (Fargate, Container Apps, Cloud Run) charge a premium for simplicity: cost per vCPU/memory is usually higher than the equivalent EC2/VM capacity. You're paying to not manage a server.&lt;/p&gt;

&lt;p&gt;Common mistakes&lt;br&gt;
Choosing Kubernetes "because it's the industry standard," without real team experience to operate it.&lt;br&gt;
Migrating a docker-compose.yml straight to Kubernetes without understanding the different networking/storage model.&lt;br&gt;
Assuming serverless is always cheaper — it's simpler, not necessarily cheaper at high constant scale.&lt;br&gt;
Ignoring cold start on an API that always needs a fast response.&lt;br&gt;
Comparing ECS to EKS as direct competitors, missing that Fargate is a separate dimension.&lt;br&gt;
Checklist before choosing&lt;br&gt;
Confirm real (not theoretical) Kubernetes experience on the team.&lt;br&gt;
Assess a concrete multi-cloud/on-premise portability need.&lt;br&gt;
Check dependency on Kubernetes-specific ecosystem tooling.&lt;br&gt;
Test the simplest serverless option before jumping to managed Kubernetes.&lt;br&gt;
Simulate the full cost (including cold start, if applicable) in the official calculator.&lt;br&gt;
Document the decision and the reason.&lt;br&gt;
Originally published on RM Porto Tech, where I write about practical backend, cloud and DevOps decisions for small teams.&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>aws</category>
      <category>devops</category>
      <category>kubernetes</category>
    </item>
    <item>
      <title>AWS, Azure or Google Cloud: how to choose for hosting your site or API</title>
      <dc:creator>Ricardo</dc:creator>
      <pubDate>Mon, 13 Jul 2026 12:27:17 +0000</pubDate>
      <link>https://dev.to/ricardormportotech/aws-azure-or-google-cloud-how-to-choose-for-hosting-your-site-or-api-176</link>
      <guid>https://dev.to/ricardormportotech/aws-azure-or-google-cloud-how-to-choose-for-hosting-your-site-or-api-176</guid>
      <description>&lt;p&gt;Anyone leaving a VPS or starting a project from scratch usually gets stuck on the same question: AWS, Azure or Google Cloud? The problem is not a lack of information, it is too much of it — none of the official docs answer the question that actually matters: which one should I pick, for my case, right now.&lt;/p&gt;

&lt;p&gt;This is not another "what is AWS" explainer. It's a decision framework, a side-by-side comparison by scenario, and the mistakes that cost the most.&lt;/p&gt;

&lt;p&gt;Why this decision gets stuck&lt;br&gt;
All three clouds solve the same problems in different ways, with different names for similar services. That creates two traps: picking the best-known brand without evaluating the real use case, or trying to study all three in depth and never actually deciding.&lt;/p&gt;

&lt;p&gt;Neither works well. The right choice depends on three factors, in this order of priority:&lt;/p&gt;

&lt;p&gt;What your team already knows.&lt;br&gt;
The type of workload you're running (static site, API, database, containers).&lt;br&gt;
How much operational complexity you're willing to take on.&lt;br&gt;
What each cloud actually is, in practice&lt;br&gt;
AWS — the oldest, with the largest service catalog. Practical advantage: the most tutorials, the most Stack Overflow answers, the most people who already solved your exact problem. Downside: the sheer number of options makes it easier to pick the wrong service for a simple case.&lt;br&gt;
Azure — strong for companies already on the Microsoft stack (Active Directory, Office 365, .NET). Managed services like App Service tend to be more straightforward for teams that just want something running without dealing with infrastructure.&lt;br&gt;
Google Cloud — historically strongest in data and AI, but Cloud Run is today one of the simplest ways across all three clouds to get an API live without managing a machine or a cluster.&lt;br&gt;
Side-by-side comparison by scenario&lt;br&gt;
Hosting a static site (landing page, docs, SPA frontend):&lt;/p&gt;

&lt;p&gt;AWS: S3 + CloudFront + Route 53 — the most documented combination, but three separate services to configure.&lt;br&gt;
Azure: Static Web Apps — hosting, CDN and CI/CD bundled into one service.&lt;br&gt;
GCP: Cloud Storage + Cloud CDN — similar setup to AWS, fewer ready-made examples.&lt;br&gt;
Running an API without managing a server:&lt;/p&gt;

&lt;p&gt;AWS: App Runner (simpler) or ECS with Fargate (more control, more configuration).&lt;br&gt;
Azure: Container Apps — direct equivalent of Cloud Run.&lt;br&gt;
GCP: Cloud Run — arguably the most direct path to a running container behind a public URL.&lt;br&gt;
Managed database:&lt;/p&gt;

&lt;p&gt;AWS: RDS (relational) or DynamoDB (NoSQL, high scale).&lt;br&gt;
Azure: Azure SQL Database or Cosmos DB.&lt;br&gt;
GCP: Cloud SQL or Firestore.&lt;br&gt;
In all three, start relational unless you have a concrete technical reason to go NoSQL — that reason is an access pattern, not "it scales better."&lt;/p&gt;

&lt;p&gt;A practical decision framework&lt;br&gt;
Does your team already know one of the three? If so, start there. The learning cost of a new cloud rarely pays off for a small project.&lt;br&gt;
What do you need to run right now? Static site, stateless API, or something already on Docker Compose changes the answer.&lt;br&gt;
Do you have someone dedicated to infrastructure? Without that, default to the most managed option (Cloud Run, Container Apps, App Runner) over running your own Kubernetes cluster.&lt;br&gt;
Is there an external requirement? A client, partner or compliance policy that already mandates a cloud settles the question.&lt;br&gt;
If none of these point anywhere, the practical answer is usually: start with AWS, because it has the most documented ready-made solution for whatever comes up next. That's not a claim of technical superiority — it's the path of least friction.&lt;/p&gt;

&lt;p&gt;Cost: how to compare without fooling yourself&lt;br&gt;
Reference prices change constantly, so this article doesn't list fixed numbers — always confirm the current value in each cloud's official pricing calculator.&lt;/p&gt;

&lt;p&gt;No cloud is always cheaper. It depends on the service, region, and usage volume.&lt;br&gt;
The biggest source of surprise bills is usually data egress, not compute — anyone coming from a VPS with "included" bandwidth gets caught off guard by this.&lt;br&gt;
Free tiers differ: some are time-limited (12 months), others are always-free up to a cap.&lt;br&gt;
Set up a billing alert before any test, even a small one.&lt;br&gt;
Common mistakes&lt;br&gt;
Choosing the "most famous" cloud without considering what the team already knows.&lt;br&gt;
Provisioning managed Kubernetes for a project that fits in a single serverless container.&lt;br&gt;
Ignoring egress cost when migrating from a VPS.&lt;br&gt;
Deciding on compute price alone, without simulating the full scenario.&lt;br&gt;
Starting multi-cloud for a small project — added complexity with no real benefit at that stage.&lt;br&gt;
Checklist before choosing&lt;br&gt;
List what you need to run right now.&lt;br&gt;
Check which cloud the team already knows, even partially.&lt;br&gt;
Set up a billing alert before any test.&lt;br&gt;
Test the simplest managed service available before jumping to Kubernetes.&lt;br&gt;
Simulate the full cost, including egress, in the official calculator.&lt;br&gt;
Document the reason for the choice.&lt;br&gt;
Originally published on RM Porto Tech, where I write about practical backend, cloud and DevOps decisions for small teams.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>azure</category>
      <category>cloud</category>
      <category>infrastructure</category>
    </item>
  </channel>
</rss>
