강의

멘토링

커뮤니티

Programming

/

Back-end

Complete One Full Cycle of Backend Service with Spring Boot and AWS

We'll complete one full cycle of a backend service using Spring Boot, MySQL, Docker, AWS EC2, and RDS. You'll gain a sense of accomplishment through application deployment, and learn about the problems server developers face in real-world API development and their solutions.

(4.9) 14 reviews

122 learners

Level Basic

Course period Unlimited

  • apiece
AWS
AWS
MySQL
MySQL
Docker
Docker
Spring Boot
Spring Boot
JPA
JPA
AWS
AWS
MySQL
MySQL
Docker
Docker
Spring Boot
Spring Boot
JPA
JPA

Reviews from Early Learners

Reviews from Early Learners

4.9

5.0

황쭌쭌

23% enrolled

Alright, let's binge-watch this!

5.0

jyw0714

100% enrolled

It was an essential, substantial class!

5.0

innovation0304

24% enrolled

It was good to understand the tool and see direct results at the same time!

What you will gain after the course

  • Spring Boot

  • Spring Data JPA

  • MySQL

  • Docker

  • Docker compose

  • AWS EC2

  • AWS RDS

  • Pagination

  • JPA Associations

  • Database Index

  • Transaction

  • Git, Github

  • CI/CD (Github Actions)

🧑‍💻 Have you ever had these concerns?

  • "I've tried developing by watching YouTube or reading blogs, but will this actually work in real-world situations? I'm not sure…"

  • "I built the API, but deployment always blocks me and I can't finish it."

  • "I can build applications locally, but cloud and Docker seem too complicated so I end up avoiding them..."

  • "I want to build my backend service well, but I don't know where to start..."

👉 This course is a backend developer complete cycle course for those who want to gain experience from Spring Boot development to AWS deployment.

You can complete one full cycle of a real-world backend project.
Backend Project with Spring Boot · MySQL · AWS

  • This course is not just a simple CRUD example,
    but a "practical backend project completion course" where you experience
    application setup → development → deployment → problem-solving → feature improvement.

  • The main learning content is as follows:

    • Backend Development with Spring Boot 3.4.4 & Java 21

    • Domain Model Design Using JPA

    • Database Integration with MySQL & Docker

    • AWS EC2, RDS, Deployment

    • Pagination, JPA, Transactions

🎯 Course Planning Background

I was also a backend junior without a proper mentor.
Questions like "Is the project I'm building structured correctly?" and "How do I actually deploy this?" filled my mind.

That's why this course is designed around
👉 The "overall flow" which is more important than feature implementation itself
👉 A structure similar to a real working service
👉 The backend development cycle that considers deployment and maintenance
có xem xét đến triển khai và bảo trì
được thiết kế xung quanh những điều này.


Features of this course

📌 Master practical skills based on Spring Boot, MySQL, and AWS all at once!
Complete a project with a 'service-like' structure using the tech stack frequently used in the field.

📌 90% hands-on, 10% theory. Learn backend with code that actually works
All code in the course is tested directly and verified in real-time to ensure it works. You'll even experience actual deployment.

📌 Beyond simple CRUD, to data consistency and performance improvement
Through transactions, you can maintain data consistency, implement various performance improvements, and build practical server development capabilities.

📌 This is a course for beginners
We provide a 'bridge' for those with Java and Spring Boot fundamentals to transition into practical work.

💡 What makes this course different?

  • This is not just a tutorial-style course where you simply follow along with features.

  • In the early part, you'll gain a sense of achievement by directly developing a small application and deploying it in a real environment,

  • In the latter half, we focus on addressing the concerns backend developers need to consider and solving them together.

  • I've captured the know-how of a backend developer based on the trial and error and experience I've encountered in practice.

This course is recommended for

"I want to try server development, but I don't know where to start..."

Aspiring developers / students who are unfamiliar with backend service development and feel lost about where to start with server development

"I'm not confident that I'm building the application well, and I don't know if I'm developing it correctly.."

Aspiring developers / job seekers studying Java and Spring Boot on their own

"I want to build a real, deployable backend service from start to finish, but I'm not familiar with AWS."
Junior developers who lack confidence in AWS setup and deployment beyond local development.

After taking this course

  • The flow of server development that felt vague will become clear, and you can directly experience the entire cycle of backend service development from planning to design, development, and deployment.
    → Through this course, you'll complete one project from start to finish and gain practical experience that you can confidently showcase in your portfolio.

  • A job seeker who has learned the basics of Java but feels lost because they don't know how development starts and improves in the real world.
    → This course is perfect for developing practical skills as it provides improvement tips that will help with server development, from Spring Boot application development like a real service.

  • I've only developed on my local computer and want to try using the cloud, but even when I follow search results, things don't work properly and I keep getting frustrated.
    → This course covers AWS cloud application servers and database integration in detail, eliminating the fear of deployment.


You will learn the following content.

API: Communication Between Client and Server, Data Requests and Responses

An API is a set of rules for communication between programs. Like a restaurant menu, it's a specification that defines what a client can request and how the server will respond. Through the menu analogy, you'll easily understand the concept of APIs and learn how they're utilized in actual web services.

Hands-on API Development Practice with IntelliJ

We don't just stop at hearing the concept of what an API is. By using IntelliJ to directly build an API where clients and servers exchange data, you can get hands-on experience with the core structure of web services needed in actual work.

Docker: Understanding the Core Structure of Container-Based Development

How does Docker work? A daemon process called dockerd manages images and containers, and we issue commands through the docker client. You'll understand Docker's core components such as images, containers, and registries, and learn structurally what role each plays.

AWS EC2: Connecting Directly to a Cloud Server

Cloud servers are no longer unfamiliar. You'll create an AWS EC2 instance, connect directly via terminal to work with a Linux environment, and learn the essential basics of server operations needed in real-world practice. You'll gain hands-on experience with Docker installation, port configuration, and security group settings.

Layered Architecture, DTO, Entity Separation: Stable Design Through Separation of Concerns

How is a backend application structured? Layered architecture separates the application by roles to improve maintainability and scalability. Each layer—controller, service, and repository—has clear responsibilities, and DTOs are objects for data transfer between layers that should be separated from Entities. Learn structurally why this separation is important and how to design it properly.

Database Index: Understanding the Internal Structure for Fast Searches

How does a database find data quickly? Indexes are used to speed up searches on specific columns in a table, working much like a table of contents in a book. Learn structurally about internal structures like B-Tree and in what situations using indexes can improve performance.

Pagination vs Infinite Scroll: Beyond the Limits of OFFSET for Efficient Data Delivery

When displaying large amounts of data in segments, commonly used OFFSET-based queries experience severe performance degradation as pages go further back. This is because the database must scan through data equivalent to the OFFSET value before returning the desired results. To solve this, backends implement improvements using approaches like cursor-based pagination or ID-based range queries. We'll structurally explore not only the UX differences between pagination and infinite scroll, but also the evolution of query strategies for performance optimization.

Post-Comment Relationships and Transaction Handling

In JPA, when establishing relationships between entities (such as Post-Comment), changes can be automatically reflected in the database at transaction commit time through Dirty Checking. Additionally, we'll structurally learn strategies for stable data processing along with relationship configuration, including how to utilize change detection within transactions and how to define the scope of a single unit of work.

How to Use Git: Beyond Simple Commands to Strategies for Collaboration and Stability

Git is the most widely used version control tool by developers, but it goes beyond simply storing code to play a key role in collaboration and quality management. When working alone, basic commands like commit, push, and pull may seem sufficient, but in team development, a more structured approach is needed, including branching strategies and commit history management.

In real-world work environments, Git is used to organize code review workflows, ensure deployment stability, and establish a foundation for parallel work among team members. When Git is utilized properly, it reduces confusion that can arise during collaboration and increases development productivity.

We'll cover not only the basic usage, but also commonly used branching strategies and workflows in practice.


Integrating GitHub Actions with AWS SSM: Secure and Convenient Authentication via OIDC

One of the concerns when accessing cloud resources in a CI/CD pipeline is the authentication method. Previously, it was common to register AWS IAM user keys in GitHub Secrets, but this comes with the burden of periodic key rotation and the risk of exposure.

By utilizing OIDC (OpenID Connect) supported by GitHub Actions, you can securely access AWS resources without IAM user keys. This method works by having AWS verify tokens issued by GitHub and then grant temporary permissions, allowing you to achieve both security and convenience without the need for separate key management.

We'll explore the structure of GitHub Actions and AWS OIDC integration, and learn how to apply it in practice with specific configuration methods.

Notes Before Taking the Course

🛠 Tools and Environment

  • IntelliJ

  • Java 21

  • Spring Boot 3.4.4

  • MySQL (Docker)

  • AWS (EC2, RDS, IAM, SSM)


  • AWS will be used with the free tier (no additional cost).

  • Git, Github

  • Github Actions

Learning Materials

  • We provide PDFs so you can review the lectures.

Recommended for
these people

Who is this course right for?

  • Job seeker

  • Someone preparing to become a backend developer

  • For those who want to experience backend server development from scratch to deployment firsthand

  • For those who want to know the precautions and solutions when developing backend services

Need to know before starting?

  • Java intermediate level or above

  • It's okay if you're not familiar with Spring and Spring JPA. We'll cover them together in the course.

Hello
This is

489

Learners

20

Reviews

25

Answers

5.0

Rating

3

Courses

I have worked as a developer at Kakao and SK,
designing and operating various backend systems in real-world service environments.

I am creating knowledge-sharing content with the hope that the trial and error and the concerns I have experienced
can save even a little bit of the students' time and help with their choices.

If you have any comments or suggestions for improvement regarding the content,
please feel free to reach out to the email address below at any time.
I look forward to your honest feedback. Thank you.
apiece.dev.ai@gmail.com

Curriculum

All

59 lectures ∙ (8hr 10min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

14 reviews

4.9

14 reviews

  • s1121238291님의 프로필 이미지
    s1121238291

    Reviews 74

    Average Rating 4.9

    5

    100% enrolled

    • syhan75162629님의 프로필 이미지
      syhan75162629

      Reviews 16

      Average Rating 5.0

      5

      31% enrolled

      • boogiewooki님의 프로필 이미지
        boogiewooki

        Reviews 3

        Average Rating 5.0

        Edited

        5

        100% enrolled

        • ahdqh010258님의 프로필 이미지
          ahdqh010258

          Reviews 2

          Average Rating 5.0

          5

          100% enrolled

          • bobopro님의 프로필 이미지
            bobopro

            Reviews 2

            Average Rating 5.0

            5

            31% enrolled

            $42.90

            apiece's other courses

            Check out other courses by the instructor!

            Similar courses

            Explore other courses in the same field!