프리코스 : 2023.10.19 ~ 2023.11.15
본과정 : 2024.02.13 ~ 2024.11.29
지속 가능한 성장을 위한 마인드셋 가꾸기.
미션 이름 | 레벨 | 주제 |
---|---|---|
✒ 글쓰기 미션 | 레벨 1 | 타인과의 비교를 벗어나 '나'에 집중하기 |
레벨 2 | 자아실현의 욕구 단계로의 도약 | |
레벨 3 | 협업을 잘하기 위한 대화법 |
모여봐요 우리들의 다락방, 모우다 🏡
회사나 학교 등의 단체 내에서 모임을 만들고 참여할 수 있는 커뮤니티 서비스입니다.
👉 서비스 링크 👉 Repository 👉 프로젝트 소개
개발한 서비스를 운영하고 유지보수하는 경험을 한다.
가용성을 고려해 아키텍처를 설계한다.
사용자에게 피드백을 받고 서비스를 개선한다.
Tomcat, MVC, JDBC를 직접 만들어본다. DB 복제와 캐시를 학습한다.
Sprint | Period | Functions |
---|---|---|
6차 스프린트 | 2024-09-30 ~ 2024-11-01 |
- 사용자 유치를 위한 서비스 고도화 - 사용자 인증 구현 - 로그인 방식 변경으로 인한 재가입 유도 - 무중단 배포 - 사용자 프로필 조회와 이미지 업로드 - 프로메테우스와 그라파나를 사용한 모니터링 시스템 구축 |
5차 스프린트 | 2024-09-03 ~ 2024-09-27 |
- 사용자 피드백 반영 - 데이터베이스 인덱스 적용 - 서비스 내 모든 쿼리 분석 - 비즈니스 레이어와 구현 레이어를 분리하여 가독성 개선 |
레벨 4는 팀 프로젝트와 미션을 병행하였습니다.
미션 이름 | 학습 키워드 | 미션 PR |
---|---|---|
Tomcat 구현하기 | WAS, HTTP, Cookie & Session, Thread | [1-2단계] HTTP 요청과 응답을 처리하는 WAS 구현 |
[3단계] WAS / HTTP / 비즈니스 코드 분리 | ||
[4단계] 스레드 풀 설정과 스레드 안정성 | ||
MVC 프레임워크 구현하기 | MVC, Reflection, IoC와 DI, Servlet, Servlet Container | [1단계] MVC 프레임워크 구현하기 |
[2단계] 어노테이션 기반 컨트롤러 매핑 | ||
[3단계] 컨트롤러에서 객체 반환 시 JSON으로 응답하기 위한 JsonView | ||
JDBC 라이브러리 구현하기 | DB 커넥션 풀, Transaction, AOP | [1단계] JdbcTemplate 구현 |
[2단계] JdbcTemplate 코드 리팩토링 | ||
[3단계] 트랜잭션 커밋 롤백 구현 | ||
[4단계] 트랜잭션 동기화로 트랜잭션 코드를 비즈니스 로직과 분리 | ||
인프라 아키텍처 설계 | 요구사항에 맞추어 쇼핑몰 인프라 아키텍처 설계 | 요구사항과 아키텍처 설계 |
DB 복제와 캐시 | 복제 지연, 캐시, 잠금 | [1단계] 데이터베이스 분리로 인한 복제 지연 해결 |
[2단계] 캐시를 사용한 쿠폰 조회 성능 개선 |
📝 레벨 4 글쓰기
함께 서비스를 개발하고 운영하는 경험을 한다.
레벨 3에서 서비스를 기획하고 개발하는 것을 목표로 한다.
Sprint | Period | Functions |
---|---|---|
4차 스프린트 | 2024-08-10 ~ 2024-08-23 |
- FCM을 사용한 알림 구현 - 도메인 주소 생성과 HTTPS 적용 - 프로덕션 환경 구축과 CI/CD 중복 모임 참여 문제 해결 |
3차 스프린트 | 2024-07-27 ~ 2024-08-09 |
- Logback을 사용한 애플리케이션 로깅 -Swagger를 사용한 API 문서화 -모임 구성원 간의 채팅 기능 구현 - CloudWatch를 사용한 모니터링 대시보드 구축 |
2차 스프린트 | 2024-07-13 ~ 2024-07-26 |
- 서비스 MVP 개발 - Github Actions를 사용한 CI/CD - Docker를 사용한 개발 서버 배포 |
1차 스프린트 | 2024-07-02 ~ 2024-07-12 |
- 서비스 기획 - 개발(코드 컨벤션 등) 문서 -기술 스택 선택 및 이유 -Git 컨벤션 |
📝 레벨 3 글쓰기
웹 애플리케이션을 개발하며 웹 백엔드 개발자의 기본 역량을 쌓는다.
주어진 요구사항에 맞춰 기능을 추가/변경하며 애플리케이션을 발전시켜 나간다.
클라우드 환경에 배포를 하여 사용자에게 서비스할 수 있는 최소한의 상태로 만든다.
웹 애플리케이션 구현을 위해 필요한 새로운 기술을 학습한다.
이 과정에서 효과적으로 새로운 기술을 익힐 수 있는 본인만의 학습 방법을 찾는 시도를 한다.
웹 프로그래밍 과정에서도 읽기 좋은 코드, 유지보수하기 좋은 코드를 작성하는 경험을 한다.
미션 이름 | 학습 키워드 | 미션 PR |
---|---|---|
방탈출 예약 관리 | SpringBoot Application 실행하기 | [1-3단계] API 생성하기 |
[4-9단계] Spring Bean과 Layered Architecture | ||
[10단계] 뷰를 추가하여 재사용 가능한 코드 만들기 | ||
방탈출 사용자 예약 | 기능 추가에 대한 애플리케이션 발전 | [1-3단계] 예외 처리 및 새로운 기능 추가 |
[4-6단계] 사용자 인증 인가 | ||
방탈출 예약 대기 | JPA 사용 및 레이어 테스트 | [1-2단계] JDBC에서 JPA로 전환 및 연관관계 설정 |
[3-4단계] 엔티티 설계와 서비스 테스트 | ||
방탈출 결제 및 배포 | Third-Party API 도입과 테스트 | [1단계] RestClient를 사용해 토스 결제 구현 |
[2-4단계] 결제 정보 저장에 따른 ERD 설계, API 문서 자동화 및 배포 |
학습 내용
- 자바 프로그래밍 언어에 대한 핵심 개념을 익혀 프로그래밍한다.
- 읽기 좋은 코드를 구현하는 것이 왜 중요한지 이해하고 코드를 개선해 읽기 좋은 코드로 변경한다.
- 자신이 구현한 코드에 대해 단위 테스트와 리팩토링을 경험한다.
- 데이터베이스를 활용한 콘솔 애플리케이션을 개발한다.
미션 이름 | 학습 키워드 | Step | 기간 | 미션 PR | 회고 URL |
---|---|---|---|---|---|
🚗자동차 경주 | 단위 테스트 | Step1 | 2024.02.13 ~ 02.15 | PR | 회고 |
Step2 | 2024.02.16 ~ 02.19 | PR | 회고 | ||
⛑ 사다리 타기 | TDD | Step1 | 2024.02.20 ~ 02.22 | PR | 회고 |
Step2 | 2024.02.23 ~ 03.04 | PR | 회고 | ||
🃏 블랙잭 | Clean Code | Step1 | 2024.03.05 ~ 03.08 | PR | 회고 |
Step2 | 2024.03.09 ~ 03.18 | PR | |||
♟ 체스 미션 | OOP, DB | Step1 | 2024.03.19 ~ 03.21 | PR | |
Step2 | 2024.03.22 ~ 04.01 | PR |
우아한테크코스에 입과하기 위한 프리코스 과정입니다.
미션 이름 | 기간 | 미션 PR | 회고 URL |
---|---|---|---|
⚾ 숫자 야구 게임 | 2023.10.19 ~ 10.26 | PR | 회고 |
🚗 자동차 경주 | 2023.10.26 ~ 11.02 | PR | 회고 |
💸로또 게임 | 2023.11.02 ~ 11.09 | PR | 회고 |
🎄 크리스마스 프로모션 | 2023.11.09 ~ 11.16 | PR | 회고 |
📞 온콜 (최종 코딩테스트) | 2023.12.16 | PR | 회고 |