디자이너가 시안 대신 앱을 만든 이유
토스 UX 디자이너가 AI를 협력자로 삼아 피그마 시안 대신 실제 SwiftUI 코드로 iOS 앱을 직접 구현한 경험을 다룬다. "데드엔드" 화면(송금·결제 완료 등)을 다음 경험의 시작점으로 전환하는 underlay 컴포넌트를 설계하면서 Metal 셰이더 구현까지 디자이너가 주도했고, 완성된 코드를 개발팀에 전달해 협업 방식 자체를 바꿨다.
토스 UX 디자이너가 AI를 협력자로 삼아 피그마 시안 대신 실제 SwiftUI 코드로 iOS 앱을 직접 구현한 경험을 다룬다. "데드엔드" 화면(송금·결제 완료 등)을 다음 경험의 시작점으로 전환하는 underlay 컴포넌트를 설계하면서 Metal 셰이더 구현까지 디자이너가 주도했고, 완성된 코드를 개발팀에 전달해 협업 방식 자체를 바꿨다.
더핑크퐁컴퍼니가 영유아용 베베핀 타운 앱에 AR 기능을 넣으려면 iOS/Android 양쪽 디바이스에서 안정적으로 동작하고 개인정보 규제도 통과해야 한다.
일일 400만 명이 사용하는 알라미 iOS 앱에서 반복 작업(빌드·테스트·PR 생성·배포)이 개발 속도를 제한했다.
일일 400만 명이 사용하는 알라미 iOS 앱에서 반복 작업(빌드·테스트·PR 생성·배포)이 개발 속도를 제한했다.
임베디드 개발자로 시작해 iOS로 전환 후 광고 SDK처럼 낯선 도메인을 빠르게 익혀야 했다.
리멤버 iOS 앱이 UIKit 기반의 레거시 코드와 SwiftUI 신기능 사이에서 점진 이행을 결정해야 했고, 두 프레임워크 공존의 허들이 누적되어 있었다.
대규모 iOS 설정 화면을 모든 종류의 UI 요소(텍스트 / 스위치 / 링크 / i18n) 와 함께 다루기 어렵다.
Kotlin Multiplatform (KMP) + Compose Multiplatform (CMP) 이 프로덕션 환경에서 정말 쓸 만한지 의문이 많다.
피처 모듈을 독립시키려면 상품 카드 캐러셀·헤더·배너 같은 공통 UI 컴포넌트를 분리해야 했지만, 서버 드리븐 환경에서 어떤 컴포넌트가 있는지 한눈에 볼 카탈로그가 없어 중복 개발과 QA 범위 정의가 어려웠다.
Android·iOS 앱이 동일한 식별자를 사용해 한 기기에 개발·운영 앱을 동시 설치할 수 없어 환경 혼동에 따른 휴먼 에러와 커뮤니케이션 비용이 발생했다.
iOS26에서 Safari 주소창 디자인 변경으로 채널톡 메신저 열림 시 주소창 아래 영역에 구멍이 생겨 뒤 사이트가 보이는 문제가 발생했다.
Vercel 이 AI 생성 도구 v0 의 iOS 앱 개발 과정을 상세히 공개했다. React Native + Expo 를 선택하고 채팅 UI 특유의 7가지 기술 도전—메시지 애니메이션, blank size 계산, 키보드 6가지 시나리오, TextInput 네이티브 패치, 스크롤 안정성, 스트리밍 콘텐츠 애니메이션 풀—을 해결하는 과정과 React Native 오픈소스 기여까지 담았다.
하이브리드 앱에서 네이티브-웹 통신 문제 디버깅을 위해 매번 Xcode 빌드가 필요하고, 피처 플래그 수정 시 프로덕션 환경을 직접 건드려야 하는 위험 존재
UIView.animate·UIViewPropertyAnimator 사용 시 CATransaction 잔존·레이아웃 연쇄 반응·타이밍 충돌·비애니메이션 속성 한계·취소 어려움 등 5가지 비의도적 동작 발생
모바일 앱 테스트는 OS 버전·해상도별로 실제 기기가 필요하다. 기기 관리·할당 비용이 커지고, 기획자·디자이너도 테스트 환경 구축에 시간을 쓰게 된다.
ConnectWave 통합 계정 정책상 앱당 Distribution Provisioning Profile은 1개만 유지해야 했고, CI 기기에 두자니 장비 교체에 약했으며 Jenkins로 관리하자니 네트워크 분리 때문에 원격 접근이 막혔다.
낯선 iOS 코드베이스에서 버그를 반복 수정하거나 새 기능을 빠르게 추가하는 데 Cursor 등 기존 AI 툴이 한계를 드러냄.
iOS 앱 설치 용량이 257MB로 크고, 앱 크기 증가가 신규 사용자 전환율에 직접 영향을 미침.
iOS 채팅 입력기에서 텍스트 서식 기능을 구현할 때 한글·일본어의 자음-모음 조합 중간 상태가 모두 감지되어 서식 적용 의도 파악이 불가능했다.
iOS 개발자에서 QA 엔지니어로 직무를 전환하며 이론적 QA(버그 발견 중심)와 실제 QA(기획 단계부터 리스크 예방)의 차이를 체감하고 역할 인식을 새로 정립해야 했다.