PDF 다운로드

유동민

Flutter와 React Native 앱을 0→1로 출시해 온 4년차 크로스플랫폼 엔지니어입니다.

대한민국 서울한국어(모국어) · 영어(업무 활용 가능, 통역 없이 발표·청취)ydm2790@gmail.comhttps://donminzzi.kr/GitHub: AndrewDongminYooBlog: donminzzi.kr

Flutter와 React Native로 iOS/Android 앱을 0→1로 출시하고 운영까지 책임져 온 4년차 크로스플랫폼 엔지니어입니다. New Architecture 네이티브 모듈, 온디바이스 OCR, 결제 연동처럼 Swift·Kotlin 레이어가 필요한 일을 직접 구현하고, Apple Developer Relations와 직접 협의해 심사·결제 정책 이슈를 풀고 PG 3사 계약을 주도했습니다. 스타트업 환경에서 요구사항이 바뀌는 상황에서도 우선순위를 정해 빠르게 출시하고, 이후 데이터와 사용자 피드백으로 반복 개선하는 방식에 익숙합니다. 동시에 팀이 흔들리지 않도록 문서와 컨벤션, 자동화로 개발 흐름을 정리해 같은 품질을 지속적으로 낼 수 있는 구조를 만드는 데 강점이 있습니다. 이렇게 정리한 도구와 컨벤션을 팀에 공유해 전체 생산성을 끌어올리는 것을 지향하며, SDK와 개발 도구로 다듬은 것은 pub.dev·npm·VS Code Marketplace·Figma Community에 공개해 왔습니다.

경력

Team REmited · 리액트 네이티브 개발자

2026.04 – 2026.07
  • 2인 개발 체제에서 리워드 앱의 React Native 클라이언트 개발을 주도하며, 82일간 PR 144건을 통해 없던 테스트·기술 문서·CI 자동화 기반을 처음부터 세웠습니다. 이후 합류하는 개발자가 읽을 문서와 통과해야 할 게이트를 남기는 것을 산출물로 삼았습니다.
  • React Native New Architecture(TurboModule/Fabric) 마이그레이션과 RN 0.81 + Node 22 LTS 업그레이드를 주도해 완수했고, 배포 추적 태그 컨벤션을 설계해 15개 이상의 스토어 릴리즈와 19회 이상의 OTA 배포를 운영했습니다.
  • 온디바이스 영수증 OCR(ML Kit·VisionKit + Vision), 리워드 광고 SDK, 오퍼월 SDK를 감싼 네이티브 라이브러리 3종을 설계·개발해 영수증 인식 전처리를 서버에서 클라이언트로 옮겼습니다. Naver OAuth 2.0 로그인과 Google Play In-App Review + Apple StoreKit `requestReview`를 단일 API로 묶은 모듈도 Swift/Objective-C·Kotlin으로 구현했습니다.
  • Amplitude·AirBridge·Notifly·Firebase 4개 분석 SDK를 단일 `Analytics.track()` 인터페이스로 통합하고 직접 호출 30여 개 파일을 마이그레이션했으며, 이벤트 택소노미를 codegen 계약으로 고정해 드리프트 게이트를 세웠습니다.
  • Jira 이슈 220건을 담당·발제해 139건을 배포 완료했고 사용자 제보 14건을 해소했습니다. 광고 리워드 미지급의 근본 원인 3건을 분리 진단한 뒤 S2S 서버 콜백 구조를 설계했고, Crash Free Users 96.62% 시점에 크래시 티켓화 프로세스와 에러 리포팅 추상화를 도입했습니다.

CAMI Labs · 크로스플랫폼(Flutter) & 풀스택 개발자

2023.11 – 2026.01
  • 반려동물 행동/성격유형 검사 및 전문가 대면 서비스 플랫폼에서 Flutter(iOS/Android) 앱 0→1 런칭과 운영 안정화·지속 개선을 주도했습니다.
  • 결제/정책 이슈(Apple 리뷰/결제 정책)를 해결하고 PortOne 기반으로 3개 PG 결제를 구축해 출시와 확장(B2B/B2G) 기반을 마련했습니다.
  • 크래시·로그·행동 데이터(퍼널/리텐션) 기반으로 제품을 개선할 수 있는 관측 체계를 구축했습니다.
  • Riverpod/Freezed/go_router 기반으로 상태·모델·라우팅 복잡도를 구조적으로 관리했습니다.
  • 사용자 만족도 조사에서 UI/UX 긍정 응답 85%+를 달성했습니다.
  • Apple Developer Relations와 직접 미팅해 서비스 구조(국내 한정·오프라인 중개)를 설명하고, 앱 심사·결제 정책 이슈를 함께 해소했습니다.
  • PortOne 기반 결제 흐름을 표준화하고 `portone_flutter_v2` 패키지를 개발·배포했습니다.
  • PG 3종(Toss Payments/Toss Pay/Kakao Pay) 계약 및 연동을 주도했습니다.
  • Sentry + Crashlytics 기반 통합 로깅을 구축해 장애 원인 파악 시간을 단축했습니다.
  • Analytics + 세션 리코딩 + 이벤트 로그를 사용자 식별자 기준으로 연결해 퍼널/리텐션 분석 기반을 마련했습니다.
  • URL 기반 라우팅으로 복잡한 진입/복귀 흐름을 안정적으로 처리했습니다.
  • Universal App Links로 설치/딥링크 경험을 iOS/Android 공통으로 정리했습니다.
  • 비개발자 편집·배포 흐름을 구축해 컨텐츠 운영 시간을 줄였습니다.

위굴리 · 크로스플랫폼 모바일 앱 개발자

2023.05 – 2023.10

㈜위굴리는 부천 스마트시티 국토부 사업을 비롯해 공공주택 거주자 대상 카셰어링 플랫폼을 개발해온 모빌리티 스타트업입니다.

  • 기존 앱의 Android SDK 이슈 대응 및 신규 Flutter 앱 런칭을 단기간에 주도하며 전체 앱 품질과 성능을 개선했습니다.
  • 피그마 디자인 시스템을 기반으로 컴포넌트화된 UI를 신속하게 개발해 개발 기간을 30% 이상 단축했습니다.

지바이크 · React Native 개발자

2023.01 – 2023.04

지바이크는 국내외 50개 도시에서 전동킥보드 공유서비스 '지쿠터'를 운영하는 모빌리티 스타트업입니다.

  • 기기별 지원되는 센서를 기반으로 계산한 실시간 보행 데이터를 구독하는 리액트 네이티브 모듈을 직접 개발했습니다.
  • TurboModule, Hermes, Flipper 등 최신 네이티브 모듈 아키텍처와 성능 모니터링 도구를 직접 활용해 성능 최적화 경험을 쌓았습니다.
  • iOS의 CMPedometer와 Android의 SensorManager를 결합하여 걸음 수 측정 데이터를 크로스 플랫폼에서 통합 처리할 수 있는 네이티브 모듈을 개발했습니다.
  • Android API 19 이하 기기까지 지원하기 위해 저수준 가속도계 데이터를 기반으로 AOSP 걸음 검출 알고리즘을 응용해 측정 정확도를 높였습니다.
  • React Native Turbo Module 기반 구조로 제작해 JS-Native Bridge 병목을 줄이고 응답 지연을 개선했습니다.
  • Hermes, Flipper 기반 성능 추적으로 메모리 사용량과 런타임 동작을 모니터링하며 최적화했습니다.

비사이드코리아 · 백엔드/모바일 개발자

2022.05 – 2022.11

비사이드코리아는 소액주주들이 투자한 기업에 대해 주주 인증 및 결집, 전자서명을 통해 행동할 수 있는 주주 행동주의 플랫폼입니다.

  • Flutter 기반 앱과 RedWoodJS 기반 웹의 전반적인 개발에 참여했으며, 백엔드와 모바일 양쪽의 요구사항을 모두 이해하고 구현했습니다.
  • Flutter 앱은 시즌 중 의결권 위임, 비시즌에는 보유 주식 자동 인증 및 라운지 집결 기능 중심으로 설계되었습니다.
  • Kotlin/Swift 기반 네이티브 기능 연동과 GraphQL API를 통해 고도화된 데이터 연계 기능을 구현했습니다.
  • 사용자 1,500명 이상이 실제 의결권 위임 절차에 참여, 사용자 피드백 평균 만족도 4.5점 기록.
  • 플러터를 사용해 소액주주들에게 캠페인 진행 특정 주식의 의결권을 전자서명으로 위임받아, 주주들의 의견을 집결해 자산운용사가 주주총회까지 전달하는 서비스를 하였습니다.
  • 플러터의 머터리얼 UI와 공식 패키지들을 사용해 메인 컴포넌트를 꾸미고, 의결권 위임을 위해 주민등록증 촬영, 전자 서명 저장, 투표 등을 구현했습니다.
  • Kotlin(Android) 및 Swift(iOS)를 활용해 외부 스크래핑 및 공인인증서 모듈과 연동하는 네이티브 브리지 코드 작성.

프로젝트

flutter_receipt_scanner — Flutter 영수증 스캔·온디바이스 OCR 플러그인

2026.07

iOS·Android에서 영수증 이미지 획득, 크롭, 방향 보정, JPEG 압축, EXIF 추출, 온디바이스 OCR을 제공하는 Flutter federated 플러그인입니다(pub.dev: https://pub.dev/packages/flutter_receipt_scanner).

  • 앱 대면 패키지·플랫폼 인터페이스·iOS/Android 구현으로 나눈 federated 구조로 설계했고, 플랫폼 메시지 계약은 Pigeon으로 생성합니다.
  • iOS는 VisionKit 문서 스캐너 + Vision OCR로, Android는 GMS 문서 스캐너 + ML Kit OCR로 카메라·갤러리 경로를 모두 구현했고, Dart 쪽 OCR floor 게이트가 인식 품질 미달 촬영을 걸러냅니다.
  • 매장명·금액·날짜 파싱, 업로드, 클라우드 OCR은 앱의 책임으로 남기고 네이티브 계층은 이미지 프리미티브만 담당하도록 경계를 그었습니다. 기획부터 네이티브 구현과 pub.dev 배포까지 end-to-end로 책임졌습니다.

react-native-receipt-scanner — React Native 영수증 스캐너 라이브러리

2026.05

ML Kit(Android)과 VisionKit + Vision(iOS)을 단일 API로 감싼 React Native 영수증 스캐너입니다(npm: https://www.npmjs.com/package/react-native-receipt-scanner).

  • New Architecture 전용으로, iOS는 JSI를 통해 Android는 codegen이 생성한 스펙을 통해 호출되며 레거시 브리지 경로가 없습니다. 결과 이미지는 base64 없이 `file://` URI로만 반환합니다.
  • 카메라·갤러리 스캔, 인터랙티브 perspective-crop, JPEG 압축, EXIF 추출, 한국어와 라틴 문자 온디바이스 OCR을 네트워크 호출이나 외부 API 키 없이 제공합니다.
  • 기존 문서 스캐너 라이브러리들이 비워 둔 온디바이스 OCR과 양 플랫폼 TurboModule 지원을 목표로 삼았고, 설계·네이티브 구현·npm 배포까지 직접 수행했습니다.

Merry — Dart/Flutter 스크립트 매니저 & VS Code 확장

2026.03

Merry는 Dart·Flutter 프로젝트에서 길고 외우기 어려운 스크립트를 단축 이름으로 정의해 실행하는 스크립트 매니저입니다(pub.dev: https://pub.dev/packages/merry).

  • derry에서 출발했지만 다수의 기능을 추가했고, 기존 에코시스템에 편입하기 위해 VS Code 확장 vscode-merry를 함께 만들었습니다.
  • vscode-merry는 스크립트 정의를 VS Code Explorer 안의 탐색 가능한 UI로 보여줘, YAML 파일과 터미널을 오가지 않고도 발견·확인·실행할 수 있게 합니다(VS Code Marketplace 퍼블리시).
  • Dart 패키지(merry)와 VS Code 확장(vscode-merry)의 설계·구현·배포를 직접 수행했습니다.

react-native-step-counter — React Native 걸음 수 측정 라이브러리

2023.01

Android의 StepCounter 센서와 iOS의 Core Motion으로 사용자의 걸음 수를 구독하는 React Native 라이브러리입니다(npm: `react-native-step-counter-newarch`).

  • GitHub 스타 44개·포크 21개로 개인 OSS 중 가장 널리 채택된 라이브러리입니다(2026년 7월 기준).
  • 걸음 센서가 없는 Android 기기는 가속도계 폴백으로 처리해 지원 기기 범위를 넓혔고, iOS는 Core Motion의 CMPedometer를 사용합니다.
  • TurboModule 구조로 제작했고 별도 문서 사이트를 함께 운영하며, 설계·네이티브 구현·npm 배포까지 직접 수행했습니다.

기술

Core Skills

  • Flutter
  • React Native
  • TypeScript

Skill Tags

  • Flutter
  • React Native
  • TypeScript
  • NestJS
  • Figma
  • Firebase
  • Supabase
  • iOS
  • Android
  • Swift
  • Kotlin
  • OpenAPI
  • Pigeon
  • TurboModule

활동

Elevating Code Quality with Trunk Check

2024.03

Trunk Check로 린트/포맷/보안 점검 자동화 및 개발 워크플로 개선 사례 공유

Trunk는 시작일 뿐: Flutter 개발 환경 자동화 실전기

2025.04

Flutter 개발 환경 자동화와 CI 연동을 통한 품질·속도 개선 경험 공유