박우찬

iOS Engineer

대출 비교 플랫폼에서 복잡한 금융상품 신청 플로우를 설계하고 구현해왔습니다. API 전환, 상태 관리, WebKit 연동, 모듈화, 운영 지표 개선을 제품 흐름 안에서 연결하며 변경에 강한 iOS 앱 구조를 만드는 데 집중합니다.

[email protected] +82 10-5131-9925

Experience

(주) 핀다

금융상품 팀 · iOS Engineer

2022.08 - Present

차세대 API 전환과 대출 신청 플로우 구현 담당

비교대출, 주택담보대출, 사업자 대출, 국민은행 전용관 등 금융상품별 신청 흐름을 담당했습니다.

  • 비교대출 플로우의 61개 API를 차세대 API 서비스 기준으로 전환하고, 50여개 영향 화면의 응답 구조, 에러 처리, 화면 분기 로직을 새 기준에 맞춰 구현했습니다.
  • 신규 응답 구조와 예외 조건을 바탕으로 843개 수동 개발자 테스트 케이스를 설계·수행해 긴 신청 과정의 상태 전환과 화면 진행을 검증했습니다.
  • 상품별 심사 상태와 예외 분기가 다른 대출 신청 플로우를 구현하고, 한도조회 진행 화면에는 폴링 기반 상태 갱신과 실패·에러·백그라운드 복구 흐름을 반영했습니다.
  • 금융상품 전체 플로우의 이벤트 로그 250여개를 전수 조사해 주요 전환 지점의 누락·오류를 개선하고 퍼널 분석 신뢰도를 높였습니다.

대출 신청 화면 모듈화와 MVI 구조 전환

대출 신청 화면의 상태 관리와 화면 전환 로직을 계층화하고, 기능 변경의 영향 범위를 화면 단위로 줄였습니다.

  • 120개 이상 모듈로 구성된 Tuist 기반 Multi-module 환경에서 35개 화면 모듈의 경계를 정의하고 Interface/Implementation 분리로 컴파일 타임 의존성 방향을 통제했습니다.
  • API 호출, 상태 분기, 화면 전환 로직이 ViewController에 집중되어 있던 63개 대출 신청 화면을 ReactorKit 기반 MVI 구조로 전환했습니다.
  • 반복 가능한 모듈화 작업 체계를 설계하고, Claude Skills로 의존성·영향도 분석과 모듈 구성 작업을 자동화해 반복 모듈화 리드타임을 1.4md에서 0.3md로 단축했습니다.

운영 안정성, 보안, 성능·생산성 개선

사용자 안정성과 개발 생산성에 직접 닿는 지표를 분석하고 개선했습니다.

  • 런타임 누수 탐지 체계와 메모리 경고 로깅을 추가해 누수 계측성을 높이고, 확인된 메모리 누수 15건을 해결해 최근 6개월 평균 crash-free rate 99.9% 수준 유지에 기여했습니다.
  • 앱 전반의 개발 Harness를 구축해 테스트 데이터 준비와 화면 상태 재현을 표준화하고, 기능 개발 중 반복 확인 시간을 단축했습니다.
  • 모의해킹 결과를 바탕으로 민감 정보 응답의 로컬 캐시 저장 경로를 점검하고, 캐시 정책 적용 후 cache.db와 cache.db-wal 조회로 미저장을 검증했습니다.
  • Swift 컴파일 로그에서 타입 검사 병목을 찾아 코드 구조를 개선해 전체 빌드 시간을 20% 단축했습니다.

WebKit 기반 Native-Web 연동 경험

FE팀과 협업해 하이브리드 앱 화면의 Native-Web 메시지 처리, 웹 컨텐츠 로딩, 네이티브 제스처 처리 경계를 다뤘습니다.

  • FE팀과 협업해 미사용 JavaScript handler 25개를 식별·제거하고, 공통 handler와 화면 전용 handler를 정의해 Native-Web 메시지의 화면별 노출 범위를 제한했습니다.
  • HTML 오버레이가 표시된 WebView에서 WebKit 내부 제스처 인식기와 WebView를 담은 ViewController의 제스처 인식기가 터치 시퀀스를 경쟁 처리하던 문제를 분석하고, WKWebView loading 상태와 제스처 인식 조건을 조정해 화면 진행 차단을 해결했습니다.