채용공고 올리기

황진성님을 응원해보세요!

지금 만족하고 있어요

미리보기

기본 정보

이름
황진성
직업
백엔드 개발자
이메일
devjinsung@gmail.com
간단 소개

안녕하세요! 백엔드 개발자 황진성입니다. 기술 서적을 읽는 것을 좋아합니다. 사용자 친화적이며 견고한 아키텍처를 만들기를 지향합니다. 오버 엔지니어링보다 비지니스에 적합한 기술을 선택하기를 선호합니다.

기술 스택

기술 스택

커뮤니케이션, Spring Boot, MySQL, Redis, Kafka, AWS

포트폴리오

URL

link

GitHub

깃허브
link

기술 블로그

URL 링크

경력

회사명

주식회사 델레오코리아

직급 | 부서 | 근무 유형

팀원 | 플랫폼 개발팀 | 재직 중

근무 기간

2023.05. ~ 재직 중 (2년)

담당 업무

회사 소개
총 42명/ 개발 조직 21명 / 투자액 비공개 시리즈C 스타트업
B2C, C2C 해외 배송 서비스 및 이커머스 풀필먼트 서비스입니다.
DHL, QExpress와 같은 운송 사업을 좀더 고객 친화적이며 가격 경쟁력을 바탕으로 서비스합니다.

담당업무

  • MSA아키텍처에서 백엔드 서버 개발을 진행

  • 백엔드 서버 운영 모니터링 및 유지보수

  • Thymleaf와 Jquery를 통한 간단한 웹페이지 수정 진행

회사명

주식회사 두핸즈

직급 | 부서 | 근무 유형

팀원 | 품고 나우

근무 기간

2022.08. ~ 2022.10. (3개월)

담당 업무

회사 소개
총 250명/ 개발조직 25명/ 누적투자 320억 시리즈B
네이버 풀필먼트 연합 기업(Naver Fulfillment Alliance)
풀필먼트는 판매자를 대신해 물류창고에 상품을 입고, 포장, 배송 등의 과정을 담당하는 서비스입니다.

퇴사 사유: 수습기간에 경영악화로 인한 50% 이상의 대규모 구조조정

회사명

아임게이트

직급 | 부서 | 근무 유형

팀원 | 체크인솔루션부문

근무 기간

2017.06. ~ 2022.07. (5년 2개월)

담당 업무

회사 소개
총 27명/ 개발조직 19명/ 누적투자 500억 시리즈C H2OHospitality의 자회사
(H2OHospitality는 총 70명/ 4개의 자회사 보유함)

호텔, 모텔, 공유 숙박 시설에 스마트 체크인 서비스 기업입니다.
스마트 체크인 서비스는 투수객이 프론트 데스크를 거치지 않고 모바일 체크인을 통해 곧장 객실로 체크인하는 서비스입니다.

  • 국내 최대 규모 리조트에 도입(용평, 하이원, 오크밸리, 알펜시아 등)

  • 국내 대형 호텔에 도입(롯데 호텔, 파라다이스, 유탑 등)

담당 업무

  • 백엔드 서버 개발 및 운영

  • AWS를 활용한 백엔드 서버 구현 및 모니터링(프로젝트에 사용된 모든 AWS기술을 모두 사용하고 직접 적용)

  • 프론트엔드 일손이 부족하면 유동적으로 참여하여 이슈를 해결함

프로젝트

프로젝트명

쉽배송 - 알아서 다 해주는 해외배송 서비스

소속/기관명

델레오 코리아

프로젝트 기간

2023.05. ~ 진행 중

프로젝트 내용

기술
Java21, SpringBoot3, JPA, MyBatis, PostgreSQL, Redis(ElasticSearch), Kafka, Grafana(Loki), EKS, MSA(OMS, WMS, TMS, Payment 등 10개의 서비스) 아키텍처

설명
해외 배송의 복잡성을 단순화하고 고객이 합리적인 가격으로 쉽게 해외 배송을 제공하는 서비스입니다.
해외 배송에는 수출입 신고, 품목의 다른 국가 배송 적격성 확인하는 절차가 포함되데 이런 절차를 간소화힙니다.
또한 내부적으로 연동된 30개 이상의 배송 파트너사의 가격 비교를 통해서 저렴한 배송을 제공하는 서비스 입니다.

성과:

  1. 배송추적시스템(TMS): 연동된 파트너사의 배송 추적 시스템의 정물일치
    -> 필요: 각 파트너사마다 다른 타임존을 사용하며 배송 위치에 따라서 타임존이 달라 정물일치가 발생하지 못하는 현상 발생하여 CS 문의가 들어와서 서비스 이미지가 저하되는 일이 발생
    -> 해결: 각 배송 파트너 사에 직접 문의하여 사용 타임존을 문의하고 단일 타임존 사용 국가는 TimeZone 정보를 DB와 Redis에 적재하고 쉽게 알지 못하는 위치의 경우 GeoCodingAPI를 통해서 위도 경도 값을 가져와서 화물의 타임존을 구하는 방식을 통해 정물일치를 진행했습니다.

  2. 항공(Parxl), 해운(Jem Platform) 배송업체와 API연동
    -> 필요: 신규 배송사와 API 연동을 통해서 보다 저렴한 항공 및 해운 루트를 개척하여 서비스의 가격 경쟁력을 강화할 필요 발생
    -> 해결: 템플릿 메서드 패턴의 아키텍처에서 항공 및 해운 배송사의 API 특성에 맞추어 API연동하여 배송 및 배송 추적를 연동을 진행했습니다.

  3. 결제창에서 관세 및 부과세 동적 알림 표시
    -> 필요: 배송비 결제후 배송 진행하여도 각 국가에 따라서 추가적인 관세 또는 부과세가 발생할 수 있지만 고객에 알림이 없어 강성 CS 문의로 서비스 이미지가 실추가 우려되는 상황이 발생
    -> 해결: 때에 따라서 변경되는 국가별 관부과세는 관리할 수 있는 관리자 페이지 개발하여 수시로 관부과세를 수동으로 입력하지 않도록 하며 고객의 물품 정보 가액을 환율 API를 통해서 변경하여 일정 금액 이상일시 관부과세 알림을 표시했습니다.

  4. 글로벌 결제를 위해서 포트원(아임포트) PG사 연동 및 서버 구축

    -> 필요: 기존 연동되어있던 PG사로는 해외 결제 및 후불 결제(Billing)가 불가능하여 새롭게 포트원 결제 API 연동을 진행

    -> 해결: 새롭게 SpringBoot3 서버를 세팅 및 구축하고 포트원 일반 결제, BillingKey를 통한 후불결제, 결제 취소, 현금영수증등 API 연동작업을 진행했습니다. 또한 기존 SpringBoot2 PaymentServer의 코드를 새로운 PaymentServer로 마이그레이션하여 이전 코드도 동작시키도록 작업했습니다. 결제 부분 취소 로직에서 동시성 이슈가 발생하여 redisson과 aop를 활용하여 동시성 제어 애노테이션으로 동시성 이슈를 해결했습니다.

  5. 해외 주소 검색 솔루션 자체 개발 검토

    -> 필요: 기존 구글 주소 검색 API 사용시 건당 6원의 비용이 소요되는데 월 20만건 검색시 비용 문제가 될 수 있어 자체 주소 검색 서버 구현 개발 검토를 진행


    -> 해결: 해외 주소 데이터 수집은 나라별, 주별 갖기 어려워 데이터 베이스를 구매하기로 결정하고 mongodb, cassandra, elastic search, google bigquery 데이터베이스에 미국 주소 1억 6000만건의 데이터를 적재 후 apache jmeter로 벤치마크하여 테스트를 진행하여 적합한 DB를 검토하는 작업을 진행했습니다.

  6. MMS서버의 레거시 메일 발송 로직을 리펙토링 진행


    -> 필요: MMS서버의 레거시인 SMTP 프로토콜을 사용하는 SendGrid의 메일 발송 코드를 기능의 확장으로 인해 프로토콜 변경 및 수정 작업 발생


    -> 해결: 먼저 레거시 SendGrid의 SMTP 프로토콜을 SendGrid의 Rest API로 재연동 작업을 진행하고 기존 코드에 의존성 있는 다른 서버가 있을 수 있기에 템플릿 메서드 패턴으로 API 파라미터 타입에 따라서 SMTP 또는 REST API프로토콜을 사용하거나 비용 절감의 이유로 다른 메일 서비스의 추가 연동할 수 있도록 유연한 아키텍처로 리펙토링을 진행했습니다.

프로젝트명

Hospitality

소속/기관명

(주)아임게이트

프로젝트 기간

2017.06. ~ 2022.07.

프로젝트 내용

기술
Express.js Node.js, Knex.js(QueryBuilder), CircleCI, Docker, Nginx, Terraform, Mocha, Lodash, Fx.js, PM2, Nodemon, AWS(ElasticBeanstalk, Lambda, API Gateway, S3, CloudFront, RDS-Aurora(MySQL), DynamoDB, SNS, CloudWatch, Route 53, ACM, IAM), OAuth

설명
숙박 시설에 제공하는 스마트 체크인 클라우드형 서비스입니다.
대형 호텔, 리조트의 경우 설치형 서비스를 원할때가 있지만 4성급 이하 호텔, 모텔, 공유 숙박 시설에서는 클라우드 버전을 주로 사용합니다.

성과

  • Table 설계 및 API 개발(전체 테이블은 약 68개)

  • 테스트 주도 개발(TDD) 방식으로 꼼꼼한 서비스 API 개발(전체 테스트케이스는 약 1988 개)

  • CloudWatch로 병목되는 API 로그 탐지 후 Explain을 통한 슬로우 쿼리 진단 및 개선 진행(13930ms -> 774ms로 개선)

  • 원자값이 아닌 칼럼으로 인해 통계 데이터 검색이 어려워 DB 정규화를 진행함

  • AWS 서비스를 사용하여 운영(S3 정적 파일 호스팅, SSL인증서 및 도메인 설정, RDS Multi-AZ설정 등 다수)

  • 서버 장애 발생시 Elastic Beanstalk 서버 Status확인 후 SSH로 EC2에 접속하여 서버 장애 긴급 대응

  • CircleCI YAML파일과 Shell Script를 이용하여 Product CI/CD 배포 스크립트 작성

  • 슈어엠 딜러사와 협업하여 카카오 알림톡 API 연동을 통해 체크인 투숙객에 메세지 전달

  • QRCode 객실키 기능을 위해서 Doorlock Firmware팀과 Protocol Packet설계 후 ByteOrdering으로 Packet을 맞춤

  • 고객사에 Product 배포시 코드 노출을 막기 위해 Node.js 컴파일러 비교, 검토하여 세미나 발표

  • 자사 SDK를 사용하는 20여곳의 파트너사를 위해서 admin 페이지의 국제화를 적용

  • PM, 프리랜서 개발자 10명, 영업, 현업 고객사와 소통하며 커뮤니케이션 및 모바일키 서버 설계에 핵심을 당담

프로젝트명

하이원 리조트(강원랜드) - 스마트 체크인 솔루션

소속/기관명

(주)아임게이트

프로젝트 기간

2020.06. ~ 2021.03.

프로젝트 내용

기술
Node.js, Express.js, MySQL, Knex.js(QueryBuilder), CircleCI, Docker, Docker-Compose, HA 솔루션

설명
국내 최대 규모 하이원 리조트에 설치형 스마트 체크인 서비스를 제공했습니다.
대형 리조트의 고정된 업무 프로세스에 맞춰 Hospitality 서비스를 커스터마이징하여 Enterprise버전으로 만들었습니다.

성과

  • 고객 요구사항에 맞춰 Hospitality서버 API 커스터마이징

  • API 로그를 통해 병목되는 API 진단하고 진단 결과 쿼리가 문제인것을 확인 후 쿼리 개선 진행 (3000ms -> 505ms로 개선)

  • 고객사가 직접 SSL 인증서를 쉽게 교체할 수 있도록 Docker-Compose의 Bind Mount 설정과 SSL 갱신용 Shell Script 작성

프로젝트명

Allegion - Server

소속/기관명

(주)아임게이트

프로젝트 기간

2019.06. ~ 2020.05.

프로젝트 내용

기술
Node.js, Express.js, MySQL, Objection.js(ORM), DynamoDB, Serverless Framework, CircleCI, Terraform, Swagger, AWS(Lambda, APIGateway, S3, CloudFront, CloudWatch, Route53)

설명
시총 12조 글로벌 1위 도어락 회사 Allegion-Milre와 협업하여 Allegion의 브랜드 및 도어락과 아임게이트의 스마트 체크인 서비스가 통합을 이룬 프로젝트입니다.

성과

  • 신규 프로젝트에서는 기존 서비스의 장애 발생시 리소스 투입되는 비효율적인 문제를 해결하기 위해 신규프로젝트 진행시 Serverless 아키텍처를 적용하고 ServerlessFramwork들을 비교 검토하고 도입함

  • 테스트 주도 개발(TDD) 방식으로 꼼꼼한 서비스 API 작성(전체 테스트케이스는 약 739 개)

  • DB Table설계 및 DB 정규화 개선 진행(전체 테이블은 약 40개)

  • CircleCI를 이용하여 배포 자동화를 구축함

  • 인프라 스트럭처를 코드로 관리할 수 있도록 Terraform 도입

  • 글로벌 서비스를 위해서 국제화 적용함

프로젝트명

Allegion - AdminWeb

소속/기관명

(주)아임게이트

프로젝트 기간

2019.10. ~ 2020.05.

프로젝트 내용

기술
HTML, jQuery, Bootstrap, Axios, AWS(S3 & CloudFront, ACM)

설명
Allegion 서비스를 운용하기 위한 어드민 웹입니다.
Allegion 서비스의 히스토리 조회, 어드민 설정, 스태프 설정 등의 기능이 있습니다.

성과

  • FrontEnd 개발자가 잡아준 Layout안에서 화면 수정

  • 기존 페이지 복사 후 HTML, jQuery, Bootstrap 활용하여 새페이지 작성

  • Axios를 통해 서비스 API연동

프로젝트명

Hospitality - AdminWeb

소속/기관명

(주)아임게이트

프로젝트 기간

2017.06. ~ 2019.09.

프로젝트 내용

기술
HTML, Vue.js, Axios, CircleCI, AWS(S3 & CloudFront, ACM)

설명
Hospitality Service를 관리하기 위한 Admin Web입니다.

성과

  • FrontEnd 개발자가 잡아준 Layout안에서 화면 수정

  • 기존 페이지 복사 후 Vue.js를 활용하여 새 페이지 작성

  • Axios를 통해 서비스 API연동

  • Client Side Rendering을 위해서 CloudFront, S3를 이용하여 정적 호스팅 및 SSL 인증서 적용

교육

소속/기관명

방송통신대학교

종류 | 전공

대학교(학사) | 컴퓨터 과학과

재학 기간 | 재학 상태

2018.09. ~ 2021.09. | 졸업

소속/기관명

오산대학교

종류 | 전공

대학교(전문학사) | 인터넷 정보과

재학 기간 | 재학 상태

2012.03. ~ 2014.02. | 졸업

자격증

자격증명

정보 처리 기사

점수 | 발급기관

기사 | 한국산업인력공단

취득연월

2020.08.

대외활동

활동명

스터디 모임

소속/기관명

개인

연도

2023

내용

2023년부터 2024년까지 개발 관련 스터디 모임을 운영하며, 다양한 기술 서적을 함께 학습하고 지식을 공유했습니다.
Real MySQL 1, 2, 이펙티브 자바, 스프링 토비 등의 도서를 함께 읽고, 핵심 개념을 정리하거나 서로 퀴즈를 내고 맞추는 방식으로 진행했습니다. 이를 통해 데이터베이스 성능 최적화, 자바 프로그래밍 모범 사례 등을 깊이 있게 학습할 수 있었습니다.

자기소개

자기소개

의도적 수련을 실천하는 개발자

저는 책 ‘함께 자라기’에 나오는 의도적 수련을 실천하는 개발자입니다. 책 ‘함께 자라기’에서는 업무의 난이도 조정하며 본인의 업무에 몰입하면서 성장하는 의도적 수련법을 소개하고 있습니다. 이런 의도적 수련을 하면 일상적인 업무를 가운데에서도 몰입하고 끊임없이 성장할 수 있습니다. 저는 때로는 반복되는 업무 가운데에서도 의도적 수련을 수행하며 끊임없이 성장했습니다. 예를 들어 "이슈를 수정할 때는 테스트 코드부터 작성하여 이슈 재현하기", "VIM 사용하여 코딩 하기", "Commit 잘게 쪼개기", "실용주의 디버깅하기" 등 여러 부분에서 의도적 수련을 통해서 끊임없이 성장했습니다.

밸런스를 갖춘 개발자

저는 서버, 프론트엔드, AWS 인프라까지 폭넓은 영역을 경험하며 균형 잡힌 개발 역량을 갖추고자 노력하는 개발자입니다. 백엔드를 중심으로 개발하지만, 서비스의 전체적인 흐름을 이해하기 위해 클라이언트 개발과 인프라 운영까지 학습해왔습니다.
덕분에 새로운 기능을 개발할 때 단순히 백엔드 로직뿐만 아니라 서버 아키텍처, DB 설계, Redis 캐싱 전략까지 고려하여 더 안정적이고 효율적인 시스템을 구축할 수 있습니다. 예를 들어, DB 부하를 줄이기 위해 Redis를 활용한 캐싱을 도입하여 조회 성능을 개선한 경험이 있습니다. 하나의 문제를 다양한 관점에서 분석하고 최적의 해결책을 찾는 것이 저의 강점입니다.

꾸준히 성장하는 개발자

저는 매일 1일 1커밋을 실천하며, 스터디 모임과 강연 참석뿐만 아니라 혼자서도 꾸준히 성장하는 개발자입니다. 지금까지 20여 권 이상의 기술 서적을 읽었고, 이를 실제 업무에 적용하여 좋은 성과를 거두었습니다.
예를 들어, 회사에서 사용할 새로운 도구를 먼저 학습하고, 이를 팀에 도입하여 개발 생산성을 높인 경험이 있습니다. 또한, 배운 내용이 업무에 적용되어 이슈를 해결했을 때 스터디한 보람을 느낍니다. 최신 기술 트렌드를 따라가기 위해 정기적으로 웹 세미나와 개발 커뮤니티 활동에 참여하며, 다양한 개발자들과 의견을 교류하고 시야를 넓혀가고 있습니다.
작은 노력이라도 꾸준히 쌓아가며 더 나은 개발자가 되기 위해 끊임없이 정진하고 있습니다.

댓글