← 뉴스레터

2026-09-07

계정을 지울 수 있어야 다음 심사로 갈 수 있었습니다

9월 5일 22시 7분, 밥먹자 iOS 1.0.1이 다시 심사 대기 상태가 됐습니다. 계정을 지우는 과정을 담은 영상을 함께 보냈습니다. 그날 오후까지 앱에는 그 경로가 없었습니다.

앱을 만들다 보면 들어오는 길부터 만듭니다. 로그인하고, 화면을 둘러보고, 필요한 기능을 쓰는 길입니다. 밥먹자도 그랬습니다. 계정을 만든 사람이 나중에 나가고 싶을 때 무엇을 눌러야 하는지는 뒤로 밀려 있었습니다.

심사 대응을 시작하면서 그 빈칸을 확인했습니다. 설정 화면에 계정 삭제가 없었고, 서버에도 영구 삭제 요청을 처리할 경로가 없었습니다. 화면 한 장을 고치는 것보다 범위가 컸습니다.

삭제 버튼 뒤에 필요한 것들

버튼을 누르면 바로 모든 것을 지우는 방식으로 끝내지는 않았습니다. 삭제 의사를 확인하고, 필요한 인증을 거친 뒤 서버에 요청해야 했습니다. 네트워크가 끊겼을 때도 성공한 것처럼 화면만 닫혀서는 안 됐습니다.

앱의 설정 화면과 서버의 DELETE /me를 함께 연결했습니다. 확인 창, 재인증, 실패 안내까지 한 흐름으로 묶었습니다. 사용자가 보는 버튼과 실제 데이터를 처리하는 서버가 같은 일을 가리키도록 만드는 작업이었습니다.

구현과 심사 준비는 나눠 진행했습니다. 한쪽은 삭제 기능을 만들고, 다른 쪽은 iOS 빌드와 제출에 필요한 상태를 확인했습니다. 서로 다른 작업이지만 순서는 있었습니다. 서버와 앱의 기능이 준비돼야 삭제 과정을 녹화할 수 있었습니다.

테스트 다음에는 실제 서버가 있었습니다

계정 삭제 변경은 관련 테스트 86개와 서버 확인 31개를 거쳤습니다. 18시 48분에 변경을 합쳤고, 서버 배포도 이어졌습니다.

여기서 ‘완료’를 적는다면 무엇이 완료된 것인지 붙여야 했습니다. 코드가 합쳐진 것인지, 실제 서버에 반영된 것인지, 사용자가 설치할 앱에 들어간 것인지가 달랐거든요.

예를 들어 삭제 화면만 새 버전이고 서버가 이전 버전이라면, 사용자는 버튼까지 갔다가 오류를 만납니다. 서버만 먼저 바뀌어도 기존 앱에는 그 기능으로 들어갈 길이 없습니다. 이번에는 앱과 서버, 시연 영상이 연결되는 순서를 확인했습니다.

다시 제출했다는 말의 끝

심사 의견을 웹에서 다시 읽으려던 과정에는 로그인 장벽도 있었습니다. 확보하지 못한 원문을 읽었다고 쓰지는 않았습니다. 확인 가능한 상태와 준비된 자료를 바탕으로 다음 단계를 진행했습니다.

버전은 1.0.1, 빌드 번호는 5였습니다. 삭제 과정을 담은 영상과 심사 참고 내용을 붙이고 재제출했습니다. 22시 7분에 확인한 상태는 WAITING_FOR_REVIEW, 심사 대기였습니다.

그 상태가 iOS 출시를 뜻하지는 않았습니다. 실제로 다음 날에는 스크린샷 표시와 관련한 심사 후속 작업이 남았습니다. 한 번의 수정으로 모든 문제가 끝났다는 이야기로 닫을 수는 없었습니다.

기록에는 그래서 세 줄을 따로 남겼습니다. 계정 삭제 구현. 서버 반영. iOS 재심사 제출. 심사 결과와 후속 수정은 그다음 줄입니다.

배운 것

이번 작업을 통해 앱의 기능을 버튼 개수로 세지 않게 됐습니다. 버튼에서 시작해 인증과 서버 처리, 실패 안내까지 이어져야 사용자가 쓸 수 있는 기능이 됩니다.

운영 기록도 마찬가지였습니다. ‘끝냈다’는 한 단어를 쓰기 전에 어느 화면과 어느 서버, 어느 심사 단계까지 갔는지 확인하는 편이 다음 작업을 찾기 쉬웠습니다.

밥먹자의 계정 삭제는 그렇게 다음 심사로 넘어갈 수 있는 기능이 됐습니다. 다음에 확인할 것은 그 제출이 어떤 결과로 돌아오는지입니다.

당일 작업 기록 보기

— 강대종 / @ssamssae