미리보기
기본 정보

반갑습니다. 백엔드 개발자 김재영입니다. 모두가 기분 좋게 사용할 수 있는 서비스, 누구나 애정할 수 있는 서비스를 만들고 싶습니다.
기술 스택
Kotlin, Java, Spring Boot, Elasticsearch, AWS, MySQL, PostgreSQL, Redis, Kafka
경력
네이버 주식회사
백엔드 개발자 | 네이버 쇼핑 | 재직 중
2024.01. ~ 재직 중 (1년 2개월)
센디
백엔드 개발자 | 제품팀
2021.03. ~ 2024.01. (2년 11개월)
안드로이드 개발 인턴에서 시작해 백엔드 개발자로 전향, 시리즈 pre-A 부터 B 라운드까지 총 175억원의 투자를 유치하는 과정에서 다양한 서버 애플리케이션 개발에 참여했습니다.
프로젝트
백엔드 로깅 시스템 구현
센디
기존에는 서버에 file 형태로 쌓이는 애플리케이션 로그가 전부였습니다.
디버깅이 힘들고 서버로 들어오는 HTTP 요청에 대한 대략적인 모니터링이나 통계가 불가능한 상황이었습니다.
- 각 HTTP 요청에 대한 종합적인 정보(요청-응답 바디, 헤더, 레이턴시 등)를 기록하고 통계, 시각화할 수 있는 기능 개발
- Spring Filter 를 활용하여 정보 집계
- Elasticsearch 에 저장
- Kibana 를 통한 시각화, 통계 수행
- 로그를 전송하는 로직은 별도 스레드로 분리하여 api 레이턴시에 영향을 주지 않도록 구현
- 서버 애플리케이션 로그 탐색 기능 개발
- Filebeat 을 통해 Elasticsearch 로 애플리케이션 로그 저장
- Spring Cloud Sleuth 를 활용하여 각 요청마다 trace ID 를 할당하여 HTTP 로그에 기록, 각 HTTP 로그 마다 해당 요청과 연관된 애플리케이션 로그 탐색이 가능하도록 구현
- 로그 검색 성능 개선
- 로그의 양이 많아져 특정 검색 쿼리가 10초 이상 소요 → 2초로 단축
- 인덱스 매핑 최적화, 샤드 수 조정, 핫-웜 노드 분리, ILM 설정
드라이버 실시간 위치 조회 기능 개발
센디
택시앱처럼 드라이버의 실시간 위치를 제공하는 기능의 백엔드를 개발했습니다.
- 위치 데이터 수집 파이프라인 구축
- AWS Lambda, Kinesis, Elasticsearch
- 실시간 위치 조회 API 구현
- websocket
- 위치 데이터의 오차를 보정하는 솔루션 구현
- Kalman Filter 알고리즘을 코드로 구현하여 기존 파이프라인에 추가
- 실시간 위치 웹링크 공유 기능 구현
- JWT 를 활용하여 인증 구현 및 데이터 변조 방지
포트폴리오
외국어
영어
원어민 수준
자기소개
문제를 해결함에 있어서 기술적 접근을 중요하게 여기면서도, 사용자와 제품을 중심으로 사고하는걸 선호합니다.
좋은 서비스를 만들고 좋은 사용자 경험을 제공하기 위한 과정에서 개발자의 역할은 비즈니스 로직의 정확한 구현이나 고품질의 코드를 작성하는 것뿐만은 아닐 것입니다. 이와 더불어 우리의 서비스를 조금 더 넓은 관점에서 바라보고 문제점을 파악할 수 있는 시각 혹은 그런 노력이 필요합니다. 그리고 이는 비단 디자이너나 프로덕트 매니저만의 역할이 아닌, 기술적 배경을 바탕으로 서비스를 정확히 이해하고 사용자의 입장에서 바라볼 수 있는 개발자의 역할이라 믿습니다.