Search
Duplicate

이한솔의 이력서

Backend Engineer, Web Developer

Profile

1988년 6월 10일 출생
호서대학교 졸업(2007.03-2016.02)
호서대학교 대학원 컴퓨터공학부 수료(2016.03-2018.02)

Contact information

killfine1988@gmail.com
LinkedIn
Github

Blog

About Me

회사의 문화를 향유하기보다 문화를 만들어나가고 싶은 개발자입니다.
Java, Kotlin, Spring Boot, JPA, MySQL등을 사용해 여러 서비스를 구축, 개발, 운영하며 개발은 모든 기술은 항상 변하고 발전한다는 것을 느끼고 있습니다.
현재 마이다스인에서 채용 관리 서비스(Jobflex)팀의 백엔드 스쿼드장으로 기술리딩을 맡고 있으며,
레거시 프로젝트의 유지보수부터 주니어 개발자들의 성장 동력 제공을 위한 전체 지원자 관리 서비스 프로젝트를 멀티모듈 기반으로 구축및 개발해 고도화를 진행하고, 사내 기술 스터디및 교육을 주도하며 함께 성장해나가는 문화를 만들어가고 있습니다.
외부적으로는 넥스트스텝(NextStep)이라는 교육업체에서 TDD, ATDD관련 코드리뷰어로 활동하고 있으며 카카오페이의 사내 교육 코드 리뷰어로도 활동했습니다.
개발자에게 고객이 만족하는 서비스를 제공하는 것이 중요한만큼 팀원들의 성장도 함께 공존해나가야한다는 생각으로 어느 한 쪽에 치우치지 않게끔 좋은 서비스를 제공하며 팀원들의 성장도 같이 이뤄낼 수 있는 부분을 조율해 개발해나가는 것에 관심이 많습니다.

Work Experience

총 4년 9개월

2022.02 ~ 재직 중

Midasin (Midas)

웹 백엔드 개발자 (스쿼드장)
: 채용에 필요한 과정들에 대한 기능들을 제공하며 회사가 원하는 인재상에 맞는 지원자를 채용하는데 도와주는 기능을 제공하는 솔루션을 제공합니다.
성능 개선과 지원서 관리 및 일괄 기능과 대용량 파일 제어에 관련된 개발을 담당하고 있습니다.
사용하는 기술 : Kotlin Spring Boot MySQL JPA(queryDSL) Jenkins Redis Kafka JPA Buddy AWS bitbucket AGILE 프로세스(JIRA, CONFLUENC)

2019.04 ~ 2021.12

Mosition

솔루션 개발 사업부 (과장)
: SI 전문 기업으로 아모레 퍼시픽과 삼성의 제품 홍보 솔루션이나 CMS 대시보드, 웹 크롤러등을 수주해서 진행했습니다. 아모레 퍼시픽의 제품 추천 솔루션 개발을 담당했습니다.
사용하는 기술: Java Javascript Python Spring Boot Flask MariaDB Netezza JQuery Git Mantis Excel google spreadsheet

Work Projects

2024.02 ~ 진행 중

MRS(Midas Recruitment System) 최적화를 통한 성능 향상 및 부하 견고성 강화

Midasin
1.
주요 내용
대규모 공채 기준 지원자 트래픽이 커지는 상황에서 성능향상 및 서버의 부하 견고성 강화
지원자 풀이 많은 대기업 기준 지원자 풀 데이터가 쌓일수록 전체적인 속도가 떨어지는 상황 해결
2.
기여한 점
최근 문제가 발생했던 기업 기준으로 datadog을 통한 슬로우 쿼리 분석 및 쿼리 최적화
관리자 페이지에서 발생하는 Too Many Connection문제 원인 파악 및 수정
데브옵스측과 협의해 staging 서버에 테스트 환경 준비
k6를 이용한 부하테스트 스크립트와 테스트 시나리오 문서화
3.
결과/성과
슬로우 쿼리 파악 및 쿼리 튜닝
staging 서버 테스트 데이터 셋업하여 테스트환경 구축
부하테스트 도입을 통한 대규모 공채 대비 부하 견고성 증가

2024.01 ~ 2024.02

MRS(Midas Recruitment System) 지원서 정보 매칭ATS 연동 기능 개발

Midasin
1.
주요 내용
지원서 작성시 동의 여부에 따라 잡다매칭팀에 지원서 정보 연동 기능
2.
기여한 점
고객사 중 계약 상품별 지원서 매칭 연동 동의서 데이터 마이그레이션
동의한 지원서 작성 정보를 단계별로 고객사 메인 서버가 아닌 Redis 서버에 저장하도록 로직 개발
지원서 최종 제출 완료시 지원서 정보 이벤트 발행 로직 개발
지원서 cleanup policy 기준으로 임시 지원서가 삭제되도록 스케줄러에 로직 개발
3.
결과/성과
지원자 중 69%가 동의서에 동의를 하여 잡다 매칭과 연동되어 매칭 인재풀 등록및 약 750개 기업과 매칭 연결

2023.05 ~ 2023.12

MRS-CMS(MRS-Content Management System) 전체 지원자 관리 프로젝트 구축 및 운영

Midasin
1.
주요 내용
분리되어 개별 관리되던 지원서 정보 통합 검색 및 관리 시스템 도입
공통및 상세 검색 필터를 통한 대규모 지원서 추출 기능 제공
전체 지원자에 대한 메일/SMS 발송 시스템 제공
2.
기여한 점
신규 서버로 기능 이관및 히스토리 분석 및 최적화 작업 진행
프로젝트 기술 스택 및 멀티 모듈 레이어드 아키텍처 전반 주도 개발
지원서 검색에 필요한 이름, 학력, NCS관련 자격증과 같은 검색 조건 분석 및 검색 요청 스펙 정의 및 필터 개발
고객사별 최대 4~5만명이상의 지원자풀에 대한 전체 검색 및 지원서 엑셀 및 PDF 생성 기능 제공
1000개 이상의 테이블 스키마 테이블정보 엔티티 변환 작업 진행
지원서 관리에 관련된 이슈 기획측과 협의해서 같이 취합 및 전체지원자 관리 기능의 필요성 그룹장님과 협의
3.
결과/성과
지원서 관리 관련 누적 VoC 40건 중 90% 이상 해결
프로젝트 기술 스택 최신화 및 코어 기능 리팩토링 및 문서화를 통해 기능 개발 생산성 50%이상 향상
30개 가량의 다이나믹 필터 개발로 지원자 검색 생산성 증가

2023.01 ~ 2024.03

MRS-BATCH 대용량 파일 생성 서비스 개발 및 유지 보수

Midasin
1.
주요 내용
대용량 지원서 엑셀 및 PDF 생성 기능 제공
대용량 지원서 첨부파일 취합 및 업로드 기능 제공
2.
기여한 점
서버 구축 전반 관리 및 인터페이스 설계
대용량 파일 생성 로직 비동기화 및 로직 개선을 통해 성능 개선 58% 이상 향상
PDF 생성 비즈니스 로직 aws-lambda 분리 및 메모리 부족 이슈로 인한 PDF 생성 실패 이슈 해결
PDF orchestrator 비동기 호출시 payload 길이 제한 이슈 Redis 를 통해 해결
빈번하게 OOM이 발생하는 대용량 파일 업로드 로직을 aws multipart 업로드 로직으로 전환 개발
3.
결과/성과
비동기 처리 및 쿼리 최적화로 기존 대비 성능 58% 향상
PDF 생성 로직을 aws-lambda로 분리하고, 이후 pdf가 메모리 부족 문제로 실패하던 문제 파악 및 해결로 PDF 생성 로직 불안전성 해결
기존에 발생하던 파일 업로드시 OOM이슈 해결

2022.02 ~ 2022.12

MRS(Midas Recruitment System) 채용 관리 솔루션 기능 개발 및 유지 보수

Midasin
1.
주요 내용
인재 채용에 필요한 전반적인 기능 제공 시스템
채용 사이트 생성 빌더 시스템 제공
고객사 적합 인재 채용 공고 생성부터 평가자 진행, 합격자 발표 및 전형 안내 기능 제공
AI 면접(역량 검사 솔루션), 잡다 Dev(코딩테스트 솔루션) 연동
2.
기여한 점
대용량 파일 다운로드 기능 성능 저하 원인 파악 및 개선 작업
팀 내 코드 리뷰 및 코드 최적화 주도 리딩
채용 관리 솔루션 테스트 문서화 도구(OAS) 도입
TDD 기반 템플릿 모듈 개발
고객사 VoC 대응 및 핫픽스 이슈 대응 개발
그룹별로 다르게 구현된 파일 다운로드 로직에 파일 암호화 공통 서비스 개발
3.
결과/성과
대규모 공채 기능 최적화로 모기업 계열사 전체 계약 성공
프로젝트 쿼리 최적화로 페이지 응답속도 300%이상 향상
TDD 기반 템플릿, OAS 도입으로 테스트 작성 문화 도입
장기 누적 VoC 정리 및 개발을 통해 고객 신뢰 회복

2020.07 ~ 2020.11

SGU (Smart Green Us) 아모레퍼시픽 화장품 추천 웹서비스 고도화 개발

Mosition
1.
주요 내용
매장 방문 고객별 화장품 추천 기능 제공
고객 설문을 통한 화장품 추천 알고리즘 기능 제공
2.
기여한 점
중복코드 모듈화 및 코드 리팩토링 전반 진행
IOS 12버전 이하에서 지원되지 않는 코드 리팩토링 전반 개발
라인및 함수 테스트 커버리지 0% 에서 80% 까지 달성
3.
결과/성과
IOS 호환성 이슈로 고객사 전매장 태블릿 교체 이슈를 로직 마이그레이션 진행으로 호환성 이슈 해결및 태블릿 교체 이슈 해결
테스트 커버리지 80% 달성을 통한 코드 퀄리티 및 안전성 확보

2019.04 ~ 2019.06

MARS 아모레 퍼시픽 제품 홍보 머신러닝 솔루션 개발

Mosition
1.
주요 내용
아모레퍼시픽 화장품 구매 가능 고객층을 머신러닝을 통해 추출해 홍보 메일/SMS 발송 기능 제공
발송 내역을 통한 실제 구매 고객 정보 정리 및 정보 취합 대시보드 기능 제공
일/주/월 별 홍보 메일/SMS 발송 내역 조회 기능 제공
아모레퍼시픽 인명록 기반 접근 권한 관리 기능 제공
2.
기여한 점
머신러닝 결과 데이터 취합 및 가공 로직 변경 요구사항 반영 개발 진행
JPA 기술 사내 교육 세미나 진행 및 기술 지원
웹 페이지 기능 구현 및 API 연결 전반 개발
3.
결과/성과
이종간 데이터베이스 정보 취합 로직 성능 개선 기존 대비 95% 성능 향상 및 에러 발생 빈도 제거
기존 1,000,000 row / 20분이상
개선 후 1,000,000 row / 1분 이하
JPA DTO projection Dirty Ceck 이슈 원인 파악 및 해결
머신러닝 데이터 포맷 불일치 이슈로 나오는 이슈들 사전 테스트 케이스를 통해 해결

Programming Experience

게으른 개발자 컨퍼런스, 코틀린 도입기 발표[링크][발표자료]

날짜: 2024.01.27
설명: 레거시 프로젝트팀이 모놀리틱 구조에서 매크로 서비스를 넘어 미니 서비스로 구조 전환이 되는 과도기에서 신규 기술 스택들을 도입하며 어떻게 해결해나가고 같이 성장하고 문화를 만들어가는지에 대한 발표를 했습니다.

Nextstep, 코드리뷰어 활동

TDD, 클린 코드 with Kotlin 7기 코드리뷰어 [링크][샘플]
ATDD와 함께 클린 API로 가는 길 4~7기 코드리뷰어 [링크][샘플]
TDD Clean Code With Java 13~17기 코드리뷰어 [링크][샘플]
날짜: 2021.10 - 진행 중
설명: Nextstep에서 진행하는 여러 교육과정에 코드리뷰어로 활동하며 리뷰이들에게 코드리뷰를 통해 인사이트를 제공하고 함께 성장해나가는 경험을 하고 있습니다.

사내 기술 스터디 진행

기간: 2023.07 - 2023.09
설명: 사내에서 신규 기술스택 도입시 선행학습한 내용을 토대로 사내교육 전반을 담당하여 기술 지원을 했습니다.

Study Experience

Codesoom 스프링 3기[링크][샘플]
기간: 2021.08 -2021.11
Java기반 알고리즘 스터디 11기[링크]
기간: 2021.10 - 2021.11
인프라공방 2기[링크]
기간: 2021.06 - 2021.07
ATDD와 함께 클린 API로 가는 길 3기[링크]
기간: 2021.03 - 2021.04
TDD, Clean Code with Java 10기[링크][샘플]
기간: 2020.10 - 2020.12
웹 백엔드 시스템 구현 온라인 스터디 3기[링크]
기간: 2019.08 - 2019.10

ETC Experience

인프런 수강생 인터뷰

설명: 첫 회사 신입 시절 사수가 따로 없고 어떻게 성장해야 할 지 가늠되지 않던 시기에 인프런을 통해 약 1300개이상의 수업을 들었을 때 인프런 측에서 인터뷰 제의가 와서 처음으로 판교에 가보고 인터뷰를 진행했습니다.

Nextstep Black Coffee 블로그 스터디 1기 - 9기 전 회 참가

설명: 자발적으로 기술 블로그를 관리하는게 힘들어서 강제적으로라도 하기 위해 참가했던 블로그 스터디 였으며, 더 이상 운영되지 않을 때까지 참가하여 블로그에 글을 쓰고 회고록을 작성하며 글쓰는 습관을 키웠습니다. 이를 통해 내 한 주를 마무리할 때 되돌아보며 더 나은 한 주를 준비할 수 있도록 했으며, 다른 사람들을 보며 더 열심히 해야겠다는 성장 동력을 찾았습니다.

Skill

현재 업무에 사용 중 이거나 사용했던 기술들 입니다.

BackEnd

Java Kotlin Phython Javascript
Spring Boot Spring Batch Spring Spring Data JPA Spring Security Node
Kotest KDoc Dokka JUnit5
Gradle Maven
MySQL MongoDB Redis JPA QueryDSL MyBatis
Git
Jenkins

업무

Confluence Jira Mantis Bitbucket