2025 우리FIS 아카데미 최종 프로젝트 1등 수상작! 당신의 일상이 금리를 결정합니다, FLEXRATE!
FLEXRATE는 국내 최초로 고객의 소비 패턴을 자체 AI가 분석하여, 건전한 소비는 금리 인하로, 과소비는 금리 상승으로 즉각 반영하는 동적 금리 시스템을 도입했습니다. 이를 통해 청년층이 자신의 소비 습관에 따라 직접 금리를 관리할 수 있으며, 기존의 전통적인 신용평가와 다른 새로운 금융 경험을 제공합니다.
| 이름 | Github 프로필 | 역할 |
|---|---|---|
| 유승한 | ryuseunghan | PM, Backend, AI |
| 권민지 | mjgwon24 | Backend 팀장, Frontend, Infra |
| 서채연 | seocylucky | Frontend 팀장, Backend, QA |
| 허연규 | HeoYeonGyu | Backend, Frontend, 정책 문서 |
| 윤영찬 | yyc0026 | Backend |
- 메인 화면에 노출되는 상환액은 사용자의 대출 원금, 최신 금리, 총 대출 기간을 통해 원리금 균등 상환 공식으로 산출
- Google Mail SMTP를 활용한 이메일 인증
- NICE 기반 기존 신용평가 방식과 자체 소비 패턴을 종합적으로 반영해 신용 점수 산출
- 대출 신청시, 초기 금리를 예측해주기 위해 실제 카드 소비 데이터 10만건을 바탕으로 머신러닝 기반 금리 예측 모델 구현하여 사용
- 민감한 금융 거래 단계에서는 추가로 6자리 PIN번호 인증을 적용해 다중 인증 MFA 체계 구현
- 매월 1일 자정마다 스케줄러가 자동으로 실행되어, 각 회원의 한 달 소비 데이터를 OpenAI로 분석한 맞춤형 소비습관 리포트도 생성
- 소비습관 리포트의 카테고리별 소비 통계 컬럼은 json type으로 관리하여 복잡한 통계 정보를 효율적으로 다룸과 동시에 공간 효율성 상승
- 대출 상태는 '신청, 심사, 거절, 실행, 종료' 총 5개로 관리
- 관리자 페이지에서의 조회 API는 Spring Data의 페이징 기능을 활용해 대용량 데이터도 빠르게 조회할 수 있도록 구현
- 복잡한 검색 조건과 동적 쿼리 처리를 위해 QueryDSL 사용
- 필터 기능을 위해 BooleanBuilder와 CaseBuilder를 조합해, 각 조건이 있을 때만 쿼리에 반영되도록 설계
- 대출 승인, 금리 변동 등 주요 이벤트는 SSE 기반 실시간 알림으로 제공
- 로그마다 traceId, pageId, loginId 식별자를 MDC를 통해 추가하여 ‘어떤 사용자가, 어떤 경로에서, 어떤 흐름으로 문제를 겪었는지’를 정확하게 추적
- 로그 수집 과정에서 불필요하게 로깅 코드가 반복되지 않도록 스프링의 Resolver, Interceptor, 그리고 AOP를 활용하여 공통 로깅 로직 분리
- 워터폴 형태의 API 호출과 대형 라이브러리 일괄 로드로 인해 성능 점수 저하(라이트하우스 기준 55점)
- prefetchQuery와 HydrationBoundary를 적용해 SSR 단계에서 병렬 프리패치 진행
- antd의 모듈 단위 import 적용, 이미지 사전 로드 진행
- 23.9초 -> 1.0초로 LCP 수치 95% 개선, 라이트하우스 성능 점수 55점 -> 92점으로 67% 향상
| 개선 전 | 개선 후 |
|---|---|
![]() |
![]() |
| 초기 번들 최적화 개선 전 | 초기 번들 최적화 개선 후 |
|---|---|
![]() |
![]() |
- Swagger를 통한 실시간 문서화와 검증
- 와이어프레임부터 컴포넌트 단위까지 일관된 디자인 시스템 적용









