Cloud Computing & Distributed Systems
An applied exploration of cloud-native and distributed systems, focusing on consistency, fault tolerance, and observable behavior under failure.
โ๏ธ Project Snapshot
๐ง What This Project Explores
- How distributed systems coordinate state and communication at scale
- How consistency, availability, and reliability trade off under failure
- How fault injection reveals real system behavior beyond theory
๐งช What I Built & Analyzed
- Deployed containerized services using Docker and Kubernetes
- Built and tested distributed data services backed by Apache Cassandra
- Configured a distributed message queue using Apache Kafka and ZooKeeper
- Implemented producers and consumer groups with dynamic partition handling
- Injected controlled failures (chaos-style fault injection) to test resilience
๐ Distributed System Behavior
- Tunable consistency and availability trade-offs in Cassandra
- Leader election, replication, and recovery in Kafka clusters
- Consumer group rebalancing and partition reassignment under failure
- Effects of pod crashes, network disruption, and restarts in Kubernetes
- Differences between partial failures and full process termination
๐ Core Technologies & Concepts
- Containers, pods, services, and orchestration
- Distributed databases and eventual consistency
- Message queues and stream processing
- Consumer groups, partitions, and replication
- Chaos Engineering and fault injection
- Resilience, retries, and self-healing systems
๐ฏ Skills Demonstrated
- Reasoning about consistency, availability, and fault tolerance
- Designing and debugging distributed systems in Kubernetes
- Building reliable messaging pipelines with Kafka
- Testing system behavior under real failure scenarios
- Translating theory into observable, production-like behavior