검색 결과는 입력창 다음에 링크 목록으로 표시됩니다.

사례 1 — 기획서.hwp에서 App Store 판매중까지 (22개월)

근거 확인된 출처성숙도 22개월 · App Store 판매중 실측

문제

혼자서 기획→백엔드→모바일→심사→배포→재심사까지 전부 해야 했다 (거절 3회 포함).

해결

Flutter 전환 + ASC API 제출 자동화 + 서명 파이프라인 구축.

결과

Moon Whisper App Store 판매중(READY_FOR_SALE), 재제출이 당일 처리되는 체계 확립.

배경과 시기

  • 2024-11-09 Initial commit, 11-11 Create Moon_Whisper 기획 (1).hwp — “달에게 쓰는 혼잣말 감정일기” 기획.
  • 초기 스택: Spring Boot 백엔드 + 웹. 혼자서 기획·개발·운영 전부 담당.
  • 리스크: 1인이라 심사 거절·서명 오류 같은 "코딩 밖의 벽"에 대비된 절차가 없었다.

방향이 바뀐 순간

  • 백엔드가 안정된 뒤에도 모바일 경험이 없으면 기획의 핵심(하루 끝 조용한 기록)이 전달되지 않는다는 판단 → Flutter 전환 결정(2025-03-28 Create flutter1.0.0.zip).
  • 심사를 두 번째 거절당하며 깨달은 것: 거절은 운이 아니라 데이터다 — 거절→수정→재제출 이력을 체계화하면 다음 심사가 빨라진다. 이때부터 모든 제출을 API로 남기기 시작.

목표

  1. iOS + Android 동시 배포 체계 (기한: 분기 내)
  2. 심사 제출을 재현 가능한 절차로 (수동 작업 제거)
  3. 거절 3회 이력을 정리해 통과 루트 확보

결정한 것과 버린 것

  1. Spring 유지Flutter 전환

    Flutter 선택

    Flutter 선택. 이유: 감정일기의 핵심은 “하루 끝 3분” 모바일 경험이고, 로컬 알림(flutter_local_notifications, 2025-12-18 커밋)이 필수였기 때문.

  2. 웹 콘솔 수동 제출ASC(iris) API 자동화

    API 선택

    API 선택. 이유: 3개 앱을 반복 제출해야 했고, 제출 전문을 증거로 남기고 싶었다 (결과: 9,100줄 요청·응답 보존).

  3. 자동 서명 프로필수동 distribution signing

    자동을 시도했다가 실패, 수동으로 전환 후 identity 정렬로 마무리 (2026-08-19, refs #410). 이 3단 시행착오는 아래 Failure 섹션.

만든 것

  • Flutter 앱 (iOS + Android), 로컬 알림, 클라우드 복구
  • ASC API 제출 자동화 스크립트 — 제출·상태 조회·재제출
  • GitHub Actions 서명 업로드 파이프라인 (feat(apps): enable signed mobile store uploads)
  • 스토어 메타데이터 정본 3종 — “좋아요·답장·알림 없음” 조용함 차별화 축 (APP_STORE_META.md)
Flutter CI/CD — bump-version 뒤에 deploy-android·deploy-ios 가 병렬로 돈다
Flutter CI/CD — bump-version 뒤에 deploy-android·deploy-ios 가 병렬로 돈다

지표 — 전과 후

  1. 스토어 상태

    미출시READY_FOR_SALE (판매중)

    출시 달성

    asc_summary_after_submit.json

  2. 심사 제출

    웹 콘솔 수동iris API 자동화

    절차화

    asc_official_api.json (9,100줄)

  3. 플랫폼

    웹만iOS + Android

    2플랫폼

    APP_STORE_META.md (Bundle ID 2종)

  4. 거절 대응

    즉흥 수정거절→수정→재제출 이력 체계

    3회 경험 축적

    ios_review_recovery_2026_07_06/ 폴더

  5. 다운로드·매출

    —NOT_VERIFIED (비공개)

    정책상 비공개

실패한 가설과 대응

  • 가설 1: “자동 서명 프로필이면 끝”

    → 실패. 빌드는 되지만 업로드 거부. → 수동 signing으로 전환.

  • 가설 2: “수동이면 끝”

    → identity 불일치 재발. → align project release signing identity로 정렬해 종결.

  • 교훈

    iOS 서명에 "한 번 고침"은 없다. 시도마다 커밋으로 남긴 것이 3번째 시도에서 10분 만에 해결하게 만든 이유.

면접용 2분 답변

  1. 상황

    “1인으로 감정일기 앱을 기획하고 출시까지 갔고, 심사에서 세 번 막혔습니다.”

  2. 과제

    “제 역할은 기획부터 심사 대응까지 전부였고, 특히 심사 제출을 재현 가능하게 만드는 것이 과제였습니다.”

  3. 행동

    “Flutter 전환을 선택했고, 웹 콘솔 대신 ASC API로 제출을 자동화했습니다. 서명 오류는 자동→수동→정렬 세 단계를 커밋으로 남기며 좁혔습니다.”

  4. 결과

    “Moon Whisper가 App Store에서 READY_FOR_SALE 상태로 판매중이고, 재제출이 당일 처리되는 체계가 남았습니다. 거절 이력 3건도 자산이 됐습니다.”

증거

주장 증거
판매중 asc_summary_after_submit.json — 1.4.0/1.0 READY_FOR_SALE
거절 이력 같은 파일 1.4.1 REJECTED 병기
API 자동화 asc_official_api.json 9,100줄
서명 해결 커밋 연쇄 2026-08-19 (refs #410, 5커밋)
스토어 카피 APP_STORE_META.md 차별화 축

다음으로

  • 출시는 코딩 30% + 절차 70% — 절차를 자동화한 사람이 이긴다
  • 거절 기록은 다음 심사의 지도다

이후 이어진 이야기