이준호 | 소프트웨어 엔지니어 [Product]

 
notion image

Backend Engineer

 
📧 Email : joonfluence.dev@gmail.com
📧 Phone : 010-6637-3246
 
3년 가량의 Java, Kotlin, Spring Framework, JPA 기반 백엔드 경력을 보유한 개발자로, 서비스에 대한 주인의식을 갖고, 사용자 관점에서 성능과 품질을 개선하는 개발자입니다.
 
 
제품 개발에 진심인 개발자 입니다.
☑️ 서비스에 대한 주인의식을 갖고, 문제정의 단계부터 적극적으로 참여합니다.
☑️ 빠른 의사결정 및 실행, 가설 검증 및 고도화 하는 방식의 제품개발을 선호합니다.
임팩트 높은 문제에 집중하는 생산성 높은 개발자 입니다.
☑️ 적정 기술로, 해결 했을 때 비즈니스 임팩트가 큰 문제 해결에 집중합니다.
☑️ 빠른 비즈니스 문제 해결 뿐 아니라, 성능 개선, 기술부채 해소에 진심입니다.
다양한 장애 상황에 대한 기술적 대응 역량을 갖추고 있습니다.
☑️ 모니터링을 기반으로 쿼리 튜닝 및 API 최적화, 서버 메모리(OOM) 장애 대응 경험이 있습니다.
☑️ MSA 환경에서 외부 서비스 유량 문제를 AWS 인프라를 적극 활용하여 해결해본 경험이 있습니다.
 
 

Education

  • 건국대학교 (서울) 경제학과 2014 - 2020

Certificate

  • SQLD (SQL Developer), 2023/10
  • 정보처리기사, 2023/11

Skill

  • Java, Kotlin, Spring, MySQL, JPA, QueryDSL, Redis, JavaScript, React.js
  • AWS EC2, ECS, RDS, S3, SQS, Lambda, ElasticCache
 
 

Experiences

 

월급쟁이부자들

대한민국 1등 경제 콘텐츠 & 성인교육 플랫폼 회사
입사 후 플랫폼 MAU 30만에서 150만으로 성장 경험
커뮤니티스쿼드 백엔드 개발자 2024.02 - 2025.02
 
  • 팔로우 피드 탭 개선에 대한 문제정의 및 성과 측정
    팔로우 피드 탭 개선에 대한 문제정의 및 성과 측정
    • [문제] VOC(사용자 피드백) 및 클레리티 분석 결과, 팔로우한 유저의 게시글을 찾기 어려움 → 마이페이지에서 직접 탐색하는 비효율적 UX 확인
    • [해결방안]
      • 가설 수립 : 팔로우한 유저의 글을 더 쉽게 찾을 수 있으면, 팔로우 유저에 대한 관심 증가 및 조회율 상승
      • 스쿼드 팀원들과의 협업 : UX 디자이너와 협업하여 UI 개선 및 접근성 향상 방안을 논의, PO와 소통하여 개선안을 팀 차원에서 논의 후 스쿼드에서 개발 진행
    • [결과] 개선된 팔로우 피드 적용 이후, 팔로우하는 유저에 대한 게시글 재조회 유저 50% 증가 확인
      • 팔로우 피드 조회자 수 1231명 → 1846명 (50% 증가)
  • 어드민 조편성 시스템 설계 및 개발
    어드민 조편성 시스템 설계 및 개발
    • [문제] 월 10,000명 조편성(부동산 강의 수강생들의 희망 지역에 따라, 한 그룹으로 묶어주는 것) 수기 처리로 운영팀 피로도 증가 및 운영 지속 불가 문제
    • [어려웠던 점과 극복 방법] 복잡한 비즈니스 로직, 데이터셋 구축의 어려움, 팀 내 운영개선 업무에 대한 리소스 부족 → 도메인 이해도를 높이기 위한 학습과 사용 행태 관찰, 설계 리뷰 통한 적극적인 피드백 요청 및 수용, 문제정의부터 사용자 피드백까지 전 과정에서 주도적인 역할 수행
    • [해결방안] 월간 10,000명 대상 조편성 프로세스 자동화 및 운영 효율화
    • [결과] 월간 10,000명 대상 조편성 프로세스 자동화 및 운영 효율화 → 연간 400시간 절감 → 정규강의 고객 만족도 9.87점 달성에 기여
  • 설계 리뷰 도입 통한 업무 프로세스 개선
    설계 리뷰 도입 통한 업무 프로세스 개선
    • [문제] 도메인 지식 부족으로 인한 잘못된 설계 및 오버엔지니어링 발생
    • [해결방안] Tech Spec(기술 명세서, 설계 프로세스 개선 방법론으로, 설계 초기 단계에 프로젝트의 목표, 범위, 리스크, 주요 쟁점을 문서화 한 것)을 도입하여 문제 정의, 프로젝트 목표와 범위, 리스크를 명확히 문서화
    • [결과] 코드 리뷰 소요 시간이 단축되어, 개발 주기 단축 및 품질 향상
  • 플랫폼 파일 다운로드/업로드 API 성능 최대 20배 개선
    플랫폼 파일 다운로드/업로드 API 성능 최대 20배 개선
    • [문제] 504 Gateway Timeout 등 파일 업로드 및 다운로드 실패, 느린 API 레이턴시로 인해 불편하다는 VOC 지속적 인입
    • [어려웠던 점과 극복 방법] PresignedURL이란 새로운 기술 도입 → 프론트엔드 팀과 협업의 어려움 → 문서화 및 비즈니스 임팩트 관점 설득
    • [해결 방안] WAS를 경유하지 않고 서버에서 다운로드/업로드 가능한 PresignedUrl 발급 → 클라이언트에서 S3로 다운로드/업로드 요청
    • [결과] 파일 업로드/다운로드 관련한 사용자 VOC 해소, 플랫폼 파일 다운로드/업로드 API 성능 5배 개선 및 에러 해소
  • Spring Batch 테스트 환경 OOM 장애 해결, 메모리 성능 개선
    Spring Batch 테스트 환경 OOM 장애 해결, 메모리 성능 개선
    • [문제] 테스트 실패로 인한 배포 지연로 인한 전체 팀 개발 생산성 저하
    • [어려웠던 점과 극복 방법] 테스트 환경의 복잡성, 테스트 전략이 통일되지 않아 과도한 통합 테스트와 중복 설정 → Spring Batch의 동작 원리 학습, 문서화하여 가이드라인 전파
    • [해결방안] Spring Batch 테스트 코드 최적화, JVM HeapSize 조정
    • [결과] Heap Memory 사용량 45% 절감 (750MB → 412MB), 테스트코드 실행 속도 68% 개선 (13분 → 6분)
 

페오펫

커머스 기반 종합 펫 플랫폼을 운영하는 펫테크 스타트업
백엔드 개발자 2022.12 - 2023.04
 
  • [플랫폼 계정연동 및 마일리지 지급] MSA 환경에서의 메세지 큐를 활용한 외부서비스 유량 제어
    [플랫폼 계정연동 및 마일리지 지급] MSA 환경에서의 메세지 큐를 활용한 외부서비스 유량 제어
    • [문제]
      • 1) 외부서비스 처리율 제한 정책으로 인한 피크 트래픽 상황에서 응답 지연
      • 2) 계정 연동 및 마일리지 지급이라는 작업을 동기식으로 처리하여 장애 전파
    • [어려웠던 점과 극복방안]
      • 동기식 처리 → 이벤트 기반 아키텍처 활용 비동기 처리 → AWS SQS 활용한 디커플링을 통한 응답 속도 및 결합도 감소 → 장애전파 예방
      • 외부 서비스의 처리율 제한 정책 → SQS + Lambda 동시실행수 및 BatchSize 조정을 통한 유량 제어 → 요청 실패 시, 재시도 및 Dead Letter Queue 활용하여 At-Least-Once
      • 대규모 트래픽 부하 테스트 환경 부재 → Staging 환경 구축 → k6 부하테스트 진행
    • [해결방안] 외부서비스에 의존적인 마일리지 지급 로직을 메세지 큐를 활용하여 이벤트 기반 아키텍처를 활용하여 분리 → 장애 전파 예방 Lambda 리소스를 동적 조정하여 외부 서비스 처리율에 맞춰 유량제어
    • [결과] 평소 트래픽의 30배 가량의 인원이 동시 접속한 상황에서 계정 통합 및 실시간 마일리지 발급을 에러 없이 성공적으로 처리
  • B2B 동물 등록 프로그램 신규 개발 및 설계
    B2B 동물 등록 프로그램 신규 개발 및 설계
    • [문제] 신규 고객 가입자 수 감소, 고객유치비용(CAC) 증가로 인한 회사 공헌이익 감소
    • [어려웠던 점과 극복 방안] 넓은 개발 범위와 촉박한 일정 (FE & BE & 인프라 작업을 혼자서 처), 배포 일정은 일주일 안팎으로 촉박한 상태로 프로젝트가 진행
      • → 꼭 필요한 인증 시스템, 알림톡 등 병목이 생길만한 부분부터 진행. 기획자와 협의하여 불필요한 기능들은 스펙 아웃
    • [해결방안] 펫샵 전용 펫 등록 시스템 구축 → 월 2000건의 잠재고객 정보 확보에 기여. 강아지 경매장 정보 관리 시스템 설계 및 개발.
      • 이후 PM/PO와 협업하여 고객에 대한 퍼널 설계 → 계정 통합 기능 개발을 통한 자사 플랫폼 전환
    • [결과] 5000명의 고객 중 3000명(60%) 가량을 자사몰 고객으로 전환 → 지속적으로 고객 유입을 위한 통로를 만들어, 회사의 공헌이익 향상에 기여
  • B2B 경매 프로그램 유지보수 및 기능개발
    B2B 경매 프로그램 유지보수 및 기능개발
    • [문제] 강아지 경매장 정보 관리 시스템의 부재로 인한 수기로 처리로 인한 경매 관리자분들의 어려움 존재
    • [어려웠던 점과 극복 방안] 주력 언어인 Java가 아닌, PHP로 된 프로젝트에 대한 유지보수 해야 하는 상황이었음 → 짧은 시간 안에 PHP 와 Laravel 학습하여, 업무 대응.
      • 프론트엔드, 백엔드, 인프라를 혼자서 대응해야 하는 상황 → 학습의 기회로 삼고 업무 진행
      • 인프라 및 전반적인 설계에 대한 인수인계를 받지 못함 → 전체 아키텍처부터 정리하며 업무 진행
      • 3천건이 넘는 대량의 메일 발송 작업을 단일 서버에서 처리하며 높은 부하를 일으킴. 중복 요청 → 메모리 사용량이 급증 → OOM 발생
      • 메세지 큐 도입하여, 비동기 방식으로 처리하도록 부하 분산
    • [해결과정 및 결과] Amazon SQS(MessageQueue) 활용 비동기 처리로 성능 개선, 작업 자동화
    • [결과] 강아지 경매장 정보 관리 시스템 구축 → 인쇄, 카톡, 이메일 발송 등의 단순/루틴 업무를 자동화 → 관련 운영 부서 업무 시간을 95% 이상 단축
  • 상세링크 (전문) :
 

달리셔스

외식업체와 스타트업을 잇는 O2O 푸드테크 스타트업
백엔드 개발자 2022.05 - 2022.12
 
  • 협력자 관리자 프로그램 개발
    협력자 관리자 프로그램 개발
    • [문제] 반복적인 수동 작업과 수작업 처리로 인해 관리자의 시간 소모와 실수가 발생하여 업무 비효율성이 높았음
    • [해결 과정] 스프링 스케쥴러를 활용하여 카카오톡 알림 메시지 발송 예약월말 정산서 자동 발행을 구현
    • [결과] 메뉴 등록, 정산, 메세지 전송 등 단순/루틴 업무를 자동화 → 관련 운영 부서 업무 시간을 90% 이상 단축
  • 월말 정산 금액 불일치 문제
    월말 정산 금액 불일치 문제
    • [문제] 월말 정산 금액 조회 시 메뉴 가격 변경 후 주문 기록을 기준으로 금액이 조회되어 실제 금액보다 더 크게 표기되는 문제가 발생
    • [해결과정] 상품 가격 정보 대신 주문 기록 테이블을 생성 & 마이그레이션 → 변하지 않는금액을 조회하도록 쿼리 로직을 변경하여 문제를 해결
    • [결과] 정산 금액 정확성을 확보하고 오류율을 100% 해소, 업무 효율성을 20% 향상시키고 내부 팀 및 고객사의 만족도를 높임
  • 상세링크 (전문) :
 

코레토

클라이언트의 비즈니스 성격에 맞게 독립몰(맞춤형 쇼핑몰), 모바일 앱(ios, Android) 등을 제작하는 개발 에이전시
웹 개발자 2021.06 - 2022.05
 
  • 코레토 사내 디자인 시스템 개발
    코레토 사내 디자인 시스템 개발
    • [문제] 비슷한 UI를 반복적으로 개발해야 하는 상황에서 리소스 소모와 코드 중복이 발생, 유지보수 비용 증가 및 일정 지연의 원인이 됨
    • [해결방안] Atomic Design 원칙을 도입해 20개 이상의 재사용 가능한 UI 컴포넌트를 개발하고, Storybook을 활용해 시각적 테스트 및 협업 효율성을 강화함
    • [결과] 주간 업무 5시간 감소, 팀 내 개발 효율성을 30% 이상 향상시키고, 프로젝트 유지보수성을 강화
  • 상세링크 (전문) :
 

Extra

Tutor
2023.10-2024.02
 
  • 스파르타 코딩클럽 내일 배움 캠프 수강생들을 대상으로 아래와 같이, Java/Spring/JPA 기반의 백엔드 지식 튜터링을 진행
    • 과제 채점, 에러 디버깅, 기술 질문에 대한 답변
    • 인증/인가, 테스트 코드 작성 방법 등 기술 강의
Built with Potion.so