채용공고 올리기

정정일님을 응원해보세요!

좋은 제안에 열려있어요
성실함
커뮤니케이션
열정적
긍정적
적응력

미리보기

직업
꿈에서도 개발하는 백엔드 개발자
이름
정정일
간단소개
잠들기 전에도 개선점을 생각하는 2년차 백엔드 개발자 정정일입니다. 현재는 누적대출액 2조 5,137억원의 온라인투자연계금융업 플랫폼 백엔드 개발 및 운영을 담당하며 다음과 같은 일들을 주로 하며 경험했습니다. - Java, Spring Boot, Spring Batch 기반의 엔터프라이즈 애플리케이션 개발 - 쿼리 튜닝, 비동기 처리, 병렬 처리를 통한 API 성능 최적화 - 레거시 시스템 분석 및 개선, 비지니스 로직 도메인별 통합 - 분산 서버 환경에서 발생하는 동시성 이슈 해결 및 성능 최적화 - 클라우드 환경에서 Kubernetes 기반 인프라 운영 및 유지보수 또한, 영업직에서 3년간 근무한 경험을 바탕으로 사람들과 소통하는 것을 즐기며, 팀과의 원활한 협업을 위해 기여하고 있습니다. 어제보다 오늘, 오늘보다 내일 더 성장하기 위해 노력하며 효율적인 문제 해결을 위해 고민합니다.

기술 스택

기술 스택
Java
Spring
Spring Cloud
Spring Security
JPA
Kotlin
Git
MySQL
Redis
mybatis
Kubernetes
Kafka

경력

회사명
(주)헬로핀테크
직책 • 부서
사원 • 개발팀
근무 기간 (근무 형태)
2023.03. - 재직 중
(2년 | 정규직)
담당 업무

헬로펀딩 서비스 개발

  • Java, Spring Boot, Spring Batch를 활용한 엔터프라이즈 애플리케이션 구현

  • 57,000명의 투자자와 2,000명의 대출자 연계 플랫폼 백엔드 구축 및 운영

  • 전체적인 API 개발 및 유지보수 ( 투자, 입출금, 대출 상품 관리, 정산 등 )

  • 6개의 WAS, 1개의 Web Server, 1개의 Batch Server 개발 및 운영

레거시 개선

신규 개발 및 도입

  • 신규 도입

  • 신규 개발

    • 비대면 주택담보대출 신청 및 승인 시스템 DB 설계 및 주요 기능 개발

    • 은행 등 외부 시스템 연동 통합용 API 서버 개발

    • OPENAPI 투자 기능 개발 참여

    • 대출 상환 일정 시뮬레이션 기능 구현, 사용자 친화적 대출 관리 환경 제공

    • 투자자 지급 이자와 대출자 수취 이자를 분리 낙전 수입 추가 실현

트러블 슈팅 및 해결

주요 사용 기술

  • Back-end : Java, Spring Boot, Spring Batch, Spring Security, JPA, Mybatis, MySQL, Redis, Redisson, Spring Rest docs, DB Procedure, DB Function

  • Front-end : Javascript, Thymeleaf, CSS, HTML, jQuery

  • Infra : Git, Kubernetes, Docker, Jenkins, ArgoCD, ELK, Prometheus

프로젝트

프로젝트명
정산 리뉴얼 프로젝트
소속/기관명
헬로핀테크
프로젝트 기간
2024.06. - 진행 중
(9개월)
프로젝트 설명

여러 도메인으로 분리돼 있던 정산 비지니스 로직 통합 프로젝트 제안 및 채택

프로젝트 인원 : 4명

[문제]

  • 정산 로직이 3개의 서버, 13개의 DB Procedure, 11개의 DB Function으로 분산되어 복잡도가 높아 유지보수와 개발 비용이 과도하게 발생

  • 분산환경에서의 Race Condition 발생

[해결 및 역할]

  • 정산 비즈니스 로직 통합 프로젝트를 제안하고 API 설계 및 구현을 주도

  • 기존 아키텍처와 의존성을 분석하고 점진적 전환 전략을 설계해 서비스 안정성을 확보

  • Redisson 기반 분산 락을 통해 Race Condition 문제 해결

  • 통합 이후 테스트와 최적화를 통해 안정적인 운영 환경을 구축

[성과]

  • 시스템 복잡도 감소로 요구사항 반영 속도 평균 46.31% 향상. ( 4.06주 → 2.18주 )

  • 동시성 문제 해결로 정산 프로세스의 신뢰성 및 안정성 향상

  • 점진적 전환 방식을 통해 서비스 운영 안정성을 유지하며 통합 성공

[주요 기술] Spring Boot 2.7.3, Java 11, JPA, Redission, Rest API

프로젝트명
백오피스 웹서버 개발, 운영 및 개선
소속/기관명
헬로핀테크
프로젝트 기간
2023.04. - 진행 중
(1년 11개월)
프로젝트 설명

PHP 레거시 백오피스 서버 Java, Spring으로 리뉴얼 하며 기존 기능 개발 및 추가 개발 진행

개발, 운영 인원 : 2~6명

[문제]

  • 한 Task 내에 JPA와 MyBatis 혼재로 인해 HikariCP Dead Lock 발생

  • DB Replication 복제지연 문제로 일관성 이슈 발생

  • 비효율적인 서브쿼리와 인덱스 미활용으로 서버 부하 증가

  • 한 로직에서 여러 도메인 로직 혼재로 인한 성능저하 (예: 대출 승인 시 심사결과 저장, 문자 발송, 관리자 알림)

[해결 및 역할]

  • HikariCP Dead Lock 트러블 슈팅 및 원인 파악, JPA로의 일원화를 통해 해결

    • Connection pool 분리, 영속성 컨텍스트 Connection 반환 시점 변경을 고려하였으나 Mybatis 코드를 JPA로 변경하고 있던 상태였기에 JPA로의 일원화를 통해 해결.

    • 문제가 발생한 로직을 우선적으로 수정, 변경 중에는 Pod 수를 늘려 부하 분산을 통해 DBCP의 Connection 갯수가 모두 점유되지 않도록 조치.

  • DB Replication 복제지연 문제 해결

    • @TransactionalreadOnly 여부로 구분하여 Proxy, Master를 구분하는 방식과 AbstractRoutingDataSource와 AOP를 통한 DataSource 분리를 고려

    • readOnly 여부로 구분하는 경우 복제지연 문제가 발생하지 않는 트랜잭션도 Proxy를 보지 않게되어 부하 분산 효과가 줄어들 수 있다 생각해 AbstractRoutingDataSource와 AOP로 DataSource를 분리하여 복제 지연 문제를 해결

  • 쿼리 최적화를 통한 API 성능 개선

    • 불필요한 서브쿼리 제거 및 Join 사용

    • 인덱스 활용 및 멀티컬럼 인덱스 최적화

    • 해당 API 뿐 아니라 자주 사용하는 컬럼 Indexing 필요여부 의논 및 도입 결정

  • 이벤트 기반 비동기 처리 제안 및 도입으로 성능 최적화 및 관심사 분리

[성과]

  • 복제 지연 해결을 통한 사용자 신뢰도 향상

  • HikariCP Dead Lock 문제 해결을 통한 서버 안정성 향상

  • SQL 튜닝을 통해 주요 API 성능 87.66% 개선 ( ART : 10.295초 → 1.27초 )

  • 시스템의 유지보수성 및 성능 향상

[주요 기술] Spring Boot 2.6.7, Spring Security, Java 11, JPA, Mybatis, Thymeleaf

프로젝트명
서비스 인프라 운영 및 유지보수
소속/기관명
헬로핀테크
프로젝트 기간
2023.12. - 2024.09.
(10개월)
프로젝트 설명

클라우드 기반 서버 인프라 운영 및 유지보수

운영 인원 : 1명

[문제]

  • 기존 인프라를 담당하던 DevOps 퇴사로 인해 인프라 운영 공백 발생

  • K8s Ingress - Sticky Session 설정으로 인해 어플리케이션 재기동 시 Session 유실 및 사용자 재로그인 필요

[해결 및 역할]

  • 새로운 DevOps 입사 전까지 클라우드 기반 서버 인프라 운영 및 유지보수 담당

  • 19개 인스턴스, 10개 노드, 3개 웹 서버, 9개 WAS, 2개 DB 운영 및 유지보수

  • Sticky Session 문제를 해결하기 위해 Redis Session Clustering 방식으로 전환, Session 유실 문제 해결

[성과]

  • 운영 공백 기간 동안 안정적으로 인프라 유지보수 수행

  • Session 유실 문제 해결로 사용자 경험 개선 및 서비스 신뢰도 향상

[주요 기술] Kubernetes, Jenkins, ArgoCD, ELK, Prometheus, Redis, MySQL

프로젝트명
Batch 서버 개발, 운영 및 개선
소속/기관명
헬로핀테크
프로젝트 기간
2023.05. - 진행 중
(1년 10개월)
프로젝트 설명

PHP, Crontab 레거시 Batch서버를 Spring Batch로 리뉴얼 하며 추가 기능 개발 및 운영

개발, 운영 인원 : 4~6명

[문제]

  • 기존 서버는 PHP와 Crontab 기반으로 구축돼 관리가 어려웠으며, Spring Batch로 이전하는 과정에서 Job 동시 실행 시 Deadlock 문제가 발생

  • Tasklet 방식으로 대량 데이터 처리 시 성능 저하 및 데이터 정합성 문제 발생

[해결 및 역할]

  • Spring Batch Metadata Table Deadlock 원인 파악 및 문제 해결

    • 여러 Job 동시 실행 금지, Spring Batch 버전 업 (Java, Spring Boot, Spring Batch 전체 버전업 필요로 배제), Metadata Table 관련 Isolation Level 변경 방법등을 고려

    • Job 동시 실행 금지는 비현실적이라 배제, Spring Batch 버전 업의 경우 서버 버전상 Java, Spring Boot, Spring Batch 전체 버전업 필요로 배제하여 Metadata Table 관련 Isolation Level 변경하여 해결

  • 대량 데이터 처리 성능을 개선하기 위해 Chunk 기반 처리 및 Partitioning 방식 도입

    • Tasklet 방식의 단점을 보완해 대량 데이터 처리 성능 최적화

    • 배치 성능을 기존 13분에서 5분으로 대폭 개선

[성과]

  • Deadlock 문제 해결로 안정적인 Batch 환경 구축

  • 데이터 정합성 문제 해결로 정합성 문제 발생확률 99.9% 감소 ( 최대 트랜잭션 처리 시간 22분 → 0.01초 )

  • 성능 최적화를 통해 데이터 처리 시간을 64% 단축 ( 13.27분 → 4.77분 )

  • 해결 사례를 사내에 공유, 다른 팀에서도 활용 가능하도록 문서화

[주요 기술] Spring Boot 2.7.3, Spring Batch, Java 11, JPA, MyBatis

프로젝트명
은행 및 외부 시스템 연동 통합용 API서버 개발, 운영
소속/기관명
헬로핀테크
프로젝트 기간
2023.08. - 진행 중
(1년 7개월)
프로젝트 설명

내부 어플리케이션들을 위한 은행 등 외부 시스템 연동 통합용 API 서버 개발 및 운영

개발, 운영 인원 : 4명

[문제]

  • 외부 시스템 연동 코드가 여러 어플리케이션 서버에 중복되어 유지보수 어려움 발생

  • API 명세서 부재로 비효율적 소통

  • Git branch 전략 미비로 형상 관리 문제 발생

  • 일부 외부 API(예: 주택 시세 조회)에서 응답 시간 지연

[해결 및 역할]

  • 외부 연동을 추상화한 통합 API 서버를 구축하여 중복 코드를 제거하고 유지보수성 개선

  • Spring Rest Docs와 Asciidoc을 활용하여 API 명세서 자동화

  • Git flow 전략을 제안 및 도입하여 형상 관리 체계화

  • Redis 기반 캐싱을 설계하고 구현하여 API 응답 속도 개선

[성과]

  • 외부 시스템 연동 관리 효율성 및 유지보수성 향상

  • 협업 생산성 증가 및 형상 관리 안정화

  • API 응답 속도 74.69% 개선 ( ART : 5.132초 → 1.299초 )

[주요 기술] Spring Boot 2.7.3, Java 11, JPA, Rest API, Spring Rest docs

포트폴리오

타입
URL
타입
첨부파일

교육

소속/기관
플레이데이터 (encore)
종류 | 전공명/전공계열
사설 교육 | 빅데이터 기반지능형 SW 및 MLOps 개발자 양성 과정
재학 기간 (재학 상태)
2022.07. - 2022.12. (졸업)
소속/기관
호치민시한국국제학교
종류 | 전공명/전공계열
고등학교 | 문과
재학 기간 (재학 상태)
2014.03. - 2017.02. (졸업)

대외활동

활동명
백엔드 기술 아티클 스터디
소속/기관
기타
활동 연도
2024
활동 상세 설명

2023.08~진행중 / 주 2~3회

백엔드 기술과 관련된 글을 읽고 서로의 의견을 나누며 토론하는 스터디입니다. 인원은 6명으로 주 2~3회 1시간 가량 진행했으며 2023년 8월부터 매주 진행중입니다.

매주 읽고싶은 주제와 관련된 글을 선정하여 각자 의견, 경험, 이견등을 나누며 기술에 대한 이해도를 높이고 다른 사람들의 의견을 접하여 시야를 넓게하는 효과가 컸습니다.

가장 기억에 남은 아티클로는 "소프트웨어 엔지니어가 알아야 할 로그에 대한 모든 것" 이라는 Medium 게재된 글로 Apache Kafka를 개발한 Jay Kreps이 작성한 글을 번역, 해석한 글이였습니다. Kafka를 개발하게 된 이유와 철학을 로그라는 하나의 주제에서 출발하여 점진적으로 설명됐기에 Log와 Kafka대한 이해도를 크게 높일 수 있었습니다. 게재된 글을 읽고 이해한 것을 바탕으로 경험으로서 습득하기 위해 MSA 기반 사이드 프로젝트에 Event streaming을 위해 적용해보는 과정 또한 가졌습니다.

Link : https://www.notion.so/minnim1010/6af63324e8614108bf32b0c2f5a1c87c

활동명
비전공자를 위한 백엔드 과외
소속/기관
크몽
활동 연도
2024
활동 상세 설명

2024.08~진행중 / 평점 5점

초심자를 대상으로 백엔드 과외를 진행하며, 기본 개념부터 실무에서 활용되는 기술까지 쉽게 이해하실 수 있도록 노력했습니다. 이 과정에서 기술의 핵심을 다시 정리하고, 학습자 입장에서 설명하는 방법을 고민하면서 제 자신도 기술에 대한 이해도를 더욱 깊게 다질 수 있었습니다.

또한 이를 통해 기술적인 부분의 커뮤니케이션 능력이 상승할 수 있었습니다.

이러한 노력들로 감사하게도 평균 5점 만점으로 높은 리뷰 점수를 가질 수 있었습니다.

Link : https://kmong.com/gig/598770

자격증

자격증명
리눅스마스터
점수/급 | 발급 기관
2급 | 한국정보통신진흥협회
취득월
2024.10
자격증명
AWS CCP
점수/급 | 발급 기관
Certified Cloud Practitioner | AWS
취득월
2024.08
자격증명
SQL
점수/급 | 발급 기관
Developer | 한국데이터산업진흥원
취득월
2022.12

외국어

언어명
영어
수준
일상 회화 가능
언어명
일본어
수준
일상 회화 가능
댓글