필터 1
코드 품질 개선 기법 27편: 티끌이 모여 태산이 되듯 의존성도 쌓이면
라인
아키텍처

코드 품질 개선 기법 27편: 티끌이 모여 태산이 되듯 의존성도 쌓이면

의존성 주입은 모든 곳에 적용할수록 좋은 것이 아니라 목적이 분명할 때만 쓰는 것이 중요하다고 설명했습니다. 단순 유틸리티나 모델은 내부 생성으로 단순화하고, 주입은 라이프사이클 관리나 구현 전환에 한정할 것을 제안했습니다.

#Kotlin#의존성 주입
9600
여기어때
백엔드

Coroutine Async 로 지도보기 API 성능 개선하기

지도보기 API의 병목이던 표준 상품 API 호출을 동적 window 분할과 Coroutine Async로 병렬화했습니다. 그 결과 응답 시간을 8~10초에서 약 2초로 줄이고 TPS도 크게 개선했습니다.

#Kotlin#Coroutine
14100
여기어때
백엔드

전시 도메인에 Kotlin DSL적용하기

숙박 전시 도메인의 복잡한 노출 로직을 Kotlin DSL로 표현한 적용 사례를 소개했습니다. 가독성은 좋아졌지만 내부 구현 복잡도와 팀의 러닝 커브가 커지는 트레이드오프도 있었습니다.

#Kotlin#DSL
7700
여기어때
백엔드

PLP 최저가 계산 최적화: 정말 모든 객실을 계산해야 할까?

PLP 최저가 계산에서 모든 객실을 끝까지 계산하던 방식을 가지치기로 줄인 사례를 소개했습니다. 계산량은 크게 줄었지만 실제 성능 개선은 DB 조회 비용 때문에 제한적이었습니다.

#Kotlin#성능
4100
여기어때
프론트엔드

제휴점 목록/지도 통합기: 26배 폭증한 비용부터 아키텍처 최적화까지

목록과 지도를 하나의 화면으로 통합하며 비용 폭증과 구조 비대화 문제를 함께 다뤘습니다. Lazy Load, StateHolder, 거리 기반 클러스터링, 커스텀 바텀시트로 개선했습니다.

#Android#Kotlin
6400
마이리얼트립
AI

AICX: 수작업의 한계를 넘다. AI 기반 여행 상품 운영 자동화 구축기

여행 상품 운영의 수작업 과정을 AI로 자동화한 구축 사례를 소개했습니다. 데이터 통합, 카테고리 매칭, 번역, 적재 최적화와 프롬프트 개선 과정을 다뤘습니다.

#LLM#prompt
7400
우아한 형제들
AI

AI와 함께하는 테스트 자동화: 플러그인 개발기

테스트 코드 자동화를 위해 IntelliJ 플러그인과 Amazon Q를 결합한 개발 과정을 다뤘습니다. 컴파일 보장 템플릿과 역할 분담으로 커버리지와 작업 효율을 높였습니다.

#test#자동화
4100
코드 품질 개선 기법 24편: 유산의 가치
라인
아키텍처

코드 품질 개선 기법 24편: 유산의 가치

테마처럼 값만 다른 경우에는 상속보다 값 객체로 표현하는 편이 더 간결하다고 정리했습니다. Kotlin의 비상속 클래스 특성을 활용해 동적 변경 가능성과 불필요한 로직을 줄이는 방법을 제안했습니다.

#Kotlin#refactoring
8600
코드 품질 개선 기법 23편: 반환의 끝이 에지 케이스의 끝
라인
기타

코드 품질 개선 기법 23편: 반환의 끝이 에지 케이스의 끝

조기 반환은 유용하지만, 에러와 정상 케이스를 통합할 수 있으면 더 단순한 코드가 됩니다. 빈 컬렉션, null, 범위 밖 인덱스, 연속 예외 처리를 기준으로 판단하는 방법을 소개했습니다.

#refactoring#Kotlin
7700
Pushsphere: LINE 메신저의 빠르고 신뢰할 수 있는 대량 푸시 알림 비법
라인
아키텍처

Pushsphere: LINE 메신저의 빠르고 신뢰할 수 있는 대량 푸시 알림 비법

LINE 메신저의 대량 푸시 알림을 안정적으로 보내기 위해 Pushsphere를 설계하고 도입했습니다. 재시도, 할당량, 엔드포인트 상태를 함께 고려해 도달률과 운영 안정성을 높였습니다.

#Kotlin#Kubernetes
15600
SDUI의 성능 병목을 넘어: 올리브영 로컬 캐시 기반 백엔드 최적화 성공기
올리브영
백엔드

SDUI의 성능 병목을 넘어: 올리브영 로컬 캐시 기반 백엔드 최적화 성공기

SDUI의 트래픽 병목을 Caffeine과 Redis 이중 캐시로 해결한 사례를 소개했습니다. 백오피스 즉시 무효화와 프리워밍으로 1ms 미만 응답 성능을 확보했습니다.

#Kotlin#Spring Boot
23600
코드 품질 개선 기법 22편: To equal, or not to equal
라인
백엔드

코드 품질 개선 기법 22편: To equal, or not to equal

`equals`를 일부 속성만으로 정의하면 예상치 못한 버그가 생길 수 있음을 설명했습니다. 동일성인지 등가성인지 목적을 먼저 정하고, 필요한 부분은 별도 함수로 분리해야 합니다.

#Kotlin#equals
10300
카카오뱅크
백엔드

만능도구는 없다, 적절한 선택은 있다: Spring Statemachine으로 완성한 알림 2.0

Spring Statemachine으로 알림 시스템의 상태 관리를 체계화한 사례를 다뤘습니다. 직접 구현과 프레임워크 도입의 장단점, TTL 관리 같은 주의점도 함께 정리했습니다.

#Spring Boot#Redis
2800
우아한 형제들
백엔드

코드 리뷰 봇으로 시작된 팀 문화의 변화

코드 리뷰 봇으로 개인별 미처리 MR을 알려주고 리뷰어를 자동 배정해 리뷰 지연을 줄였습니다. 이후 휴가자 알림, 스크럼 문서, 온콜 관리까지 확장하며 팀 문화를 개선했습니다.

#Kotlin#Spring Boot
14000