미리보기
기본 정보
기술 스택
Java, Spring Boot, JavaScript, DBMS/RDBMS, NoSQL
경력
시드웨일
계약사원 | 개발팀
마켓컬리 CMS 프로젝트
- 고도물로 운영되던 백오피스를 React 사이트로 리뉴얼하는 프로젝트 참여
프로젝트
타임딜 주문 API 서버
개인
2023.04. ~ 2023.08.
- 복잡한 기술(예 : 분산락, 트랜잭션, Join) 대신 아이디어로 문제를 해결
- 분산락 대신 구조와 로직 변경으로 재고 차감에 대한 동시성 문제 해결(wiki)
- 분산락 대신 구조와 로직 변경으로 재고에 따라 상품의 상태 변경에 대한 동시성 문제 해결(#81)
- 비정규화와 컬럼명 변경을 활용하여, 트랜잭션 또는 Join 등이 필요한 테이블 구조를 트랜잭션 또는 Join 등이 필요없는 로직 및 테이블 구조 단순화(wiki)
- 유지보수성을 고려한 코드
- DI를 활용하여 인증 로직 구현(#171)
- RedisUtils 클래스를 만들어서 Redis의 key를 한 곳에서 응집력있게 관리 (#153)
- 재고증가/감소 및 재고 히스토리 저장 로직을 응집력 있게 묶어서 관리(#158)
- 테스트 코드 작성
- API 개발시 TDD 부분적으로 적용(주문 사전 저장 API, 주문 승인 API, 딜 상품 목록 조회 API, 딜 상품 상세보기 API)
- 복잡한 로직을 테스트 코드로 문서화하기 위해 서비스 클래스에서 도메인 모델로 비즈니스 로직 책임 변경(#167)
- fixture와 함수를 활용한 테스트 코드 리팩토링(#146)
- 대규모 트래픽을 고려한 시스템 설계
- AWS ELB, Auto Scaling, 서버 및 DB 이중화로 대규모 트래픽을 고려한 서버 구축
- 고가용성을 위해 Redis 인스턴스의 Fault Tolerance를 고려한 Dual-write 전략(wiki)
자기소개
ㄴㄴ