채용공고 올리기

김태희님을 응원해보세요!

지금 만족하고 있어요
성실함
책임감
꼼꼼함
커뮤니케이션
신뢰

미리보기

기본 정보

이름
김태희
직업
백엔드 개발자
이메일
taehee.kim.dev@gmail.com
간단 소개

빈틈없이 완전하고 안정적이며, 최적화된 구조와 성능을 가진 시스템을 개발하는 데에 관심이 많은 4년 차 개발자입니다. 현재 우아한형제들의 배달의민족 자체 배달 프로덕트에서, 배달 프로세스 및 주문/배달 중계 도메인을 담당하여 개발하고 있습니다.

자기소개

자기소개

책임감, 성실함, 꼼꼼함, 빠른 속도가 강점이며, 인간관계를 제일 중요시하는 일 잘하는 개발자입니다.

  1. 반드시 기한 안에 완료합니다.

    • 주어진 일에 대해 완전한 오너쉽을 갖고, 높은 퀄리티로 빠르게 정해진 기한 안에 반드시 해냅니다.

  2. 인간관계와 그 안에서의 커뮤니케이션을 매우 중요시합니다.

    • 많은 일은 혼자 해낼 수 없습니다. 결국 함께 해내야 하기에, 관계와 커뮤니케이션을 가장 중요시합니다.

  3. 일을 잘하는 개발자입니다.

    • 일 들을 우선순위에 따라 높은 추진력으로, 적극적으로 빠르게 해 나갑니다.

기술 스택

기술 스택

Java, Spring Boot, spring-jpa, Kafka, MySQL, AWS

경력

회사명

주식회사 우아한형제들

직급 | 부서 | 근무 유형

사원 | 딜리버리프로세스개발팀 | 재직 중

근무 기간

2022.01. ~ 재직 중 (3년 5개월)

담당 업무

배달의민족 자체 배달 시스템의 배달 프로세스 및 주문/배달 중계 도메인을 구축하고 운영하고 있습니다.

  • 이벤트 파이프라인을 AWS SNS/SQS에서 Kafka로 전환하여 단일화하고, 이벤트 페이로드를 표준화시켰습니다.

  • 배달 상태 도메인들을 분리 및 제거하여 시스템 복잡도와 개발, 인프라 비용을 크게 감소시켰습니다.

    • 인프라 스펙 다운을 통해 연간 46,896,084원의 비용을 절감시킨 경험이 있습니다.

  • 배치잡 실행시간을 40분에서 1분으로 감소시키거나 API 응답 속도를 2배 향상시키는 등, 시스템의 개선 포인트를 지속적으로 찾아 개선하고 있습니다.

프로젝트

프로젝트명

주문이벤트 연동 표준화 및 단일화

소속/기관명

우아한형제들

프로젝트 기간

2022.10. ~ 2022.11.

프로젝트 내용

<문제 정의>

  • 주문 서비스 타입이 늘어남에 따라 통신 채널이 계속 추가되고 스펙도 제각각이었습니다. 이에 따라 스펙 변경이나 필드 추가 등의 개발이 필요할 경우, 개발 및 커뮤니케이션 비용이 증가하고 있었습니다.

<문제 해결>

  • 시스템에 연결되어있는 모든 API와 AWS SNS/SQS 를 전수 조사했습니다.

  • 타 시스템과 직접 통신하는 부분들을 모두 제거하고, Gateway를 통하도록 수정했습니다.

  • 주문이벤트의 페이로드를 표준화하여 재정의하고, 연동 채널을 Kafka로 일원화하였습니다.

  • 이벤트 소비 실패 시의 AWS SQS를 사용한 재시도 처리 및 최종 실패 시의 fallback 로직을 개발했습니다.

  • 피쳐 플래그를 통한 비율 기반 점진적 배포를 통해 안정적인 배포를 진행했습니다.

<성과>

  • 주문시스템과 배달시스템 간의 통신 프로세스를 표준화 및 단일화함으로써 커뮤니케이션, 이슈 대응, 개발 비용을 크게 감소시켰습니다.

  • 이벤트 연동 방식을 Kafka로 전환하면서, 이벤트의 순서를 보장할 수 있게 되었습니다.

  • 선 배포를 통한 데이터 검증, 꼼꼼한 단위 테스트 검증, 성능 테스트, 피쳐 플래그를 사용한 비율 기반 점진적 배포를 통해 에러/버그/장애 발생 0건을 달성했습니다.

프로젝트명

추천도메인 분리

소속/기관명

우아한형제들

프로젝트 기간

2024.01. ~ 2024.05.

프로젝트 내용

<문제 정의>

  • 배달 시스템에서 배달 상태는 배차가 추천된 상태에서도 배차 완료 상태이고, 배차가 수락되어 확정된 상태에서도 배차 완료 상태였습니다. 이 때문에 복잡도가 매우 높았고 개발 시 많은 혼란을 야기했으며 데이터 분석에 어려움을 겪고 있었습니다.

  • 배차 추천과 배달료 계산 flow가 비동기 방식으로 이루어져 있었고, 배달료 계산 처리가 지연되면서 배차 추천 자체가 되지 않는 큰 장애가 발생했습니다.

<문제 해결>

  • 배차 추천 상태를 독립적인 추천 도메인으로 분리해 배차시스템으로 이관했습니다.

  • 배차 추천 시 실행되는 배달료 계산을 동기 방식으로 새로 만들어 운영환경에서 데이터를 검증한 후에 적용했습니다.

  • 전체 개발을 피쳐 플래그를 중심으로 설계하고 개발했습니다. 추천 도메인 분리 과제 오픈 시, 소수의 계약관계 라이더 분들을 대상으로만 합의하에 오픈을 진행하고, 피드백을 통한 반복적인 버그 수정을 하여 안정적이고 점진적인 배포를 진행했습니다.

  • 추천 도메인 분리 과제 완료 이후, 이전에 사용했던 레거시 배달료 계산 로직을 모두 삭제했습니다.

<성과>

  • 배차 추천과 배달료 계산 flow를 한 트랜잭션으로 묶어, 비동기 방식이었을 때 발생했던 장애의 재발 가능성을 제거했습니다.

  • 배차 추천 도메인이 독립적인 도메인으로 분리되었으며, 해당 도메인 확장과 관련 데이터 분석이 훨씬 용이해 졌습니다.

  • 해당 과제 이후 레거시 코드들을 제거하면서 성능이 크게 개선되어 인프라 스펙 다운을 진행했습니다. 총 연간 46,896,084원의 비용을 절감시켰습니다.

프로젝트명

배달 상태 중 조리요청 상태 분리 및 시스템라이더 개념 제거

소속/기관명

우아한형제들

프로젝트 기간

2023.07. ~ 2023.12.

프로젝트 내용

<문제 정의>

  • 배달 프로세스에 조리 요청이라는 상태가 배달 상태 중 하나로 존재했고, 비즈니스 요구사항을 위해 가상의 라이더인 시스템 라이더라는 개념이 존재했습니다. 이 조리 요청 상태와 시스템 라이더 때문에 시스템의 복잡도가 매우 높았고, 데이터 분석 시 정확하지 않은 결과가 도출되고 있었습니다.

<문제 해결>

  • 조리 요청 상태 분리와 시스템 라이더 제거를 위한 영향범위 전수조사를 진행했습니다.

  • 조리 요청을 픽업 준비라는 신규 도메인으로 분리했습니다.

  • 기존 조리 요청 및 시스템 라이더 관련 코드들을 모두 삭제했습니다.

  • 모든 API, 이벤트 및 웹 소켓 스펙의 하위호환성을 유지하여 개발했습니다.

<성과>

  • 배달 프로세스에서 조리 요청 상태와 시스템 라이더 개념을 제거해, 시스템 복잡도를 매우 많이 낮추었습니다.

  • 데이터 분석 시의 시스템 라이더로 인한 부정확도를 제거했습니다.

프로젝트명

배치잡 분산처리를 통한 성능 개선

소속/기관명

우아한형제들

프로젝트 기간

2022.06. ~ 2022.06.

프로젝트 내용

<문제 정의>

  • 매일 새벽 개인정보를 삭제하는 배치잡이 하나의 UPDATE SQL 쿼리로 실행되고 있었고, 40분이 넘게 걸려 슬로우 쿼리로 잡히고 있었습니다.

<문제 해결>

  • 원활한 쿼리 수행을 위해 적절한 컬럼에 알맞은 INDEX를 추가했습니다.

  • 하나의 Task로 수행되던 배치잡을 여러 개의 Task들로 잘게 쪼개 분리시켜, 여러 서버에서 분산처리 되도록 개발했습니다.

<성과>

  • 40분이 넘게 걸리던 배치잡을 1분 이내에 완료되도록 개선했습니다.

포트폴리오

URL

link

[10분 테코톡] 📍인비의 DTO vs VO

유튜브

교육

소속/기관명

우아한테크코스

종류 | 전공

사설 교육 | 백엔드 과정

재학 기간 | 재학 상태

2021.03. ~ 2021.12. | 수료

소속/기관명

인천대학교

종류 | 전공

대학교(학사) | 컴퓨터공학부

재학 기간 | 재학 상태

2014.03. ~ 2021.02. | 졸업

댓글