전체 글

테스트코드

직접 Stub 객체 만들어서 유연한 테스트 코드 작성하기

Mockk 등의 라이브러리 대신 직접 Stub 객체를 만들어서 테스트 코드를 개선한 경험을 공유하고자 한다. 참고로 지정한 응답을 주는 객체를 의미한다. 기존 레거시 코드를 리팩토링 하기 전에 앞서 단위 테스트를 먼저 작성하고 있었고, 이때 의존성을 테스트 대역으로 대체했다. 테스트 코드를 작성하다 보니 애매한 부분이 생겼다. 테스트하려는 코드는 대략 이런 느낌이었고, 다양한 상황을 세팅하고 getUsableCoupons를 호출했을 때 적절한 쿠폰이 반환되는지를 확인하려고 했다. @Service class CouponService( // ... private val couponRepository: CouponRepository ) { fun getUsableCoupons(): List { // ... v..

트러블슈팅

[트러블슈팅] IntelliJ Gradle Background Tasks 멈추는 문제 해결하기

1. 개요 IntelliJ에서 gradle build를 수행했는데, 다음과 같이 background task가 멈추는 상황이 발생했다. 2. 해결 다음과 같은 방법을 시도했으나 모두 실패했다. 계속 기다려보기 브랜치 바꿔서 빌드해보기 IntelliJ Repair IDE 실행 PC 재부팅 IntelliJ 최신 버전으로 업그레이드 최후의 수단으로 로컬 터미널에서 직접 빌드해보니 "IDLE"이라는 메시지를 확인할 수 있었다. 뭔가 gradle 프로세스가 유휴상태에 빠진 것으로 보여서 공식 문서에 "gradle IDLE"이라고 검색해본 결과, gradle 대몬 프로세스가 문제인 것을 파악할 수 있었다. jps 명령어를 통해 대몬 프로세스의 PID를 찾아내고, kill -9 PID 명령어를 통해 프로세스를 제거했..

회고

[회고] 2023년 회고

작년 이맘때쯤 2022년 회고를 올렸었는데 벌써 2023년 회고를 올릴 때가 되었다. 처음에 회고는 2023년 마지막 주에 올릴 예정이었지만 올해 진행했던 프로젝트를 완전히 마무리하고 올리고 싶어서 부득이하게 며칠 미뤘다. 1. 회사 1) 프로젝트 가장 먼저 회사에 관한 이야기를 먼저 하려고 한다. 올 한 해 동안은 '쿠폰적용가' 프로젝트를 계속해서 성장시키고 확장해가는 데 많은 시간을 할애했다. 기존 지마켓 사이트에선 상품 상세 페이지 진입 시 고객이 실제로 할인받을 수 있는 금액에 대한 정보를 확인할 수 없었다. 그와 더불어 쿠폰 다운로드 시 실제로 할인받을 수 있는 금액이 노출되지 않는 것과 쿠폰함에서 최적쿠폰이 자동적으로 선택되지 않는 것 또한 큰 불편요소였다. 쿠폰적용가 프로젝트는 이러한 불편함..

회고

[회고] 지식공유자 데뷔전

개발자라는 직업을 선택하기 전 하고 싶은 직업이 여럿 있었는데 그 중 하나가 선생님이었다. 어렸을 적부터 친구들과 공부하다가 모르는 부분을 서로 알려주는 걸 좋아했었는데 그 영향이 아닐까 싶다. 개발자로 진로를 완전히 정한 후에도 현재 회사에 입사하기 전 면접을 봤던 회사에서 한 임원분이 커리어를 어떻게 이어가고 싶냐고 질문했을 때 사내에서 신입 개발자 교육을 전문으로 하는 사람이 되고 싶다고 막연하게 얘기했었다. 지금 생각하면 부끄럽기도 하지만, 교육이라는 큰 틀 안에서 책을 쓰거나 강의를 만들어보겠다는 꿈은 항상 가지고 있다. 여하튼 회사에 들어오고 나서는 나의 부족함을 매순간 절실히 깨달았고, 지식을 나누긴 커녕 지식의 구멍들을 채우기 위해 노력해왔다. 그렇게 일종의 갈급함을 채워가던 와중, HR쪽..

프로그래밍 언어/Java + Kotlin

[Kotlin] 쿠폰적용가 성능 개선기

1. 개요 지난 5월 지마켓 사이트 내 상품 상세 페이지에 쿠폰적용가(이하 VIP 쿠폰적용가)를 도입했었다. https://dev.gmarket.com/89 G마켓 쿠폰적용가 도입기 - 캐시를 중심으로 안녕하세요. 저는 Club & Discount Engineering 팀에서 지마켓 할인/쿠폰 개발 업무를 맡고 있는 윤영택입니다. 저는 올해 상반기에 G마켓 쿠폰적용가 개발에 참여했으며, 그 과정을 본 포스팅을 통해 나 dev.gmarket.com 사이트 내 쿠폰적용가를 노출하고자 하는 니즈가 늘어나면서 검색 결과 페이지에도 쿠폰적용가(이하 SRP 쿠폰적용가)를 도입하게 되었는데, 프로젝트를 진행하며 병목현상을 제거하여 성능을 향상한 경험을 공유하고자 한다. 기존의 VIP 쿠폰적용가에 비해 SRP 쿠폰적용..

코택
TaxFree