단순 CRUD는 그만!
웹 백엔드 시스템 구현 (Spring Boot)
CRUD와 MVC밖에 몰랐던 주니어를 위해
자바 웹 백엔드 전문가 2인과 당신의 특별한 5주
라이브 클래스 일정
-
라이브 클래스 기간2월 9일(목) ~ 3월 9일(목), 5주간
-
온라인 세션매주 목요일 저녁 20시 30분 (1~2시간)
-
준비물개인 노트북 (Windows,MacOS 상관없음)
-
사용 프로그램깃헙, 프로그래머스 스쿨, 줌
라이브 클래스 미리 보기
각 주차별 학습 내용과 미션 소개 및 리더들의 코드 리뷰를 살펴 볼 수 있어요.
2주 차와 5주 차는 난이도가 있으니 예습은 필수라고 합니다.
누가들으면
좋을까요?
-
단순한 웹 개발 업무만 담당하던 분
짧게 학원만 다니고 어찌저찌 실무에 투입된 뒤 계속 헤매는 분, 단순 CRUD, 소위 말하는 '업무중심 개발'에 갇혀 실력 향상이 어려운 분께 추천해요.
-
백엔드의 전체를 내려다보고 싶은 분
단순한 학습을 위해 서버 한 대만 두고 실습하는게 아닌,
실무의 기본적인 분산 시스템 기술도 함께 배우며 거시적 관점을 키워요.
사전 필요 지식
및 예습 가이드
- Java, Spring에 대한 기본 이해는 무조건 필수
- spring-boot / spring-web-mvc / spring-jdbcJdbc Template
- 기본적인 SQL 작성능력, join 정도는 쓸 수 있어야 함
- Spring Security에 대해 둘러보고 오기
- Kafka에 대해 둘러보고 오기
예습 사항
Java, Spring은 알지만 다른 키워드는 잘 모르겠거나, 학원 등에서 미리 세팅해준 프로젝트 없이는 뭔가 시작하지 못하는 수준이라면 아래의 추천 도서를 예습해오는 것을 권장합니다.
-
Maven
프로젝트 빌드 도구로 Maven을 사용합니다. Maven에 대해 깊이 알 필요는 없지만 어느정도 쓸 수는 있어야 라이브 클래스를 따라가는데 문제가 없습니다. Maven에 대한 기본적인 내용은 여기에서 확인 해보고 참여해주세요.
-
IDE
IntelliJ를 사용하고, Community 버전을 사용해도 상관없습니다. 만약 본인이 Eclipse 유저라면 그대로 써도 상관이 없습니다. 본인이 익숙한 IDE를 쓰세요.
IntelliJ, Eclipse 에서 Github 연동방법, Maven 프로젝트를 다루는 방법 등을 알아두시면 라이브 클래스를 진행하는데 도움이 됩니다. 아래 유투브 링크도 참고하시고, 부족하다면 IntelliJ와 Maven, Spring Boot 같은 키워드로 검색해보면 많은 자료를 쉽게 찾을 수 있습니다.
-
REST API 클라이언트 활용하기
라이브 클래스에서는 REST API 클라이언트로 Postman를 사용합니다. 다른 REST API 클라이언트로 Insomnia도 많이 사용합니다. 본인이 익숙한 도구를 선택하세요.
참고 자료
그 외에 아래의 것들도 참고하면 많이 도움이 됩니다. 참고자료로 활용할 수 있도록 좋은 내용을 공유해주신 개발자분들께 감사드립니다.
-
Spring Security
- Spring Security의 요청 처리 절차 by 신관영
- Spring Security의 자원 접근 판단에 대한 설명 by 메이킹러
- 스프링 시큐리티 구조 이해 by 최범균
- Spring Framework - Spring Security by Dzmitry Naskou
-
HTTP Session
- HTTP Session 이란? by 전성균
-
JWT
- JWT에 대해서 by Outsider
- JSON Web token 소개 및 구조 by Velopert
- JWT 공식 웹사이트
-
Swagger
- Spring REST API에 Swagger 2 설정하기 by 스프링부트는 사랑입니다
- Spring REST API 문서를 Swagger로 만들자 by 와이케이
- Spring REST Docs API 문서를 자동화 해보자 by Yun
-
Spring에서 Validation
- Java 와 Spring 의 Validation by 송정훈
-
AWS S3
-
예외처리 가이드
- Exception 처리 by benelog
- Java 예외(Exception) 처리에 대한 작은 생각 by Nextree
- Exception(예외)를 처리하는 좋은 방법이 뭘까? by 뽕
실무 웹 개발 팀처럼
움직이는 라이브 클래스!
여러분이 어떤 회사를 가던, 특수 케이스를 제외하고는
이미 운영 중인 서비스나 개발하고 있는 기능을 토대로 뭔가를 담당하게 될 것입니다.
이미 만들어져있는 소스코드를 읽고 이해하고, 결함이 있으면 빠르게 잡아내고,
직접 기여할 수 있는 주니어 개발자가 현재 시장에는 너무나도 절실합니다.
하지만 경험이 부족한 주니어가 그런 역량을 스스로 갖추긴 힘듭니다.
그 힘듦을 알기에, 여러분의 성장에 기여하고자 우리 라이브 클래스는 이렇게 진행합니다.
-
01.
리더와 기수 동료들 전체가
나의 개발팀이라고 가정한다. -
02.
프론트엔드는 다 개발되었고, 백엔드 개발자(당신!)에게 기능 개발 업무가 넘어온 상황을 가정하며 시작한다.
-
03.
실제 실무에서 개발할 때 고민하고
사용하는 기술들을 미션으로 할당한다. -
04.
상호 정기적 코드 리뷰를 진행하며
기능을 완성해 나간다.
라이브 클래스 리더
Harry & Jackson

Harry, 해리
현) 핀테크 서비스 백엔드 팀장Java, Spring 실무 경험, 강의 경력 다수
전) 글로벌 스타트업 소프트웨어 엔지니어
전) 국내 Top 통신사 플랫폼 엔지니어

Jackson, 잭슨
현) 핀테크 서비스 백엔드 개발자전) 인터넷 은행 백엔드 개발자
전) 게임개발사 플랫폼 엔지니어
선배 개발자가
이 라이브 클래스를 강력히 추천합니다.
“더 크게 성장하기 위한
토대를 만들어주는 라이브 클래스”

먼저 개발자로서의 길을 가보았고 실무의 흐름을 읽을 수 있는 선배 개발자가 옆에서 리드해준다면 훨씬 더 수월하게 성장할 수 있어요. 라이브 클래스 미션들이 군더더기가 없고 알맹이로만 탄탄히 구성되어 있어서 추천하고 싶고, 더 크게 성장해나가기 위한 중요한 토대를 단단히 쌓을 수 있게 될겁니다.
“실력 향상과 만족스러운 코드를
작성하고 싶은 분들을 위한 라이브 클래스”

다들 나름대로 공부 열심히 하셨었지요? 그런데 말로는 배운걸 설명해도, 막상 적용하려면 늘 괴리가 있기 마련입니다. 이럴 때는 선배 개발자들이 하는걸 보고 흉내내는 것 만으로도 실력이 향상될 수 있습니다. 이 라이브 클래스를 통해 미션을 해결해나가고, 피드백을 받다보면 점차 만족스러운 코드를 작성하는 나를 발견하게 될 것이라 확신해요.
주차별 미션
살펴보기
-
Chapter 1.
내 손으로 직접 Maven 기반 Spring Boot 프로젝트 셋업하기
1주차 미션 핵심- Spring 주요 개념 (이미 알아도 다시)제대로 짚고 가기
- Spring Boot 개론(Spring 3.* 버전만 사용해본 경우, 필수 내용)
- Maven 프로젝트 직접 세팅
IDE는 IntelliJ, Eclipse 둘 중 본인이 편한 것을 써도 된다. 또한, 프로젝트 셋업은 모두 준비된 것을 주어주지 않는다. 앞으로의 미션 수행을 위해 직접 세팅하는 것 이 중요하다. 매번 누가 던져준 환경에서만 개발해본 경우에는 꼭 초반에 셋업 부분을 제대로 이해하고 넘어가야 한다.
온라인 세션 : 2월 9일(목) 20:30 ~ (약 2시간 소요) -
Chapter 2.
인증과 인가(Authentication and Authorization)
2주차 미션 핵심- Spring Security를 활용한 인증(Authentication)
- 서비스 확장 시 Session 기반 사용자 인증의 문제점 알기
- 장애 대응을 위한 분산서비스 구조
- Stateless 아키텍처와 JWT(JSON Web Token)
우리는 보통 웹 백엔드 공부를 시작할 때, 쿠키나 세션을 통한 인증 처리 위주로 배우곤 한다. 그런데 실무에선 서비스가 커지면서 이용자가 많아지면 세션이 무척 바빠지면서 서버가 뻗을 수 있다. 세션 없이, 클라이언트의 상태를 저장하며 서비스 안정성을 취할 방법이 없을까? 여기에 대한 답을 찾아보는 시간.
온라인 세션 : 2월 16일(목) 20:30 ~ -
Chapter 3.
비즈니스 로직 처리 (1)
3주차 미션 핵심- API 문서 자동화를 위한 Swagger
- 비즈니스 로직 개발 시 주의할 점
- 비즈니스 로직 개발(포스팅 관련 기능 구현)
왜 API 문서를 굳이 만들어야 하는걸까? 안그래도 할 일 많은데…가 아니라, 실무에서 프론트엔드 개발자와 백엔드 개발자의 소통을 위해 반드시 신경써야 할 부분이다. API가 한 두개가 아니고, 계속 변하니까 더욱 문서화는 중요하다. 3주에는 포스트(post) 기능을 위해 필요한 API를 구현하며 문서화 부분까지 챙겨보자. 나 혼자 읽을 소장용 문서가 아니라, 다른 개발자가 읽을거라고 가정하고!
온라인 세션 : 2월 23일(목) 20:30 ~ -
Chapter 4.
비즈니스 로직 처리 (2)
4주차 미션 핵심- 예외처리 가이드
- AWS S3 연동하기
- CompletableFuture 비동기 처리
- 비즈니스 로직 개발(포스팅 댓글 관련 기능 구현)
코멘트 추가, 코멘트 목록 조회 REST API를 구현한다. 이 과정에서 AWS S3에 파일 업로드 기능과 AWS SecretKey 같은 민감 데이터 노출을 방지하기 위해 jasypt 라이브러리를 활용하는 방법을 알아본다.
온라인 세션 : 3월 2일(목) 20:30 ~ -
Chapter 5.
마이크로서비스 (Microservice)
5주차 미션 핵심- 도메인 이벤트
- 이벤트 시스템
- Apache Kafka
- 댓글 알림 기능 구현
보너스 라이브코딩 영상 콘텐츠
도메인 이벤트를 정의해보고 이벤트 시스템을 이용해서 해당 도메인 이벤트를 처리해 봅니다. 그리고 마이크로 서비스 환경에서 이벤트 기반으로 서비스가 반응적으로 동작하게 구성해봅니다. 이때 분산 메시징 시스템인 Apache Kafka를 다룹니다. 마지막 주차 미션은 조금 무거우니, 끝까지 집중!
온라인 세션 : 3월 9일(목) 20:30 ~
라이브 클래스는
온라인 세션으로
진행되요
더 많은 내용을 수강생들에게 알려드리기 위해, 일주일에 1~2시간 정도 동시접속하여필요한 개념에 대해 리더의 설명을 듣고, 실습을 하면서 궁금했던 점을 질문하는 시간입니다.
수강생 후기
라이브 클래스 주제와 리더에 대한 솔직한 후기를 참고하세요
라이브 클래스 참여비
단순 CRUD는 그만!
웹 백엔드 시스템 구현(Spring Boot)
실무 간접체험형 미션과 코드리뷰를 함께해요!
-
정가450,000 원