키위스냅 REST API 개발
사용한 기술 Java, Spring Boot, MySQL, JPA, Junit, AWS
A. 카페24, 에이블리, 스마트스토어, 쿠팡, 11번가, 고도몰 등 외부 연동몰에 맞춘 연동 API 개발
1.고객이 입력한 정보를 외부 쇼핑몰에 맞춰 정보 가공 및 외부 API 연동
2.각 외부 쇼핑몰에 따른 상세페이지 변환, 이미지 변환, 동영상 변환
동영상 변환의 경우 처리량이 많아질 시 영상 변환 등록 API응답이 지연되는 현상 발생 → 멀티쓰레드로 병렬처리 하여 기존 평균5분 걸리던 변환속도를 2분 가량으로 단축 시켰습니다.
B. 유료 서비스 API 개발 및 자동화 테스트 구축
1.다양한 서비스의 차감을 담당하는 부분인 만큼 꼼꼼한 테스트코드 작성을 목표로 하였습니다.
2.테스트코드 커버리지는 80%를 목표로 하였고 실제 커버리지는 94%를 달성하였습니다.
3.이후 기존 개발방식에서 테스트코드 작성중 한계를 느껴 개선안 발표 및 테스트코드 작성 발표
C. 정기결제시스템 개발
1.유료 서비스 개발 이후 발표한 개선안을 도입하였습니다.
도메인 계층을 신설한 이후 테스트 작성에 생산성 증가 경험하였습니다.
2.정기 결제 시스템 개발 및 자동화 테스트 구축
Batch성으로 동작하는 코드인 만큼 자동화 테스트를 구성 할 때 기타 다른 팀원분들도 확인 할수있는 테스트코드를 목표로 하였습니다.
EX) @DisplayName을 이용한 테스트 제목 및 주석 작성, BDD스타일에 기반하여 테스트코드 작성
D. API 고도화 작업
1.Mybatis -> JPA 전환 작업
현재 서비스에서 복잡한 통계쿼리 작성보다 간단한 CRUD작업이 훨씬 많은 상황이었습니다.
→ Mybatis에서 JPA와 Spring Data를 도입하여 개발 편리성을 증가하였습니다. 또한 서비스계층에서 DB계층으로의 관심을 끊어내 JPA와 Mybatis를 둘다 사용가능하게끔 하였습니다.
더보기