- 보너스잡 포커스 게재 상품화, 포인트 결제, 회계 자동화 구축 (2025.05~2025.06)
자사 계약 기업만 공고를 올리던 B2B 대행형 보너스잡에 모든 기업이 직접 공고를 등록할 수 있는 셀프-서비스 기능을 추가하기 위해, `포커스 게재(메인 노출)` 유료 상품을 도입하고 포인트 충전, 차감, 환불 도메인을 설계했습니다. 포인트 상태를 통합, 세분화해 결제 흐름과 환불 로직을 안정적으로 구현하고, 메이크빌 API를 연동해 세금계산서 발행, 재전송, 취소를 자동화했습니다. 슈퍼 유저권한으로만 입금 확정이 가능하도록 하고, 다중 상태 검색, 통계 API를 제공해 회계, 정산 업무를 간소화했습니다.
- 운영 효율화를 위한 통합 모니터링 시스템 도입 경험
체계적인 시스템 모니터링 환경이 없던 상황에서, 클라우드 비용 절감과 인프라 가시성 강화를 목표로 통합 모니터링 시스템을 직접 설계하고 구축했습니다. 컨테이너 기반 인프라 환경에서 cAdvisor, Prometheus, Grafana, Windows Exporter 등 오픈소스 도구를 선정하여, 온프레미스와 클라우드(AWS EC2) 환경을 모두 통합 관리할 수 있는 실시간 모니터링 아키텍처를 도입했습니다. Docker Compose를 활용해 각종 모니터링 컨테이너를 효율적으로 관리하고, Prometheus Alert Manager와 연동하여 장애 발생 시 즉각적인 대응이 가능하도록 시스템화했습니다. 또한 Grafana 대시보드를 통해 서버, 컨테이너, 데이터베이스 등 다양한 리소스의 상태를 실시간으로 시각화하였으며, 대시보드 템플릿화로 유지보수성과 확장성을 높였습니다. 이를 통해 운영 효율성과 장애 대응력이 크게 향상되었고, 클라우드 비용 최적화의 기반을 마련할 수 있었습니다.
- 클린베테랑 현대화 (2025.03~2025.04)
DB 프로시저와 함수를 직접 호출하는 레거시 구조로 인해 코드 복잡도와 DB 종속성이 매우 높았음 또, Controller 레벨에서 new 키워드를 사용해 객체를 생성하는 등, 표준 매핑 방식을 지키지 않아 오류 추적이 어려웠음. 따라서 JPA와 서비스 계층 도입을 통해 DB 프로시저 기반 로직을 RESTful API로 전환, @GetMapping·@PostMapping등 명확한 HTTP 메서드 매핑 및 Spring DI 적용으로 표준화된 아키텍처를 구축, 컨트롤러 별 코드를 20% 이상 정리 (직접 객체 생성 제거 및 중복 어노테이션 사용 감소) 그 결과로 DB 의존성이 낮아지며 DB 호출량이 감소, 코드 가독성과 협업 효율이 높아져, 신규 기능 추가 시 소요되는 개발 시간이 단축됨
- 스카우트 글로벌 서비스 (2025.02~2025.03)
외국인 취업 공고를 제공하는 신규 서비스에서, 복잡한 쿼리 로직으로 API 응답 지연 및 잦은 DB 접근이 발생함 또, CRUD API 구조가 비즈니스 로직과 뒤섞여 있어 확장시 오류가 빈번하였음. 따라서 SpringBoot와 JPA 기반으로 도메인·레포지토리·서비스 계층을 명확히 분리하고, RESTful 규약을 준수하는 CRUD API를 설계하였고, QueryDSL과 CaseBuilder를 활용해 다중 쿼리를 단일 쿼리로 통합하여 중복 로직 제거 및 DB 접근 횟수를 최소화 하였음 그 결과로 API 응답 속도가 향상되고 DB 접근 횟수가 절반으로 감소하여 가용성을 확보했음
더보기