Skip to content

우아한테크코스에서 공부한 과정을 기록한 저장소입니다.

Notifications You must be signed in to change notification settings

Mingyum-Kim/woowacourse-archive

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 

Repository files navigation

우아한테크코스 기록

💘 활동 기간

프리코스 : 2023.10.19 ~ 2023.11.15
본과정 : 2024.02.13 ~ 2024.11.29

💗 Soft Skill

지속 가능한 성장을 위한 마인드셋 가꾸기.

미션 이름 레벨 주제
✒ 글쓰기 미션 레벨 1 타인과의 비교를 벗어나 '나'에 집중하기
레벨 2 자아실현의 욕구 단계로의 도약
레벨 3 협업을 잘하기 위한 대화법

✏ 활동 기록

⭐ Team Project in Level3 ~ Level4 ⭐

모여봐요 우리들의 다락방, 모우다 🏡
회사나 학교 등의 단체 내에서 모임을 만들고 참여할 수 있는 커뮤니티 서비스입니다.
👉 서비스 링크 👉 Repository 👉 프로젝트 소개

4️⃣ Level4

⭐ Keyword : Feeback Service, Maintenance
개발한 서비스를 운영하고 유지보수하는 경험을 한다.
가용성을 고려해 아키텍처를 설계한다.
사용자에게 피드백을 받고 서비스를 개선한다.
Tomcat, MVC, JDBC를 직접 만들어본다. DB 복제와 캐시를 학습한다.
Sprint Period Functions
6차 스프린트 2024-09-30 ~ 2024-11-01 - 사용자 유치를 위한 서비스 고도화
- 사용자 인증 구현
- 로그인 방식 변경으로 인한 재가입 유도
- 무중단 배포
- 사용자 프로필 조회와 이미지 업로드
- 프로메테우스와 그라파나를 사용한 모니터링 시스템 구축
5차 스프린트 2024-09-03 ~ 2024-09-27 - 사용자 피드백 반영
- 데이터베이스 인덱스 적용
- 서비스 내 모든 쿼리 분석
- 비즈니스 레이어와 구현 레이어를 분리하여 가독성 개선
⭐ Keyword : Tomcat, MVC, JDBC, DB Replication, Cache

레벨 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️⃣ Level 3

⭐ Keyword : Team Project, Service Development
함께 서비스를 개발하고 운영하는 경험을 한다.
레벨 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 글쓰기

2️⃣ Level2

⭐ Keyword : Spring Boot, JPA, HTTP, Authorization, Third-Party API, Infra
웹 애플리케이션을 개발하며 웹 백엔드 개발자의 기본 역량을 쌓는다.
주어진 요구사항에 맞춰 기능을 추가/변경하며 애플리케이션을 발전시켜 나간다.
클라우드 환경에 배포를 하여 사용자에게 서비스할 수 있는 최소한의 상태로 만든다.
웹 애플리케이션 구현을 위해 필요한 새로운 기술을 학습한다.
이 과정에서 효과적으로 새로운 기술을 익힐 수 있는 본인만의 학습 방법을 찾는 시도를 한다.
웹 프로그래밍 과정에서도 읽기 좋은 코드, 유지보수하기 좋은 코드를 작성하는 경험을 한다.
미션 이름 학습 키워드 미션 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 문서 자동화 및 배포

1️⃣ Level1

⭐ Keyword : Java, OOP, CleanCode, TDD, UnitTest, DB
학습 내용
- 자바 프로그래밍 언어에 대한 핵심 개념을 익혀 프로그래밍한다.
- 읽기 좋은 코드를 구현하는 것이 왜 중요한지 이해하고 코드를 개선해 읽기 좋은 코드로 변경한다.
- 자신이 구현한 코드에 대해 단위 테스트와 리팩토링을 경험한다.
- 데이터베이스를 활용한 콘솔 애플리케이션을 개발한다.
미션 이름 학습 키워드 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

0️⃣ Level0

우아한테크코스에 입과하기 위한 프리코스 과정입니다.

우아한테크코스 입과 과정 기록

미션 이름 기간 미션 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 회고

About

우아한테크코스에서 공부한 과정을 기록한 저장소입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages