허석호

허석호님의 아티클

허석호

허석호

결제, 웹 관리자 페이지 포함된 Flutter 앱 600 만원에 만들어서 출시까지 해드려요

안녕하세요! 개발자 허석호 입니다

최근 AI 와 Flutter 의 발전으로 앱을 만드시는 분이 많아진 것 같아요

하지만 아직은 AI 가 부족한 부분이 있어서 앱의 규모가 커지고 복잡해질수록 비개발자 입장에서 어려운 부분이 있어요

그래서 그런 분들을 위해 최대한 낮은 가격에 결제, 웹 관리자 페이지까지 포함된 모바일 Flutter 앱을 만들어주면 좋겠다는 생각이 들었어요

금액은 고민을 많이 했지만 600 만원이 적정 수준 이였습니다

기존 시장 가격보다 많이 낮아서 믿기 어려운 가격같지만  개인이라 유지비도 안 들고 매일같이 만들다보니 들이는 공수가 줄어들어서 충분히 가능한 금액이에요

그리고 도와주는데 많은 비용을 받는 것 또한 말이 되지 않는다고 생각했습니다

앱의 수준은 로그인, 회원가입, 핵심 기능(많이 까다롭거나 복잡한 정도는 아닌), 결제 또는 구독에 웹 관리자 페이지가 있는 정도에요

쉽게 생각하면 식당 주문 앱 정도를 생각하시면 될 것 같아요

앱의 디자인은 앱 로고와 디자인 원본 제공을 제외하고 제공해드려요

작업 공수가 들고 특히 앱 로고의 경우 조금 까다롭다 보니 공수가 많이 들어 제공해드리긴 힘든 부분이 있어요

iOS, 안드로이드 앱 출시도 해드리고 기간은 2개월 입니다

앱이 너무 밀리면 진행하기 힘들어서 선착순으로 5개를 우선 진행하려고 해요

혹시 관심있거나 포트폴리오가 궁금하신 분은 편하게 문의주세요

https://open.kakao.com/o/sqWRv0vh

감사합니다!

1
0
허석호

허석호

커피챗 해요!

안녕하세요! 프리랜서 개발자 허석호 입니다

Flutter, Python, AWS 등을 이용해서 앱 개발을 하고 있어요

최근에는 주로 크몽, 위시켓 등의 온라인 플랫폼에서 외주를 구하고 있어요

크몽은 단가 자체가 많이 낮아서 아쉬운 점이 많고 위시켓은 법인이 주로 일을 가져가는 곳으로 보여서 개인 프리랜서가 일을 구하기 쉽지 않더라구요

복기하며 정비중인데 목표로 가기에는 조금 느리고 효과적인 방법은 아니라는 생각이 들어요 

다른 분들은 다른 방법으로도 온라인으로 일을 받긴 하는거 같은데 지금 제 정보력에는 뾰족한 수가 잘 보이진 않는 것 같아요

오프라인에서 명함을 주고 받으며 얼굴을 비추며 고객을 찾는 것 또한 많이들 하고 있다고 해서 최근 관심이 있습니다

발로 뛰는 건 구식이라고 생각하기도 하지만 큰 금액을 쓰는 일인 만큼 직접 만나 얘기하는 것이 아직 많은 효과를 주는 것 같더라구요

회사 생활할때 맺은 인간관계로 일을 따는 경우도 많다고 들었어요

인간관계를 미리 쌓지 못 해서 아쉬움만 남네요 😭

그 외에도 다른 프리랜서분들을 일을 어떤 식으로 받는지, 고객 유치는 어떻게 하는지 궁금해서 글 남겼어요

언제든 커피챗 환경합니다!

댓글 남겨주시거나 메세지 주시면 좋을 것 같아요

1
2
허석호

허석호

이악물고 어떻게든 “디지털 노마드” 하겠습니다

안녕하세요! 태풍 2번, 홍수 1번의 재해를 겪으며 베트남 다낭에서 살고 있는 개발자 허석호 입니다

인천에서 하노이로 출발할때 태풍으로 인한 2시간 연착, 하노이에 있으면서 태풍이 와서 3일간 라면만 먹으며 버티기, 태풍 바로 뒤 홍수로 직접적인 피해는 없었지만 다시 하루 라면만 먹으며 버티기 했었습니다 🫠

하노이에서 다낭으로 가려고 할때 마침 다낭에 태풍이 상륙한다는 소식이 있어서 비행기 결항 걱정했는데, 다행히도 비행기 뜨기 몇시간 전에 지나갔었네요

IMG_5343.jpg

태풍 지나가고 찍은 하노이 시내 풍경이에요 나무가 뿌리부터 들려 완전히 쓰러졌습니다

자연 재해마저 저를 해치우지 못 했네요 이제 우주적 스케일 정도만이 저를 어떻게 할 수 있어요 😎

저는 투자를 집행하며 가장 최고점 시기일때의 스타트업을 그만두고 해외에서 유유자적 하며 살고 있어요

특히 마지막이였던 노코드 스타트업은 인생에서 가장 재미있던 시간 중 하나였습니다

다양한 도메인의 앱을 만들면서 노코드 코어 기술 개발, 인프라 관리, 고객 대응까지 동시에 하며 상황을 파악하고 적절한 방법으로 문제를 해결하는 경험은 앞으로도 잘 하지 못 할 경험이라고 생각해요

좋은 동료들에게 많이 배웠고 성장했던 시간이였습니다

그런 회사 생활을 하던 중 여름 휴가때 해외 여행을 다녀왔는데 다시 스멀스멀 잊고 있던 단어가 머리속에 떠올랐어요

“디지털 노마드”

어렸을때부터 겨울을 싫어해서 1년 365일 따뜻한 나라만 사는 제 모습을 상상을 했었는데 마침 노트북 하나만 있으면 어디든 자유롭게 이동하며 일할 수 있는 디지털 노마드는 지금까지도 저에게 로망이자 낭만입니다

개발자는 노마드가 가능한 직업 중 하나였고, 친구의 추천으로 해본 개발이 마침 제가 할 일이라고 생각했어요 전공에도 애착이 없던 저는 다니던 대학도 3학년 2학기 기말고사 치기 2주일 전에 그만뒀습니다

그만둔 그 날 부터 방구석에서 전공 책을 보며 알고리즘을 풀고 프로젝트를 해서 개발자가 되었어요

그런 저에게 잠시 잊혀졌던 디지털 노마드가 다시 가슴 한켠에 자리 잡았습니다

제 심신은 회사 생활에 불태워 지쳐있었고, 다시 한번 낭만을 찾고 싶었기에 고민 끝에 퇴사하고 베트남 다낭행 비행기에 몸을 실었습니다

역시 사람은 하고 싶은거 하며 살아야 하나 봐요

일주일만 살아도 한국음식이 생각난다는 분이 많은데 저는 맛있으면 뭐든 잘 먹어서 한국 음식은 아주 가끔씩 생각나요

출퇴근도 없고 제가 스스로 시간을 정해서 하고 싶은걸 하면 되기에 저에겐 역시 이거 만한게 없습니다

문제가 런웨이인데, 런웨이 확보는 두가지로 선택했어요. 1인 제품 개발과 외주입니다

1인 제품 개발은 런웨이가 확보될 정도면 여러 제품을 내며 경험과 인사이트가 필요하다고 생각해서 당장 되기 힘들다고 생각해요

상대적으로 확실히 현금이 확보되고 현실적인 방안은 외주라고 생각했어요

개인 사업자 등록 후 크몽, 사람인 긱스 등에 서비스를 올렸고, 위시켓에도 주기적으로 지원 중 이에요

컨텐츠도 주기적으로 생산하려고 합니다 

오프라인 영업 보다는 온라인 영업에 집중하고 있어요

하지만 단독으로 수주한 외주도 없었고, 좁디 좁은 인간 관계가 문제에요

회사에서 진행했던 프로젝트나 제품을 포트폴리오로 쓰기는 문제가 될 것 같고, 개인적으로 진행한 프로젝트들도 쇼핑몰, 플랫폼 같은 일반적인 앱이 아니라서 일반적인 고객분들에게 어필하기는 애매한 제품들 이에요

인간 관계도 좁아서 알음알음 구하기도 쉽지 않네요

이래서 사람 많이 사귀는게 좋은가봐요 😭

어찌저찌 해서 고객들을 확보했지만 아직 초기이기에 더욱 고객 확보에 힘을 기울이고 있습니다

여러 방법을 쓰고 있지만 극단적으로 보면 노마드를 하기 부족할 수도 있어요

다시 한국을 돌아갈수도 있겠죠?

하지만 전 포기하지 않겠습니다

어떻게든 이악물고 디지털 노마드 생활이 지속 가능하도록 최선을 다하겠습니다

앞으로도 이런 저런 것들 하면서 소식이나 컨텐츠를 남겨보려고 해요 

저는 시간만큼은 빌 게이츠 니까요

커피챗이나 외주 문의 환영합니다!

3
5
허석호

허석호

온라인 외주 계약 잘 하는 방법

외주사를 찾을때 아직은 많은 분들이 온라인으로 의뢰하는 것에 대해 어색함을 느끼고 계신 것 같아요.

온라인으로 진행하더라도 계약 직전에 오프라인 미팅을 요청주시는 분들이 많더라구요.

아무래도 직접 한번 봐야 믿을 수 있다고 생각하는 경우가 많으신거 같습니다.

그런 분들을 위해 온라인만으로 외주 계약을 잘 하는 방법을 모아봤습니다.

잘못된 내용이 있을수도 있고 예외 케이스가 많을 수도 있어요. 피드백 댓글로 남겨주세요.

화상 미팅

온라인 보단 오프라인 미팅을 선호하는 분들이 아직 많으신거 같아요.

개인적으로 온라인이나 오프라인이나 사람보는데 차이는 없었어요.

적절한 문답과 함께 충분한 대화 시간을 갖는다면 오프라인보다 더욱 편하고 에너지 낭비 없이 커뮤니케이션 할 수 있다고 생각합니다.

구글 미트나 줌을 이용하면 무료로 편하게 대화할 수 있어요.

사업자 등록증 확인

업체가 사업자 등록이 되어있는 경우 사업자 등록증을 요청하여 해당 업체가 사업자 등록을 했는지 확인해요.

사업자 등록을 한 업체의 경우 세금 계산서 발행도 가능하기 때문에 많은 고객분들이 선호하세요.

단순 개인 프리랜서에게 일을 맡길 경우 필요하지 않습니다.

온라인 계약 서비스를 통한 계약서 작성

업무 범위를 확실히 해서 혹시라도 문제가 생겼을 경우 고객사, 외주사 양쪽 모두 법적인 보호를 받기 위해 작성해요.

모두사인 같은 온라인 계약 서비스들이 있고 여러 편의기능을 제공하니 쉽게 계약이 가능해요.

외주 플랫폼을 통한 계약

많은 외주 플랫폼에서는 여러 편의 사항을 제공하며, 계약이나 법적으로 문제가 생기는걸 방지하거나 생겼을때 도움을 주는 시스템을 마련해놓고 있어요.

법적 효력이 있는 메신저, 안전 결제 등의 편의 기능을 제공하기도 하고, 문제가 생겼을때 도움을 요청하면 문제에 대한 절충안을 제시해주거나 해결하는데 도움을 주기도 하고, 혹시나 했을때 법적인 부분도 도와줍니다.

외주사인 제 입장에서도 처음에는 수수료가 좀 있는 편이라 부담스러웠지만 편의 기능과 법적인 보호 장치들이 있기 때문에 지금은 좋은 선택지 중에 하나로 사용중입니다.

5
1
허석호

허석호

1인 메이커 회고 : 정답, 강박, 유연성

다시 시작하기

모바일 앱을 만들기 위해 맨 처음 개발할 때 시작했던 Flutter 를 다시 집어들었다. 내 목표는 최소한의 기능을 가진 안정적인 제품을 최대한 짧은 시간 내에 빠르게 개발하기 였다. 여러 장점이 있고 간단히 경험이 있었기에 Flutter 를 선택했다.

어떻게 시작할까?

개발은 무작정 시작하는게 아니라 최대한 기존의 좋은 기술, 방법, 패턴을 미리 알아본 뒤 도입하자 였다. 구글링을 하며 찾다보니 "BLOC" 이라는 걸 알게 되었다.

이미 많이 사용되던 패턴, 관심사 분리, 테스트 용이성 등 좋은의견들을 보았다. 그리고 무엇보다 Flutter 를 만든 “구글”이 권장한다는 문구를 본 순간 이게 Flutter 에서 “정답” 이며 사용하기로 결정했다.

도입

약간의 개발 테스트와 함께 짧은 공부를 마쳤고 바로 적용하여 앱을 만들기 시작했다. 일단 만들다보니 관심사가 분리되고 코드도 보기 좋아 참 만족스러웠다. 나보다 뛰어난 그들의 발자취를 따라가다 보니 설렘과 뿌듯함 또한 존재했다.

형편없는 생산성

문제는 생산성이였다. 익숙하지 않은 방법에 대해 사전에 충분한 공부 없이 활용하다 보니 손이 많이 갔고 문제도 많이 생겨났다. 페이지 3개 만드는데 1주일이 걸렸다.

ChatGPT 와 함께 일을 했는데 GPT 는 BLOC 은 잘 못 했고 일일이 코드를 쳐야 했다

뭔가 잘못됐다는걸 깨달았다.

그래도 구글!

그래도 구글이 쓰라잖아! 하는 생각이 들었고 도전적인 생각도 들었다. 이대로 물러서기 싫었고 계속 공부하며 이해하고 익숙해지려 하고 밀고 나갔다. 속도는 조금씩 빨라지고 있고 문제는 잘 해결되고 있었다.

기한은 다가온다

하지만 하루 하루 내가 정한 기일은 찾아왔다. 어느 순간 마음속 한 켠에선 “야! 이거 뭔가 잘 못 됐다 이래선 니가 목표한 기간에 못 맞춘다“ 를 마음 속 누군가가 외치며 빨간색 스위치를 계속 눌러댔다. (아마 직감이라는 녀석 이였던거 같다) 스스로 정한 목표와 약속에 대한 압박감과 계속 눌러대는 직감의 빨간불에 시달리며 개발을 이어나갔다.

이건 아니다

그러다 어느 순간 "이건 아니다" 라는 생각에 하던 걸 멈추고 침대에 누워서 차분히 현재 상황에 대해 분석했다. 지금 작업량도 적은데 내가 여기 너무 매몰될 필요가 없는건 아닐까? 내 목표를 이루기 위해 맞는 선택인가? 혼자 작업하고 있고 그리 앱 규모가 크지도 않으며 확장한다는 것에 대한 보장도 없는데 너무 과하게 유지보수를 생각한건 아닌가? 여기에 더 투자하고 싶지 않은데 더 쉽고 빠르고 확실한 길이 있지 않을까? 등 여러 많은 생각과 의문점을 정리했다.

강박

결론은 “내가 강박에 빠져있구나” 였다. 앱이 커질 시 유지보수를 고려해야 한다는 생각에 집착했다. 사람들이 많이 쓰며 구글도 쓴다 라는 생각에 집착했다. 즉, 목표보단 행위에 집착했다. 시간은 2주나 지났고 내가 개발한 기능은 고작 4개였다. 스스로에게 부끄러웠고 한심했다. 다시 혼자서 더 빠르게 개발하기 좋은 방법을 찾아보기 시작했다.

때려박기

결국 내가 찾은 제일 쉬운 길은 "BLOC" 패턴 버리기 와 “setState” 를 이용해 한 페이지에 때려박기 였다.

뭐? 한 페이지에 때려박기? 어디 가서 개발자 라고 말하기 부끄럽지 않냐? 어느 시각에서 보면 맞는 말이고 예전의 나라도 똑같이 말하며 비난했을 것 이다.

하지만 지금 난 빠르게 결과물을 만들어야 했고, 막상 이 제품이 잘 될지도 모르는데 그렇게 까지 내 자원을 투입하고 싶지 않았다.

그리고 ChatGPT 는 기가 막히게 setState 를 잘 했다.

그렇게 소스 코드를 완전히 갈아치우고 계속 개발했다. 그래도 유지보수는 최소한은 고려해야 한다는 생각에 구조는 최대한 단순히 하려고 했고 적당히 분리하여 재사용을 고려했다.

생산 공장 가동

하루에 최소 한 페이지 씩 찍어내기 시작했다. 앱과 서버 까지 큰 단위의 기능 한 개당 최소 30분 에서 최대 2일이 걸렸으며, 평균적으로는 1~3 시간 정도 걸렸다. 덕분에 앱에서 시간을 단축할 수 있었고 남은 시간에 서버에도 조금 더 신경을 쓸 수 있었다.

결과적으로 내가 정한 기일은 지났다. 하지만 단순한 앱도 아니였고, 처음으로 비즈니스 로직 까지 만드는 앱 개발에 혼자하는 것 치고는 나름 빠르게 앱을 만들 수 있었다. 이정도의 속도와 결과물은 만족스러웠다.

오히려 좋아

"BLOC" 선택에 손해만 본 건 아니였다. 잘 모르는 도구와 패턴을 공부하고 사용하며 문제를 해결하는 과정을 반복했고 익숙해졌다. 새로운 지식, 경험, 이해도를 높히는데 매우 좋은 과정이였다고 생각한다. 그리고 하지 않았다면 이정도의 시간 단축은 힘들었을 수도 있다.

그거 밖에 안 돼?

분명 누군가는 나의 충분한 사전 탐색, 문제 해결력, 실력, 생산성, 코드 퀄리티, 기술 채택 등에 대해 의문, 비난, 비판 등을 할 수 있다. 여러 시각에서 보자면 다 맞는 말이다. 스스로도 부끄럽고 아쉬우며 부족함을 많이 느낀다.

하지만 혼자서 제품 빠르게 만들기 라는 나의 목적에 어느정도는 부합했다고 생각한다. 내가 무리하게 선택한 방법을 억지로 밀고 나가며 시야가 좁아지고 압박감에 파묻혀 기회 비용에 더 이상 매몰되지 않았다. 목표에 맞는 더 좋은 선택을 했고 어느 정도 달성했다.

제품이 더 커져서 유지보수가 중요해지거나, 여러 사람이 작업하게 된다 거나 등의 문제가 생기면, 그때 가서 고려하여 적용하면 된다.

정답

이건 무조건 된다, 이건 어떤 상황이든 되는 방법이다 같은 말들이 있다. 흔히 말하는 “정답” 이라는 것들이다. 나를 포함한 많은 사람들이 "정답"이라고 하는 기존의 성공 방식에 대해 얘기하며 의문을 가지지 않고 그 방법을 따르라고 얘기한다.

하지만 항상 정답인게 존재할 수 있을까? 그건 진리에 가까운 것이라고 생각한다. 그리고 진리는 숨겨져 있어서 내가 못 찾고 있는 것 일수도 있고, 존재하지 않을 수도 있다. 아직 나는 진리를 찾지 못한 어리석은 중생이다.

그래도 누군가 너가 생각하는 정답을 확실히 해돌라고 묻는다면 "유연함" 이 라고 답할 것 이다. 자신과 상황에 맞춰 적절한 방법을 선택하고 실행하며, 잘못됐다면 자신의 실수를 인정하고 개선하는 삶이 나만의 정답이라고 믿는다.

6
0
허석호

허석호

애플 앱 스토어 심사 한 번에 통과하기

애플은 너무 까다로워 😵
하지만 나쁘지 않을지도?

거부하는 것에 대한 거부를 거부한다!

첫번째 iOS앱을 큰 문제 없이 만들었는데 심사에서 자꾸 거부 당했습니다.

이것도 해야 돼? 하는 거절 사유가 계속 나오고 출시일은 계속 밀렸습니다 😭

앱 심사는 한국 시간으로 저녁에서 새벽 시간대에 했습니다.

일어나면 거부 사유 고치고, 다음날 일어나면 또 거부 사유 고치고 하는 걸 반복했습니다.

빠른 실행을 위하여

그러다보니 제가 받은 심사 거부 사유들을 공유하면 다른 메이커 분들이 더 빠르게 제품을 런칭할 수 있지 않을까? 하는 생각이 들더라구요.

그래서 제가 받은 심사 거부를 모아서 상황, 거부 사유, 대처, 생각을 모아봤습니다.

테스트 계정 정보 제출 안 됨.

제 앱은 SMS 인증 로그인이 꼭 필요한 서비스 였습니다.

심사에 관련된 걸 적는 화면에 테스트 계정 정보 입력칸이 있길래 알아서 로그인 해서 쓰겠지 하는 마음으로 무심코 넘어갔습니다.

심사관은 앱 심사 시 앱을 직접 들어가서 앱 설명에 적어놓은 기능들이 정상 동작하는지 테스트 했습니다.

모든 기능을 테스트 할 수 있는 테스트 계정을 만들어 제출하는게 좋습니다.

다른 유저와 다른 유저가 생산한 컨텐츠 에 대한 신고와 차단 기능 누락

제 앱은 다른 유저가 생산한 컨텐츠를 볼 수 있는 페이지가 있습니다.

심사관은 다른 유저의 데이터를 볼 수 있는 기능이 있는 경우, 해당 유저 자체와 생산된 컨텐츠를 신고할 수 있고 차단할 수 있는 기능을 요구했습니다.

특히 차단 기능의 경우 데이터를 안 보이게 해야 하기 때문에 앱의 정책에 중요한 부분을 차지할 수 있습니다.

클라이언트 (앱) 에서는 예외 처리와 UI 수정 있을 수 있을 수 있고. 서버 (백) 에서는 차단된 유저와 컨텐츠를 안 보이게 처리해야 하기에 공수가 많이 들어갈 수 있습니다.

꼭 처음부터 차단에 대해 고려한 후 구현하고 차단된 유저의 데이터를 섞어서 바로 확인하며 개발하는걸 추천합니다.

계정 삭제 기능 누락

앱에 유저의 로그인과 회원 가입이 된다면 계정 삭제 기능도 있어야 합니다.

“유저와 컨텐츠 에 대한 신고와 차단 기능 누락” 과 같은 이유로 꼭 처음부터 구현하고 차단된 유저의 데이터를 섞어서 바로 확인하며 개발하는걸 추천합니다.

제 앱은 타인의 컨텐츠가 노출되는 것에 대한 기능과 구조가 조금 복잡했고 대부분의 비즈니스 로직이 엮여있었기 때문에 DB 구조 변경하고 기능을 다시 새로 만드는 수준 이였습니다.

정책 고민하고 구현하고 테스트 하는데 다른 작업들보다 몇 배로 시간을 소요했네요 😭

기능 안 됨

앱 초기 개발을 끝내고 서버를 배포했습니다. 그러다보니 서버 안정성이 조금 문제가 있었고 하필 심사관이 앱을 테스트 할 때 서버가 내려가 있었습니다

심사관은 앱 설명과 앱의 페이지 하나 하나 들어가서 잘 돌아가는지 테스트를 진행했습니다.

테스트 후 이상하다 싶으면 바로 심사를 거절하는 경우도 있었습니다.

심사 요청하기 전에 꼭 기능 잘 되는지 확인하고 테스트 계정도 문제 없나 충분한 테스트를 하는 것을 추천드립니다.

기능 못 찾겠음

제 앱은 특정 조건을 달성하지 못 하면 앱 설명에 있는 기능 전부를 이용하는 걸 막아놓았습니다.

심사관은 앱 설명의 기능들을 하나하나 찾고 테스트 했습니다.

만약 설명에는 있는데 해당 기능을 찾을 수 없거나 테스트 할 수 없다면 거부 사유입니다.

꼭 모든 기능이 다 되는 테스트 계정을 제출하는걸 권장드립니다.

무슨 기능을 하는 페이지 인지 모르겠음.

다른 유저들이 얻은 반응을 보여주는 페이지가 있었습니다.

거부 사유에는 이 페이지가 무슨 기능을 하는지 모르겠고, 해당 페이지의 기능과 보여지는 컨텐츠에 대해 설명해돌라는 말과 함께 심사를 거부 당했습니다.

그래서 저는 심사관이 들어간 페이지에 컨텐츠들을 더욱 추가하고 명확하게 했습니다. 그리고 심사처에 메세지로 해당 기능과 보여지는 컨텐츠에 대해 상세히 설명해주었습니다.

지역화 덜 됨

제 앱은 해외의 앱스토어에 출시할 예정입니다. 빠르게 앱을 출시하려고 하다보니 한국어로 표기된 UI 가 남아있었습니다.

심사관은 출시할 국가의 언어와 앱의 언어 사이에 문제가 없는지 까지 파악했습니다.

꼭 지역화를 빼먹지 말고 하도록 합시다.

사용자에게 충분한 설명과 동의 없이 연락처(개인 정보) 수집을 요청하고 거부 시 앱의 권한 관리 설정으로 리다이렉트 함.

제 앱은 사용자의 연락처 정보를 가져오는 권한을 사용자가 주지 않으면 안 되는 앱 입니다.

최소한의 설명을 앱 UI 에 적어놓았고, 권한을 거부하면 권한 설정 부분으로 리다이렉트 해서 꼭 권한을 받게 만들어놓았습니다.

심사관은 앱 권한을 요청할 시 충분한 설명과 동의를 얻어야 할 것을 요구했습니다. 그리고 권한을 거부하더라도 권한 설정으로 리디렉션을 하지 않고 앱을 사용할 수 있게 하길 권장했습니다.

그리고 개인정보 관련된 것들은 더욱 엄격했습니다.

외부로 데이터가 보내지고 활용될 시 사용자에게 용도에 대해 명확히 설명하고 앱 설명에도 더욱 명확히 설명을 기재하길 요구했습니다.

그래서 저는 연락처 정보를 수집하는 앱 UI 페이지에 권한을 받는 이유와 수집한 연락처 정보로 정확히 어떤 기능을 수행한다는 설명을 적어놓았습니다.

그리고 해당 문구를 어디에 정확히 기재해놓았다고 심사처에 메시지를 보냈습니다.

추가적으로 해당 정보들이 적힌 개인정보 처리 방침 페이지를 Notion 으로 만들었습니다.

테스트 데이터 넣음

테스트 계정에서 보이는 데이터들을 Test 1, Test 2 이런 식으로 대충 넣어 놓았습니다.

심사관은 모든 컨텐츠가 완성되고 최종적인 것으로 보이도록 수정하길 요구했습니다.

그래서 저는 모든 컨텐츠를 실제로 운영되는 것 처럼 꾸몄고, 특히 테스트 계정에 보일 수 있는 데이터는 전부 잘 꾸며놓았습니다.

오히려 좋아

생각해보니 애플 측에서 사실상 QA 를 대신 해주는 수준이였고, 유저 입장에서는 필수적이라고 생각하는 기능들이 빠져있었기 때문에 그리 나쁘지만도 않았던 것 같습니다.

고맙다! 애플아!

아직도 안 끝났다고?

이제 거의 다 반영한거 같지만 아직도 제 앱은 심사가 안 끝났습니다 😌

새로운 거부 사유가 나오면 공유하도록 하겠습니다.

더 많은 심사 조건이 있습니다.

제가 받은 심사 거부 사유들 외에도 많은 조건들이 있습니다.

정확하지 않을 수 있습니다

인간이 하는 일이고 플랫폼 정책 특성 상 정책이 변경되어 위의 설명과 해결책이 정확하지 않거나 틀릴 수 있습니다.

혹시 잘못된 내용이나 더 추가됐으면 하는 내용이 있으면 댓글로 남겨주면 감사 드리겠습니다 😀

16
17
허석호

허석호

그래 나도 한 번 써보자 "링크드인"

저는 이런 일을 했습니다

  • 하고 싶고 해야할 일을 찾기 위해 군 복무 후 대학 입시에 다시 도전했습니다.

  • 대학생 때 8개 이상의 동아리에 들어도 보고, 스타트업 창업에도 도전해보았습니다.

  • 개발이라는 할 일을 찾게 되었고 결심한 그 날 부터 학교를 나가지 않고 독학으로 개발을 공부했습니다.

  • Wework 를 돌아다니며 흥미가 생기는 사무실에 벌컥 들어가서 "스타트업에 관심이 있습니다!" 라고 외치며 많은 사람들 앞에서 어필해보았습니다.

  • 기본기와 실력이 부족하다고 판단되어 퇴사 후 다시 방구석으로 돌아가 전공 서적 공부, 결과물 위주의 프로젝트, LeetCode 풀이 등을 했습니다.

  • 최근엔 노코드 스타트업 "오마이앱" 에서 1년 반 동안 백엔드 개발을 담당했습니다.

  • 퇴사 후 베트남 다낭에서 5개월간 살며 놀고 먹고 운동하고 잤습니다. 😎

  • 제품 만들기에 관심이 생겨 1개의 웹 앱을 출시하였으며 , 1개의 모바일 앱이 심사 중 입니다.

저는 요즘 이런 것에 관심이 있습니다.

  • AI 에 관심이 있습니다. GPT 와 함께 하며 매일 새로운 가능성을 엿보고 있습니다.

  • 환경에 따라 인간이 여러 모습을 보이는 것에 관심이 있습니다.

  • 좋은 제품을 만드는데 관심이 있습니다.

링크드인에 관심이 생겼습니다.

  • 간단하게 프로필을 꾸며봤는데 이런 저런 연락이 왔습니다. 자신을 알리는 좋은 기회의 장이라고 생각합니다.

  • 자신을 알려서 좀 더 많은 걸 배울 수 있는 기회를 얻고 싶습니다.

제 링크드인 주소 입니다.

https://www.linkedin.com/in/seokho-heo-bba662191

팔로우, 일촌 신청 환영하고, 커피챗도 환영합니다 ☕️

13
0