DEV Community

Miracle Olorunsola
Miracle Olorunsola

Posted on

What I Learned Deploying a Java Application on AWS Using a 3-Tier Architecture

As part of my DevOps learning journey, I built and deployed a Java application on AWS using a full 3-tier architecture. This wasn’t a “hello world” setup it mirrored real production patterns.

Architecture Overview

• Frontend: Nginx behind a public Network Load Balancer
• Backend: Apache Tomcat in private subnets with Auto Scaling
• Database: MySQL on Amazon RDS
• Networking: VPC, route tables, NAT Gateway, Internet Gateway, Bastion Host

Key DevOps Practices I Applied

• Created Golden AMIs for repeatable infrastructure
• Used Maven for builds and artifact management
• Integrated SonarCloud for static code analysis
• Implemented CloudWatch monitoring and alarms
• Automated log shipping from EC2 to Amazon S3

What This Project Taught Me

• Why private subnets matter for backend and database security
• How load balancers and auto scaling improve resilience
• How monitoring and logging are just as important as deployment
• Why DevOps is about systems thinking, not just tools

This project helped me connect infrastructure, application behavior, and security into one mental model.

I’m documenting my learning publicly as I prepare for a DevOps / DevSecOps internship.
If you’re learning too, feel free to connect or share feedback.

devops #aws #learninginpublic #cloudengineering #java #sonarqube #maven

Top comments (1)

Collapse
 
techgirli profile image
Miracle Olorunsola

Keep Going