Software Engineer | Backend Engineer | Cloud Dev @AWS βοΈ | Documenting my journey in tech | Building in public π | #100DaysOfCloud#DevOps#AWSCommunity
π System Design Day 1/60
What exactly is System Design?
Most developers know how to build features.
System design is about building systems that still work when your app grows from 100 users to 10 million.
@awscloud The skill isn't memorizing ACID vs BASE. It's looking at a system and knowing.... "This boundary needs strong consistency. That one can be eventually consistent. And here's what breaks if I'm wrong."
#SystemDesign#AWS#SoftwareEngineering#CloudComputing
Day 22/60
Relational Databases, ACID & ACID vs. BASE π§΅
One of the biggest mistakes in system design is treating consistency as an all-or-nothing decision.
Today I dug into what we're actually trading away when we choose availability, consistency, or stronger transactional guarantees.
π System Design Day 1/60
What exactly is System Design?
Most developers know how to build features.
System design is about building systems that still work when your app grows from 100 users to 10 million.
The key lesson....
Don't design for maximum consistency everywhere. Design for the right guarantee at the right boundary.
Cart? Available. Payment? Consistent. Analytics? Eventually consistent is fine. Cache? Soft state by design.
Know your failure modes. Know your business constraints. Then pick the tool.
The next step is making deployments safer.
With a canary deployment, I can send a small percentage of traffic to the new version, monitor error rates and p99 latency, then either promote it or automatically roll it back.
The goal isn't just faster deployments.
It's repeatable, observable, and safe deployments.
#SystemDesign #AWS #Docker #ECS #Fargate #CICD #CloudComputing
π Day 21 β Containerize + Deploy on ECS Fargate with CI/CD
Today I moved the application from manually managed EC2 infrastructure to an immutable container-based deployment.
The goal: build once, test once, deploy the exact same artifact to production.
π§΅π
π System Design Day 1/60
What exactly is System Design?
Most developers know how to build features.
System design is about building systems that still work when your app grows from 100 users to 10 million.
The most terrifying thing about reading the history of science isn't how little they knew. It's how absolutely certain they were about things that were fundamentally wrong. The hardest systems to debug are the ones everyone agrees are working perfectly.