안녕하세요. 저는 김혁진이라고 합니다.3년 차 백엔드 개발자인데, 혼자 이것저것 개발하는 걸 원래 좋아해요.그동안 10개가 넘는 웹, 앱 다양한 제품을 개발했었어요.이번에도 혼자 개발을 진행했습니다.🤗 프로덕트 소개좀 해주세요~내가 선택한 시간에, 선택한 앱들을 차단하는 앱이에요.습관적으로 앱을 실행시켜도 사용할 수 없게 되죠.무의식적인 사용을 방지하려는 의도에 가까워요.⁉ 프로덕트를 만들게 된 계기는 무엇인가요?요즘 인스타그램이나 유튜브 쇼츠 등 사람들이 하루 종일 휴대폰에 빠져 있잖아요.어느 날 저는 분명 산책에 집중해서 혼자만의 시간을 가지고 싶었는데, 자꾸 걸어가면서 무의식적으로 휴대폰을 켜서 앱들을 열게 되더라고요.분명히 저는 사용할 생각도, 목적도 없었는데 말이죠.그래서 저도 '아, 나도 스마트폰 중독인가?'라고 생각했었죠.저는 새로운 제품 아이디어를 찾을 때 가끔 레딧 같은 해외 커뮤니티에 들어가서 사람들이 어떤 고민과 문제를 겪는지 찾아보곤 하는데, 다들 비슷한 문제를 겪더라고요.알아보니 기존에 앱을 차단해주고 사용 시간을 관리해주는 앱은 이미 존재했었어요.저도 앱을 다운받아서 사용해봤는데, 제가 사용하려는 목적에 비해 앱이 무거운 경향이 있었어요.또 사람들도 앱의 구독 가격이 너무 비싸다는 등의 의견이 많았었죠.그래서 제가 직접 단순한 앱 차단기를 만들려고 했었어요.😱 개발은 어떻게 진행이 됬나요?우선 저는 기존의 앱들은 대부분 Flutter로 개발했어요.아무래도 Aos, iOS 둘 다 빠르고 쉽게 만들 수 있기 때문에 선택했었죠.내가 목표로 했던 기능은 비교적 최근에 나온 기술에 속해서 네이티브 언어로 사용하고자 했고, 한 가지 스토어에 집중하고 싶었어요.그래서 기왕이면 제가 아이폰을 사용하기 때문에 iOS swift를 사용하기로 했죠.총 개발 기간은 5일 안쪽이었던 것 같아요.단순한 UI와 기능인데도 앱 사용을 제한하는 기능에 대한 자료가 부족했어요.그래서 공식 문서를 확인하기도 하고, 얼마 없는 예제 코드를 사용했어요.별도의 서버는 두지 않았어요. 앱 사용 관련 정보는 사용자들에게 민감한 데이터일 수 있고, 작업량을 늘리고 싶지 않았죠.이후 앱 스토어 심사에 넣으려고 업로드를 하는데, 평소와 다르게 업로드 오류가 나왔었죠. 자세히 알아보니, 해당 기능에 접근하려면 애플에 관련 심사를 요청해야 했었습니다.심사 요청 이후 일주일 동안 기다리게 되었지만 안타깝게도 리젝이 되었어요.혹시 내가 선택한 옵션 중에 문제가 있었던 옵션이 있었나 싶어 다시 자세히 심사지를 읽어보고, 다시 신청해서 다행히 통과하게 되었습니다.하지만 심사 이후에도, 문제 해결이 되지 않았어요. 앱 권한도 추가해뒀고, 심사 요청도 성공적이었지만 여전히 오류가 나왔어요.원인을 찾기 위해 애플 커뮤니티에도 찾아보았지만, 애초에 자료 자체가 별로 없었어요.그래도 꼼꼼히 관련 게시물들의 댓글들을 읽다가 가족 관리 기능을 위해 추가한 extension 설정 또한 심사를 받아야 한다고 했었죠.다시 한번 extension을 포함해서 심사를 넣고, 승인 후 앱 권한을 추가하였더니 무사히 업로드에 성공했습니다.스토어 심사는 많이 올려본 짬밥이 생긴 건지 다행히 심사가 한 번에 통과했었습니다.👍 재미있었던 것은 무엇이었나요?아무래도 이번에는 개발 자체에 집중하기보다는, 제가 겪은 문제에 대해 집중하고,해외 커뮤니티에서 사람들이 어떤 문제를 겪는지, 기존의 앱은 어떤 문제가 있는지 알아보는 과정에 집중해봤어요.그리고 한 번에 복잡하게 만들기보다는 가장 단순한 기능 하나 출시를 하고, 이후 개발하기로 마음먹었죠.실제로 다른 기능은 현재 개발하지 않고 버튼만 추가해두었는데, 클릭하면 '이런 기능을 원하면 요청하세요!'라는 느낌이죠.많은 수의 요청이 있으면 해당 기능을 출시할 생각이에요.👎 아쉽거나 어려웠던 점은 무엇이었나요?심사 기간이 상당히 길었던 부분이 아쉬워요.심사 옵션을 꼼꼼히 읽어볼걸 그랬고, extension 심사도 해야 한다는 걸 빠르게 인지했으면 더 좋았을 걸 그랬다는 생각이 들어요.💯 앞으로의 계획을 알려주세요저는 그동안 스토어에 다양하고 많은 앱들을 출시했었어요.조금 더 지켜봐야겠지만 출시한 지 일주일 정도가 지났는데, 다른 앱들보다 노출 수와 판매량 지표가 월등히 좋은 상태에요.아직 데이터를 정확히 수집하는 부분을 신경쓰지 않아서 더 확인해봐야 알 것 같아요.만약 많은 사람들이 사용하고, 다양한 피드백이 들어온다면 종합해서 추가하면 좋을 것 같은 기능을 추가해볼 생각이에요.실제로 저도 사용 중이라 필요하다고 생각되는 기능이 있다면 업데이트 해볼 것 같네요.
안녕하세요, 서울대학교 앱개발 동아리 해피타이트(Happetite)입니다.해피타이트는 '사람들의 행복을 위하는 앱'을 만들자는 목표로 처음 뭉치게 되었습니다. 저희는 창업과 스타트업 씬에 관심 많은 학부생으로 이루어져 있고,현재 스타트업 라운지 '스프링 라운지'에 입주해 있습니다.저희 동아리는 프로덕트 단위로 팀이 결성되는데, 맵시는 동아리 파운더 1명, 기획 2명, 개발 2명, 디자이너 1명으로 이루어져 있습니다.팀 리더 자리가 각자의 사정(ex. 군대,,)으로 2번이나 바뀌는 우여곡절을 겪었지만, 학업을 병행하며 무사히 런칭을 마칠 수 있었습니다.저희 앱 'mapsee(맵시)'는 해피타이트에서 두 번째로 출시한 프로덕트이자 처음으로 제작한 앱 서비스입니다.🤗 프로덕트 소개좀 해주세요~🩵 지도 일기 앱, mapsee(맵시)🩵지도에 일기를 작성하고, 공유 폴더로 친구들과 함께 추억을 기록하세요!여러분에게 장소는 어떤 의미를 갖나요? 자주 가던 단골집과 집 근처 동네에는 나만의 특별한 추억이, 친구들과 놀러간 장소에는 다른 사람들과의 소중한 기억이 깃들곤 합니다.맵시는 개개인에게 의미있는 장소를 지도에 모아주고, 함께 한 사람들과의 추억을 기록하고, 그 기록을 친구들과 공유할 수 있도록 하는 서비스입니다.🖋️ 일기 작성장소를 선택해 오늘 하루 있었던 일을 쓰고, 사진도 올려보세요!📍 맛집, 여행내가 일상에서 기록한 맛집, 여행지 등 의미있는 장소를 지도에서 모아볼 수 있어요.👨 👩 👧 👦 공유 폴더여러 개의 폴더로 기록을 구분하고, 친구들을 초대해 공유폴더로 만들어보세요!⁉ 프로덕트를 만들게 된 계기는 무엇인가요?사람들이 행복을 느끼는 방법에 대해 리서치를 많이 했는데, 그 중 하나가 스스로의 하루를 '기록'하는 것이었어요.그런데 시중에 기록 앱이 이미 많은 상황에서 어떻게 차별화를 두면서도 기록의 본질을 지킬 수 있을지 고민해야 했습니다.평소에 일기를 쓰면 특정 장소와 함께한 사람이 기억되는 경우가 많은데, 모바일 지도에 이런 추억을 기록할 수 있는 만족스러운 서비스가 없다고 느꼈어요.그래서 지도 레이아웃을 바탕으로 장소에 대한 개인적인 기록을 남기고, 이를 지인들과 공유할 수 있는 서비스를 만들었습니다.🤝 팀원분들은 어떻게 만나셨나요?팀원은 동아리 파운더가 지인들을 수소문하거나, 정식으로 학내 커뮤니티에 공고를 내 리크루팅을 하며 만나게 됐습니다.팀의 시작에 관한 얘기는 저희 인스타툰에 재미있게 나와있어요😉https://www.instagram.com/mapsee_happetite/😱 개발은 어떻게 진행이 됬나요?1️⃣ 기획안 작성처음에는 지인들과의 대화를 통해서 '행복'을 주는 서비스를 이용한 경험에 관해 이야기를 많이 나누었어요.프로덕트 아이디어가 구체화되고 난 이후에는, 인터넷이나 커뮤니티에 가홍보물을 돌려서 저희 프로덕트에 대한 수요가 얼마나 있는지 알아보았습니다.2️⃣ 가설 검증그런데 '기록'이라는 개인적인 수단이 '지도'라는 실용적인 서비스와 결합하는 과정에서 끊임없이 타깃 유저가 불분명하다는 느낌을 받았습니다.그래서 저희의 주요 타깃이 개인적으로 자신의 일상을 나누고 싶은 사람들인지, 업무적으로 지도앱의 실용성을 원하는 사람들인지 검증하는 작업을 거쳤습니다.앞서 제작했던 가홍보물을 두 가지 버전으로 수정하여 A/B test를 기획하고, 주변 지인들과 부동산 사장님을 만나며 mom test를 적용한 심층 인터뷰를 하기도 했습니다.결과적으로 개인적인 기록에 초점을 맞춘 서비스를 출시하기로 했고, 이를 디자이너에게도 전달하여 캐릭터를 넣은 아기자기한 컨셉으로 앱 무드를 확정지었습니다.3️⃣ UI/UX 테스팅저희가 테스팅 했던 핵심 기능은 '기록'과 '공유'였습니다.우선 기록을 위해 처음 앱을 켰을 때 홈 화면에서 보이는 게 지도인데, 어떤 플로우를 거쳐야 가장 직관적으로 지도에 기록하는 느낌이 나는지에 집중했습니다.지도앱은 검색창이 핵심이고, 기록앱은 글쓰기가 핵심인데 이 두 개를 합치려니까 뭐가 가장 효율적인 방법일지 고민이 됐어요.CTA(Call to action) 버튼의 위치와 전반적인 홈화면 레이아웃을 확정 짓기 위해 많은 사람에게 UX 테스팅을 했습니다.공유는 SNS나 커뮤니티 같은 공개 기록의 느낌을 주지 않기 위해 고민했습니다.그렇게 되면 저희의 처음 목표인 행복과 거리가 생길 거라고 생각했거든요. 결과적으로 기록앱과 지도앱의 특성이 모두 들어간 홈화면과, 공유 폴더 기능이 만들어졌습니다.4️⃣ 디자인디자인 작업을 진행할 때 ‘나’와 ‘마음’을 중심 키워드로 삼았습니다.먼저, 개인이 나의 지도를 꾸미고 채워나간다는 것을 중요하게 여겨 중립적인 성격을 띠도록 디자인했습니다.사용자가 자신의 사진과 내용을 강조할 수 있도록 앱의 자체적 요소보다는 사용자의 내용을 중심으로 배치했습니다.다양한 컬러 맵핀과 사진을 통해 사용자가 나만의 방식으로 지도를 채워나갈 수 있도록 했습니다.또한, 사용자의 마음에서 추억을 불러일으키기 위해 보관함을 폴라로이드 사진처럼 배치하여 추억을 쌓아나가는 느낌을 전달했습니다.메인 컬러로는 일반적 선호도가 가장 높은 푸른 계열의 색상을 선택하여 사용자에게 편안함을 제공했습니다.개중 민트 컬러로 선정하여 일상적이고 상쾌한 느낌을 부여했습니다. 캐릭터는 세상에서 가장 행복한 동물로 불리는 쿼카를 기반으로 개발했습니다.사용성 측면에서도 지속적인 개선이 이루어졌습니다.wireframe을 설계하고 사용성을 고려하여 flow를 수정해나갔으며, 위계를 파악하여 디자인 로직에 따라 스크린을 구성했습니다.뿐만 아니라 디자인이 개발까지 이어지는데 있어서도 고려해야할 사항이 많았습니다.원하는 디자인의 구현이 어려운 경우도, 원래 의도와 다르게 개발되는 경우도 있었습니다.이를 극복하기 위해 컴포넌트를 체계적으로 관리하고 설계 가이드라인을 작성하여 개발팀과의 소통을 원활히 했습니다.이를 통해 같은 방향으로 나아가며 하나의 그림으로 완성해 나갔습니다.5️⃣ 개발저희는 개발 시 iOS와 Android 모두를 타겟으로 설정하였기에 JS 기반 크로스 플랫폼인 RN(React Native)을 채택하였습니다.백엔드의 경우, 실시간 공유 기능을 구축하기에 적절하며 개발 시간을 크게 절약할 수 있는 Firebase를 사용하였습니다.개발의 첫 단계는 데이터베이스의 구조를 구체화하는 것이었습니다.이 과정에서 가장 중요하게 고려했던 것은 맵시가 ‘혼자서만 이용하는 앱’이 아닌 ‘다른 사람들과 함께 추억을 공유하는 앱’이라는 점이었습니다.따라서 사용자 본인이 원하는 사람들과 함께 공유폴더를 생성하고 기록을 원활히 공유할 수 있게끔 하는 데에 초점을 맞추어 데이터베이스를 구축하였습니다.다음 단계는 기획과 디자인 팀에서 제시한 앱의 flow를 구현하는 것이었습니다.기획 팀에서 여러 테스트 거쳐 확정된 기획안에 대해 디자인 팀과 함께 구체적인 flow를 제시하면,개발 팀은 이를 rough하게 구현함과 동시에 기획 팀으로부터 피드백을 받으면서 flow를 점점 완성시켜 나가는 방식었습니다.이 과정은 지도 검색, 공유 폴더, 푸쉬 알림 등 여러 기능에서 병렬적으로 이루어졌는데,이 때문에 개발 속도가 다른 파트에 비해 뒤쳐지기도 하였으나 기획자와 디자이너가 완성해놓은 flow를 보면서 더욱 상세한 정보를 참고하여 개발할 수 있었다는 장점도 있었습니다.마지막 단계는 구체적인 디자인을 적용하는 것이었습니다.직전까지는 버튼, 하단 바 등의 각 UI 요소들을 크게 신경쓰지 않았으나,막상 expo 시뮬레이션을 전체적으로 해보니 터치 및 애니메이션 효과에 대한 사용감이 기대치에 비해 많이 낮았습니다.이러한 부분을 개선하고자 디자인 팀과 많은 회의를 하였고, 기존에 있던 여러 지도, 기록 앱들을 참고하여 전반적인 UI/UX를 향상시켰습니다.5️⃣ QA 진행QA는 팀원들이 기능을 하나하나씩 테스트하며 기존 기획안과 다르거나 오류가 나는 부분을 찾아내는 방식으로 진행하였습니다.즉각적으로 해결하기 어려운 내용은 스프레드시트에 따로 리스트업 해서 공유하였습니다.6️⃣ 앱스토어 출시 및 마케팅지난 4월 앱스토어에 우선적으로 프로덕트를 출시하였습니다.출시 직전부터 인스타그램으로 저희가 맵시를 만들면서 생겼던 에피소드를 담은 인스타툰과, 앱의 컨셉을 보여주는 카드뉴스를 주기적으로 업로드 했습니다.현재는 프로덕트 제작기를 작성하고 여러 SNS나 커뮤니티를 통해 홍보하는 중입니다.👍 재미있었던 것은 무엇이었나요?유저 관점에서 사고하려는 태도를 체화할 수 있었습니다.맵시팀 팀원들과 대화하면서, 유저를 행복하게 하는 서비스를 만들려면 유저 관점을 기획에 충실히 반영해야 한다는 걸 느꼈어요.그전까지 영상, 캠페인 기획 등의 활동에서는 팀원들과 토의해서 제일 흥미롭거나 취지에 어울리는 방향을 판단기준으로 삼는 정도였거든요.버튼위치나 화면 플로우 등 여러 시나리오를 figma로 간단히 구현하고 사람들에게 UX 비교를 요청하기도 해보고기록 경험과 관련해 mom test를 적용한 유저 인터뷰도 해보면서, 잠재유저와 지속적으로 소통하면서 서비스 개선방안을 고민하는 경험을 할 수 있었습니다.그리고 무엇보다 서로 다른 파트가 힘을 합쳐서 하나의 결과물을 냈다는 것에 대한 보람이 컸어요.멤버들 각자 일정이 바빠도 프로젝트에 열정을 갖고 한 명 이상의 몫을 해준 덕에 가능했던 일이라고 생각합니다.👎 아쉽거나 어려웠던 점은 무엇이었나요?프로젝트에 참여한 개발자들은 모두 이전에 누군가와 함께 개발해 본 경험도, 앱 개발 경험도 없는 사람들이었습니다.따라서1. 데이터 간의 관계를 정밀하게 정의하고 키를 구체적으로 지정하는 등의 데이터베이스 작업,2. git을 비롯한 여러 툴을 이용해 코드를 관리하고 개발 협업하는 과정,3. Expo-CLI를 이용함으로써 생기는 native 기능 제한을 완화하려는 시도,4. 개발 목표 설정 및 이행 등 에서 많은 초보적인 실수들이 있었습니다.그러나 이 어려움을 헤쳐나가는 과정에서 자료 구조의 초기 세팅, git branch의 관리법, 프레임워크의 채택 및 개발 업무 분업화 등에 대해 진심으로 고민해볼 수 있었고앱을 제작한 1년 동안 정말 많이 배우고 성장할 수 있었습니다.때로는 격려하고 때로는 서로를 푸쉬하는 팀원들과 함께했기에 모든 것이 가능했다고 생각하며, 프로젝트를 출시하게 됐을 때의 뿌듯함은 잊지 못할 것입니다.기획과 디자이너 입장에서는 이런저런 기능들에 욕심을 내어 일정이 연기되고 어렵게 돌아갔던 점이 아쉽습니다.결국 하고 싶었던 것들을 완벽하기 구현하지 못한 것도 있고, 반대로 구현하지 못할 것들에 너무 많은 시간을 할애한 적도 있습니다.가장 중요한 것이 무엇인지 선별하여, 중심을 잡고 진행하는 것이 중요하다는 것을 알게 되었어요.하지만 역시 아쉬운 마음보다는 아무튼 해냈다는 뿌듯한 마음이 훨씬 큽니다.💯 앞으로의 계획을 알려주세요저희가 학부생인만큼 각자의 학업이 바빠지고 함께 모일 수 있는 시간이 줄어들면서, 이 맵시 프로젝트를 언제까지 지속할지 고민하게 된 시기가 온 것 같아요.이번이 맵시에 투입하는 마지막이라는 생각으로 마케팅을 열심히 돌려보고 있습니다.유저분들의 반응을 보고 서비스 업데이트나 추후 런칭 이벤트에 대한 논의를 해볼 예정입니다.그리고 저희 다음으로 리크루팅한 기수가 이번에 새로운 프로덕트 두 개를 준비중이랍니다. 맵시 이후에도 해피타이트의 행보를 쭉 지켜봐주셨으면 좋겠어요!🎆 인스타그램: https://www.instagram.com/mapsee_happetite/🍎 앱스토어 다운로드: http://bit.ly/forevermapsee🧑💻 팀 구성원분들과 찍은 사진이나 추억할 것들이나 기타 공유하고싶으신 내용 말씀해주세요
안녕하세요! 저는 세상을 따뜻하게 하는 기획을 하고 싶은 PM, 밀리입니다.저희 팀 이름은 Team 딜리인데요! 선물박스를 전달하는 배달부 🚚 의 느낌을 살려 딜리버리의 ‘딜리’를 따서 지어보았어요!저희 팀은 기획자, 디자이너, Server, iOS, Android, Web 총 여섯명으로 이루어져있는 팀이에요.앱 개발 동아리에서 처음 만나 한 달 정도의 기획과 디자인 기간,한달 반 정도의 앱 개발을 진행하였습니다! 개발 기간이 좀 짧은데요ㅎㅎ 짧은 만큼 핵심 기능에 집중하여 MVP 개발을 마쳤습니다.현재는 1차 MVP 검증을 마치고 서비스 확장을 위해 웹 개발을 진행하고 있어요.🤗 프로덕트 소개좀 해주세요~온라인으로 선물을 보내는 것이 당연해진 요즘,'선물(물건)'에만 초점이 맞춰져있는 온라인 선물 문화를 바꾸고 싶어 패키 서비스를 기획하였습니다!패키는 디지털 선물박스를 만들 수 있는 앱이에요.함께 찍은 사진, 정성을 담은 편지, 들려주고 싶은 음악과 선물 사진까지 담아 선물박스를 만들 수 있답니다!패키 프로덕트의 비전은 ‘감정을 연결하는 디지털 선물문화’를 만드는 것이에요.현재까지 총 280개의 선물박스가 만들어졌고,많은 분들이 패키 서비스를 통해 마음을 듬뿍 담은 선물을 보내고 계세요 🎁⁉ 프로덕트를 만들게 된 계기는 무엇인가요?온라인에서 더 특별하게, 마음을 담아 선물을 주고 받을 수는 없을까? 라는 페인 포인트를 계기로 시작하게 되었어요.친구에게 받은 소중한 마음이 오래 오래 간직되고, 기억될 수 있는 서비스를 만들고 싶었습니다 :)기존에 서비스들은 아무래도 "선물하기" 기능이 "커머스" 서비스 안에 있는 기능 중 하나이다보니,물건의 구매에만 집중되어있는 것 같았어요. 이런 부분을 좀 깨뜨리고 싶었던 것 같습니다.기획 과정에서 온라인에서 선물을 주고 받는 사람들은 정말 '물건'만을 선물로 생각할까? 궁금했어요.물건 만이 아니라 선물과 함께 전달되는 마음, 채팅방으로 보내는 메시지, 편지까지모두 선물로 여길 것이라는 생각이 들었습니다.이런 생각들을 확인해보기 위해 설문조사를 진행해보았는데요.약 80%가 선물을 보낸 후, 카카오톡으로 메시지(편지)를 한번 더 보내고 있었고,마음이 담긴 편지도 충분히 선물이 된다! 라는 의견을 주셨어요.설문조사를 통해제가 생각했던 가설, 즉 "물건"만을 선물로 여기지 않을 것이다, 마음이 담겨있는 편지도 선물이 될 수 있다!라는 가설을 검증하고, 또 좀 더 정성을 담아 선물을 전달하고 싶다는 니즈도 파악할 수 있었습니다.선물에 진심인, 선물을 좀 더 특별하게 보내고 싶은 사람을 핵심 유저로 설정하고,‘선물박스를 만드는 기능’을 MVP로 개발 스펙을 설정했어요.사진과 편지, 음악까지 한번에 모든 요소들이 선물처럼 보일 수 있도록,한 화면을 선물박스 내부처럼 만들어 채우고 꾸밀 수 있도록 화면을 디자인 했습니다각 디자인 요소들도 너무 귀엽고 유치한 것 보다는 20대 여성부터, 커플(특히 남자친구) 분들도 쓰실 수 있도록심플하고, 트렌디한 감각을 넣어서 디자인 했어요!🤝 팀원분들은 어떻게 만나셨나요?저희 팀은 앱 개발 동아리 CMC에서 만나게 되었습니다!아무래도 동아리다 보니 기간이 약 3개월 정도로 정해져있었어요.저에게 팀원을 모집할 때 가장 중요했던 것은, 동아리가 끝나도 프로젝트를 계속 할 의향이 있는지였는데요.단순히 서비스 ‘배포’만을 위한 프로젝트가 되지 않기를 바랬고,서비스를 운영하면서 배울 점들이 정말 많다고 생각을 해서프로젝트를 주체적으로 이끌고, 사용자 피드백을 통해 서비스를 디벨롭하고 개선해나가는 과정을 팀원분들과 경험하고 싶었어요!다행히 프로젝트를 쭉 하고 싶은 열정 뿜뿜하신 팀원 분들을 만났고더 좋은 사용자 경험과 프로덕트의 목표를 이루고,각자 개인의 역량까지 키울 수 있는 것들에 도전하면서 정말 재미나게 프로젝트를 하고 있습니다!😱 개발은 어떻게 진행이 됬나요?패키는 App store, Google Play Store에 런칭이 모두 완료된 상태입니다.iOS, Android, 서버 개발자분에 개발 진행 과정을 담아왔어요!iOS 🌎빠른 뷰 개발을 위해 SwiftUI 를 사용했고, Composition 기반의 단방향 플로우 구현을 위해 TCA 아키텍처를 사용했어요.6주라는 짧은 개발 기간동안 프로덕트를 출시해야 했기에,백엔드&모바일이 미리 통일된 스펙을 갖고 함께 개발하는 병렬적인 형태로 개발을 진행했어요.Android 🦒최근 동향을 생각하면 compose 로 앱을 개발하였으면 compose에 어울린다고 생각한 아키텍쳐인 mvi를 도입하였습니다.초기 기획 단계에서 필요할거라 판단한 공통모듈을 구성하였습니다.이후 생산성을 고려하여 디자인 시스템을 빠르게 구축하고 아키텍쳐을 바로 구현할 수있도록 템플릿을 구성하였습니다.기획단계에서 개발 스펙을 잘 조절하고, 핵심 MVP에 집중해서 진행한 덕분에 실제 개발에서는 피쳐작업에 집중할수 있었습니다Server 🐰추후 서비스의 확장성을 고려하여 멀티 모듈로 아키텍처를 설계하였습니다.필요한 API 스펙을 모바일 개발자분들과 사전에 협의한 뒤 개발을 진행했습니다.디자인 요소가 다양한 서비스인만큼 앱 업데이트 없이 디자인을 바꿀 수 있도록 많은 요소에 Server Driven UI를 적용하였습니다👍 재미있었던 것은 무엇이었나요?Design 🎠지금의 선물박스 내부 디자인이 나오기까지 많은 시안들이 있었는데요, 그 과정이 길었지만 재미있었던 것 같아요.제한 상황에 맞춰서 디자인하면서 새롭게 배운 점들도 많았고,사용자 피드백을 바탕으로 디벨롭하는 과정도 의미 있게 느껴졌어요.iOS 🌎프로젝트를 시작하며 예쁜 Animation & Transition 을 구현 해 보고 싶다는 니즈가 있었는데,동작이 부드럽다는 긍정적인 피드백을 많이 받아서 뿌듯했어요!마침 회사에서 시작하는 신규 프로젝트도 애니메이션 부분을 꽤 구현하게 되었는데,상호 긍정적인 영향이 있었던 것 같아요ㅎㅎAndroid 🦒compose를 실 개발에 사용 해보는것은 처음이있습니다.처음 해보는 거라 걱정도 조금 되었는데 진행하다보니compose의 생산성과 재사용성을 느끼면 재미있게 개발하였습니다.Server 🐰서비스 배포 후 운영을 위해 어드민 툴을 만들어보고 싶었는데, Retool이라는 서비스를 이용해서 만들어보았어요.처음에는 직접 간단한 웹 개발을 할까 했지만, 작업 시간을 고려하여 SaaS 서비스를 사용했어요.DB 툴을 사용하지 않고 다른 팀원들이 데이터를 볼 수 있는 환경을 만들어 뿌듯했어요.👎 아쉽거나 어려웠던 점은 무엇이었나요?Design 🎠선물박스 만들기 플로우를 만드는 과정이 어려웠고, 사용자들이 ‘패키’라는 새로운 서비스를 어려움 없이 사용하게 하기 위해 많은 고민의 시간을 들인 작업이었어요.기존에 없던 완전히 새로운 프로덕트이다 보니 레퍼런스를 찾는 것부터 어려움이 있었고플로우 흐름부터 UI, 기능적인 부분까지 많은 수정과 시행착오를 겪으면서 지금의 모습을 갖추게 되었어요.물론 지금도 부족한 점이 많아서 계속해서 수정하고 디벨롭하고 있답니다~iOS 🌎애플이 제공하는 최신 API 를 사용하기 위해 과감하게 iOS 17 버전을 타겟으로 개발했는데,데모데이 때 실제 사용자들을 만나보니 생각보다 버전 17 미만을 사용하는 아이폰 유저들이 종종 있어서, 설치하지 못해 아쉽다는 피드백을 받았어요.시간이 지나며 자연스레 점유율이 바뀌면 해결될 문제로 보이지만, 조금은 아쉬웠어요.Android 🦒프로덕트의 개발 스펙을 정확하게 파악하고 앱을 구성 하려고 하였지만동아리 기간이라는 정해진 시간도 있다보니 놓친 부분들이 꽤 있어 생각보다 코드가 꼬인 부분이 있는 것 같습니다.이후 프로젝트의 지속성이나 확장성을 생각하면서 하니씩 고쳐나가려고 합니다!Server 🐰MVP 구현 기간이 짧아 처음에 써보고자 했던 기술들을 모두 사용해보지 못해 아쉬웠어요.하지만 서비스를 계속 운영해나가면서 느리더라도 하나씩 적용해보고 싶어요.💯 앞으로의 계획을 알려주세요패키는 2월 말 출시 이후, 자잘한 버그들을 수정하고, 실제 사용자 데이터 분석을 위해 GA를 심는 업데이트를 마쳤습니다.그리고 총 4분의 유저 테스트를 진행하고 사용자 데이터를 분석하며 서비스 디벨롭에 대한 인사이트, 사용성 개선을 위한 작업 등을 진행하고 있어요!또 현재는 선물박스를 보내면 받는 사람 역시 무조건 패키 앱을 설치해야만 선물박스를 열어볼 수 있는데요,사용자들의 접근성을 높이기 위해서 선물박스를 여는 것(받는 사람은)앱을 설치하지 않아도 선물박스를 열어볼 수 있도록!웹 개발 역시 추가로 진행하고 있습니다!온라인 선물문화를 바꿔갈 패키, 앞으로도 많은 관심 부탁드려요 💕패키 서비스를 사용해보시고 건의사항이 있다면https://docs.google.com/forms/d/1tUBuqqNJSJx8WIC13r9Sl35ZX0Y8OnVXpUifpDZ2Wr8/edit의견 남겨주세요 🥰
iOS앱 노마드월렛 기획자이자 팀 유목민의 PM, 김예진입니다. 유목민은 '유저를 목표로 민첩하게'의 줄임말로, 애자일 정신을 기반으로 일상의 작은 문제를 빠르게 해결해 유저의 삶을 개선하는 팀이 되자는 포부를 담은 이름입니다. 저희 팀은 2023년 하반기, 애플 디벨로퍼 아카데미 @POSTECH 에서 만난 5명으로 꾸려졌습니다. iOS 개발자 3명과 UX 디자이너 1명, 그리고 제가 함께합니다.🤗 프로덕트 소개좀 해주세요~👛 App 노마드월렛양손 무거운 배낭 여행 중 소비 기록을 빠짐 없이, 음성으로 간편하게! 배낭 여행자의 무거운 양손 대신 음성으로 기록하는 똑똑한 여행 가계부 노마드월렛은 음성 녹음 버튼을 누르고 무엇을, 얼마에, 어떻게 결제했는지 딱 세 마디만 말하면 알아서 가계부에 정리합니다. 예를 들어, "에스프레소, 3.5, 카드로." 라고 말하면 녹음이 된 시점의 위치 정보를 기반으로 어떤 나라의 어떤 지역에서 어떤 화폐로 지출했는지 파악합니다. 또 머신러닝을 통해 '에스프레소'를 자동으로 '식비'로 분류하죠.여행을 미리 등록해두면 어떤 친구와 썼는지 자동으로 태깅해 나중에 정산이 완료된 엑셀 파일을 추출할 수도 있습니다. 음성으로 1초만에 기록하면 끝나는 간단한 사용성 덕분에, 양손 무거운 배낭 여행자가 휴대폰을 꺼내 길에서 타이핑할 일도 없어 편리하고 안전합니다. 하루 종일 돈 쓰고 말 한 마디로 기록해두면, 저녁에 숙소에 돌아왔을 때 나만의 비서가 정리해준 것처럼 깔끔하게 분류된 지출 기록들을 확인하고 발 뻗고 잠에 들 수 있습니다.⁉ 프로덕트를 만들게 된 계기는 무엇인가요?초기 아이템 선정을 위해 우리 팀은 일상 속에서 불편을 느꼈던 상황들을 회고하는 시간을 가졌습니다. 3주가 넘는 시간동안 다양한 아이디어를 내보고, 우선순위와 기준을 정해 평가하는 과정을 반복했지만 뾰족한 인사이트가 떠오르지 않아 힘들었습니다. 그 과정에선 향수 시향 과정의 어려움을 해결하는 서비스, 취업 준비를 위한 일정 관리 서비스 등 다양한 도메인의 아이템들을 구체화하고 검증하려는 시도들이 있었습니다. 다만 모든 팀원의 가슴을 울리는 아이템이 떠오르지 않아 시간만 흐르던 중, 함께 식사를 하고 정산하는 과정에서 '왜 이렇게 정산은 매번 복잡하고 귀찮을까?' 하는 생각에 모두가 집중하게 된 겁니다. 정산이라는 대주제를 잡고 초기 기획의 목표를 '정산자도, 피정산자도 깔끔하고 빠른 정산 과정을 경험하게 하자!'에서 시작했습니다. 하지만 한국의 정산 문제를 깊게 들여다보니 돈 계산이 걸려있는 문제를 깔끔하게 해결할 수 없는 상황들이 보이기 시작했습니다. 연장자와의 식사, 친하지 않은 사람들간의 회식, 늦게 참석한 사람이 있을 때의 1/n 정산 상황, 함께 먹는 요리를 시켰는데 누구 한 명은 먹지 못할 때...처럼 복잡한 케이스 속에서 우리는 '어떤 상황'에서의 정산 문제를 해결할 것인가를 명확히 정해야 하는 시점에 도달했습니다. 그 과정에서 해외 여행과 총무의 경험이 많았던 저와 한 팀원이 느꼈던 해외 배낭여행 중의 정산의 어려움에 대한 이야기가 수면 위로 올라왔습니다. 가난한 배낭 여행자였던 저는 매일 얼마를 썼는지 기록하고 영수증을 찾아다니며 빈 돈이 없는지 확인하는 일이 여행 중 매일의 고행이었습니다. 여행 커뮤니티에서 비슷한 고민을 하는 여행자들의 이야기를 수집하고, 주변 친구들의 공감을 얻으며 우리 팀은 간단한 해결책으로 '음성 여행 가계부'를 떠올렸습니다. 정산이 어려운 이유는 결국 얼마를 썼는지 기록하는 것을 여행 중에 자꾸 잊고 지나치게 되는 문제에서 시작됩니다. 현금과 카드, 통화를 바꿔가며 쓰는 배낭 여행자들이 돈 쓰자마자 말 한 마디로 쉽게 소비 기록을 남길 수 있는 형태의 가계부가 있다면 여행이 끝난 뒤 정산은 식은 죽 먹기가 될 것이었습니다. 노마드월렛은 음성 녹음 버튼을 누르고 무엇을, 얼마에, 어떻게 결제했는지 딱 세 마디만 말하면 알아서 가계부에 정리합니다. 1) ML을 사용해 입력하는 항목을 자동 분류하고2) 음성으로 1초만에 기록하면 끝나는 간단한 사용성을 구현했습니다. 3) 세계 어디에 가더라도 실시간 환율을 반영해 한화로 얼마를 썼는지 바로 파악할 수 있어 계산기를 두드릴 일도 없습니다. 팀 유목민은 노마드월렛을 통해 배낭 여행자가 자유를 찾아 떠나는 여정 중에 더 이상 소비 기록의 부담을 느끼지 않고 해방감과 즐거움을 만끽할 수 있는 여행 문화를 만들어가고자 합니다. 배낭 여행 준비물 체크리스트에 “노마드월렛 앱 다운받기”가 들어가는 그 날까지, 설렘을 가득 안고 출발하는 새로운 여정에 매번 함께할 수 있는 여행자 필수앱으로 자리잡는 것을 목표로 삼고 있습니다. 🤝 팀원분들은 어떻게 만나셨나요?팀 유목민은 2023년 3월부터 애플 디벨로퍼 아카데미에서 함께 동고동락해온 팀원들로 구성되었습니다. 팀 포밍 초기에는 팀 유목민의 CTO를 중심으로 이전에 함께 프로젝트를 진행했던 iOS 개발자가 함께하며 팀 구성을 시작했고, 어떤 서비스든 이 친구들과 함께라면 기깔나게 일해볼 자신이 생겨 제가 함께하게 되었습니다. 팀 전원의 합의를 통해 직전 프로젝트에서 UX 고민을 함께 나누며 함께 성장해온 UX 디자이너가 합류하게 됐고, 마지막으로 개발 완성도를 끌어올려줄 개발자 추가 영입으로 팀 유목민이 완성되었습니다.😱 개발은 어떻게 진행이 됬나요?구체적인 여행자들의 소비 기록 문제를 파악하고자 해외여행 커뮤니티를 통해 초기 데이터를 수집했습니다. 엑셀로 여행 지출 기록을 남기고 정산하는 배낭 여행자들로부터 기록물들을 받아보며 어떤 요소들을 중요하게 저장하고 기록하는지 파악하며 음성으로 입력해야 하는 필수 요소를 지출 내용, 금액, 수단으로 추려냈습니다. 음성 인식을 위해서도 고도의 기술이 필요했습니다. 사용자의 음성을 텍스트로 옮기는 STT 과정 중에 1) 숫자를 말하면 지출 금액으로 인식하고2) 지출 수단은 현금과 카드로만 구분해 가능한 다른 요소들이 잘못 인식되지 않도록 분기점을 조정했습니다. 데이터셋을 학습시켜 지출 내용을 입력하면 8개의 카테고리(항공, 쇼핑, 관광, 숙소, 식비, 교통, 선물, 기타)로 자동 분류하는 기능까지 구현했습니다. 물론 개발 과정에서 많은 고민 지점이 있었습니다. 지출 내용, 금액, 수단을 순서대로 말하지 않으면 인식 오류가 발생하는 문제가 있어 이 과정에서 유저들이 쉽게 인지하도록 디자인을 보완해야 했습니다. 또, 여행방을 미리 생성하고 관리하는 탭에서 각 여행의 정보가 섞이는 문제를 해결하는 데에도 많은 공을 들였습니다. 실시간으로 여행 중인 지역의 위치정보를 받아와 화폐와 환율을 적용하는 과정에서 데이터가 사용되고 시간이 지연되는 문제도 있었습니다. 여러 문제를 해결하면서 최종적인 노마드월렛이 완성되고 출시되어 전세계를 누비는 노마드 유저들이 사랑과 관심, 피드백을 전해주고 있습니다. 다양한 의견을 반영해가며 노마드월렛은 계속 성장하고 있습니다.👍 재미있었던 것은 무엇이었나요?유저들의 후기를 듣는 것이 가장 큰 즐거움이었습니다. 그 중에서도 노마드월렛을 데일리 가계부로도 쓸 수 있도록 서비스를 확장하면 좋을 것 같다는 피드백이 기억에 남습니다. 매일 영수증을 수기로 기록하는 아내와 딸이 기록을 놓치지 않을 수 있는 습관을 노마드월렛으로 만들어갈 수 있을 것 같다는 말씀을 함께 전해주셨습니다. 그 피드백을 통해 팀원 모두가 초기에 목표했던 '유저의 일상의 작은 문제를 해결하는 솔루션'을 만들어냈다는 보람을 느꼈던 것 같습니다. 노마드월렛을 개발하며 실제로 유저들의 문제를 해결할 수 있는 서비스를 구현하는 과정에서 얼마나 많은 고민과 합의가 필요한지 이해하며 팀 전체가 성장할 수 있었습니다. 디자인, 개발, 기획 모든 파트에서 시간 내에 구현할 수 있는 수준의 결과물을 동일선 상에서 계속해서 머릿속에 그려갈 수 있도록 대화하고 질문하는 과정이 가장 중요하다는 것을 깨달았습니다.👎 아쉽거나 어려웠던 점은 무엇이었나요?가장 어려웠던 것은 해외에서 여행 중 사용했을 때의 사용성을 확인하기 위해 해외에서 유저 테스트를 진행해야 했다는 점입니다. 환율 반영이 되는 과정에서의 문제는 없는지, 도시간 이동 시 기록의 순서가 자연스러운지, 길거리에서 이동 중 사용했을 때 위험 요소는 없는지 등 현장에서 파악 가능한 요소들을 국내에서 테스트하기가 어려웠습니다. 결국 테스트를 위해 직접 일본 여행을 다녀오며 문제를 해결할 수 있었는데, 시간과 비용 측면에서 더 효율적인 방법을 찾았다면 빠른 서비스 개선이 가능했을 것이라는 아쉬움도 있습니다.💯 앞으로의 계획을 알려주세요노마드월렛이 전세계를 누비는 더 많은 노마드 사용자들의 사랑을 받을 수 있도록 서비스를 유지보수하고자 합니다. 더 나은 사용성을 만들어내기 위해 끊임 없이 유저 테스트와 피드백을 반영해 업데이트하고, 애플워치에서 바로 접근할 수 있도록 확장 버전을 만들어갈 계획에 있습니다.
하루 10분을 투자해서 나를 변화시킬 수 있다면?!매일 잠깐씩 시간을 내서 자기계발을 하고 싶은데, 어떡하지..? 😥사람들은 저마다의 방식으로 ‘갓생’을 살기 위해 노력하려고 하지만,바쁜 일상 속에서 매일 시간을 할애하는 것은 쉽지 않아요.그래서 긴 시간 대신, 자투리 시간을 투자하여 목표 달성을 돕는 서비스를 만들었어요!하루 10분을 투자하여 나만의 습관 형성과 시간 관리 습관을 만들어 볼까요? 🚩💙10분 단위로 내가 집중한 시간을 알 수 있는 ‘스톱워치’💙하루하루 소중한 미션 달성을 기록해 나가는 ‘미션 인증’💙친구와 미션 현황을 공유하며 긍정적인 영향력을 주고 받는 ‘피드’💙성취를 한눈에 볼 수 있는 ‘결과 페이지’💙캐릭터 키우기보다 많은 분들이 서비스를 이용할 수 있도록 iOS, AOS, WEB 세가지 버전을 모두 출시했어요 🎉많은 이용 부탁드립니다! 😊🙌🔗10MM 서비스 링크iOS : https://zrr.kr/6O0ZAOS : https://play.google.com/store/apps/details?id=com.tenminuteappWEB : https://www.10mm.today/안녕하세요 저는 팀에서 주니어 PO 및 금쪽이를 맡고 있는 정우병입니다.'10분만' 팀은 총 10명으로 구성되어 있는데요,기획/디자인 3명, PO 1명, 프론트엔드 4명, 백엔드 3명이 함께하고 있어요.함께 그리고 각자의 영역에서 서비스를 같이 만들어가고 있어요.🤗 프로덕트 소개좀 해주세요~하루에 단 10분을 투자하여 습관을 형성할 수 있도록 도와주는 서비스에요🥳1️⃣ 만들고 싶은 습관이 있다면 미션을 생성하고 2️⃣ 날마다 이를 인증할 수 있어요3️⃣ 내 인증을 친구와 공유할 수 있고 친구에게 응원을 보내줄 수 있어요4️⃣ 인증을 통해 귀여운 나만의 캐릭터를 성장시킬 수 있어요⁉ 프로덕트를 만들게 된 계기는 무엇인가요?현대 사회에서는 다양한 이유로 인해 개인들이 자신의 목표를 달성하거나, 시간을 관리하는 데 어려움을 겪고 있어요. 다양한 목표를 달성하기 위해 동시에 여러 일을 처리하려고 하면서 하나의 작업에 집중하기 어려워졌어요. 이런 와중 숏폼 콘텐츠가 등장하면서 전체적인 집중 시간도 감소한다는 문제도 있었죠.이러한 현대인들의 특성과 어려움을 고려하여, 개인이 1) 자신의 목표를 달성하고 2) 시간을 효율적으로 관리할 수 있는 서비스를 만드는 것을 목표로 프로젝트를 진행했어요. 🎯[멀티태스킹 문화로 인한 집중력의 분산]리서치 결과에 의하면, 성인의 80% 이상은 일상에서 여러 작업을 동시에 처리하는 멀티태스킹 경험이 있다고 해요. 이러한 작업으로는 부업, 사이드 프로젝트, 취미 등이 있었어요.하지만 우리의 뇌는 작업을 전환하는 과정에서 최소 12분이라는 시간이 소요돼요. 이러한 사실을 바탕으로, 작업 간의 빈번한 전환, 즉 멀티태스킹은 1) 집중력을 저하시키고 2) 업무 수행의 효율성을 떨어뜨릴 수 있다는 문제를 발견하게 되었어요.▶️ 우리는 이러한 문제를 해결하기 위해 사용자들이 자신의 일과를 '미션'의 형태로 등록하고, 타이머를 사용하여 집중 시간을 측정하고 기록하는 환경을 만들려고 했어요. 이러한 환경 속에서 사용자들은 하나의 일에 집중할 수 있고, 멀티태스킹으로 인한 집중력 저하를 최소화할 수 있을 거라고 판단했어요. 🕒[짧아진 집중력]최근 ‘숏폼’의 등장으로 전반적인 콘텐츠의 길이가 짧아지고, SNS에서는 단편적인 콘텐츠들이 유행하면서 사람들은 단기적인 자극에 의존하는 경향이 높아지고 있어요. 이러한 변화로 인해 ‘쿼터족 (15분 이상으로 집중을 하지 못하는 세대를 이르는 말)’이라는 용어가 등장했어요. 한편 현대 직장인들의 평균 집중 시간이 13분에 불과하다는 연구 결과가 나오기도 했고요.▶️ 이러한 현실에 맞추어, 사용자들에게 ‘짧은 단위의 집중’을 유도하여 점진적으로 시간을 늘려나갈 수 있도록 돕고자 했어요. 이때 우리는 ‘짧은 단위’의 기준으로 심리적 부담이 가장 적은 ‘10분’을 채택했어요.미션을 수행하는 동안, 10분 단위로 ‘토큰’이라는 시각적 보상이 주어져요. 이를 통해 사용자들은 지속적으로 동기부여를 받고, 집중력을 더 잘 유지할 수 있을 것으로 기대하고 있어요.[다양한 동기부여 요소 추가를 통한 리텐션 향상]미션을 수행하고 토큰을 획득하는 것이 단기적인 동기부여에 도움이 되었지만, 지속적인 습관화를 이끌어내는 것은 어려운 과제였어요. 이를 해결하기 위해 유저 리서치와 전문가 인터뷰를 통해 새로운 동기부여 요소를 찾으려고 노력했어요.리서치 결과, 약 70%의 사용자가 '다른 사람들과 함께 하는 느낌'이 큰 동기부여 요소라고 응답했어요. 또한 전문가와의 인터뷰를 통해 습관 형성을 위해서는 '지속적인 시간에 대한 인식과 피드백'이 필요하다는 의견도 얻을 수 있었어요.▶️위 인사이트를 반영하여, 우리는 사용자들이 완료한 미션을 사진과 글로 공유할 수 있는 '피드 탭'을 만들어 서로 소통할 수 있는 공간을 마련했어요. 더불어, '집중 시간'이나 '달성률' 등의 지표를 시각적으로 제공하여 사용자들이 자신의 상태를 더 잘 인지할 수 있게 도왔어요. 📊이러한 동기부여 요소들을 추가하면서, 사용자들은 서비스 내에서 다양한 재미를 느낄 수 있게 되었어요. 이를 통해 서비스 리텐션 역시 증가시킬 수 있었게 되었고요. 😆🤝 팀원분들은 어떻게 만나셨나요?IT 연합동아리 디프만 14기에서 팀원들을 만나게 되었어요. 운이 좋게도 우수한 팀원들과 함께하게 되었고, 함께 협력하여 우수한 결과물을 만들 수 있었어요.😱 개발은 어떻게 진행이 됬나요?저희는 타깃 고객으로 자기계발에 관심이 많고 새로운 습관을 형성하려는 20대 초~중반 사용자를 설정했어요. 이에 맞춰 귀여운 캐릭터와 UI/UX 요소를 디자인하여 유저 플로우를 설계했어요. 원활한 진행을 위해 전체 팀은 매주 1회 회의를 진행하고, 서버 및 프론트엔드 팀은 따로 매주 1회 회의를 진행했어요. 필요할 때는 상시로 게더에 모여서 추가 회의를 진행하기도 했어요.개발 도구 선택에는 시간적 제약이 있었기에 익숙한 도구와 새로운 도구 사이에서 고민을 많이 했어요. 따라서 웹은 JavaScript(Next.js), 서버는 Java(Spring Boot)를 사용하기로 결정했어요. 초기 기획도 이에 맞게 웹을 통한 서비스 제공을 목표로 세웠어요.1차 MVP는 웹에서 미션 생성 및 인증을 수행할 수 있는 플로우를 구현했어요. 하지만 웹 서비스로는 어려움이 있을 것으로 판단되어, 사용자 피드백과 팀 내 회의를 거쳐 웹뷰로의 전환을 결정했어요. 이후 2차 MVP는 React Native를 사용하여 앱 개발을 진행하고, 웹뷰를 통해 서비스를 제공했어요. 앱과 웹뷰를 서로 조화롭게 사용할 수 있도록 구현했어요.3차 MVP는 서비스의 완성도를 높이는 데 집중했어요. 피드, 리액션, 친구 미션 재촉, 프로필 공유 등 다양한 기능이 추가되었어요. 앱에서는 푸시 메시지와 햅틱 등의 기능을 더했고, 웹뷰에서는 앱 기능을 호출할 수 있도록 인터페이스를 설계했어요. 이 단계에서는 기능이 추가될 때마다 사용자의 반응을 확인할 수 있었는데요, 이러한 반응들이 저희가 새로운 기능을 계속해서 만들어 나갈 수 있는 원동력 그리고 즐거움이 되었던 것 같아요.👍 재미있었던 것은 무엇이었나요?가장 재미있었던 점은 사용자의 반응을 직접 볼 수 있었다는 것이었어요.3차 MVP 출시 이후, 우리 제품에 대한 사용자의 반응을 직접 확인할 수 있었어요. 팀원들과 함께 고민했던 것들이 실제 제품으로 구현되었고, 우리가 만든 제품을 사용하는 유저들의 생생한 반응을 볼 수 있었어요. 이는 팀 전체에 큰 동기부여가 되었고, 저로서도 프로덕트 메이커로서 의미있는 일을 한다는 자부심을 느끼게 해주었어요.사용자들이 우리 제품을 실제로 사용하고 긍정적인 피드백을 주는 것을 보면서 우리의 노력이 더욱 가치있었다는 것을 느꼈던 것 같아요.👎 아쉽거나 어려웠던 점은 무엇이었나요?아쉬운 점은 안드로이드 OS의 하위 버전에서 서비스를 제공할 수 없다는 문제에요. 이 문제를 해결해서 더 많은 유저가 서비스를 이용할 수 있도록 노력할 계획이에요.어려웠던 점은 타이머의 특성을 고려한 웹뷰 개발이었어요. 미션을 시작하고 나면 타이머가 시작되는데, 앱이 완전히 꺼지거나 백그라운드에 머무르는 상황이 발생할 수도 있었어요. 이후에 다시 앱을 실행할 때 적절한 시간을 보여주어야 했는데, 이 문제를 해결하기 위해 앱을 사용하지 않고 웹뷰의 기능만을 이용하여 구현하는 것이 어려웠어요.또 미션 인증하기 기능을 만드는 과정에서도 어려움이 많았어요. ‘10분만’에서 미션을 완료한 후에는 미션 인증을 할 수 있어요. 10분 내로 사진을 올리지 않는다면, 그날 미션은 수행하지 않은 것으로 되어버려요. 이를 구현하기 위해 앱에서는 인증 사진을 올리기 전 서버에 임시 미션 수행 데이터를 저장해두는데요, 이때 다양한 엣지 케이스를 고려해야 했어요. 가령 자정이 넘는 시간에 인증을 하거나, 인증 페이지에서 10분이 넘어가거나, 미션 마지막 날 이 모든 것들이 발생하는 등의 케이스를 고려해야만 했죠. 각각에 대한 정책을 정하고, 비즈니스 로직을 구현하는 과정이 정말 까다로웠던 것 같아요.💯 앞으로의 계획을 알려주세요쉽고 즐거운 습관 형성사용자 여러분이 습관을 더 쉽게 만들고, 재미있게 유지하실 수 있도록 서비스를 개선할 계획이에요. 이를 위해 사용자 경험을 단순하게 만들고, 지루하지 않으면서도 습관을 지속할 수 있는 재미 요소를 추가할 예정이에요.이탈률 및 사용자 경험 개선사용자 분들이 어디에서 어려움을 겪는지 알기 위해 각 퍼널의 이탈률을 지켜보고 있어요. 데이터 분석과 다양한 실험을 거쳐 개선점을 찾아나갈 거예요. 이 과정에서 보다 나은 사용자 경험을 드릴 수 있을 거라 기대하고 있어요.사용자 피드백 수렴 및 반영사용자들의 생생한 목소리에 귀 기울이는 것 역시 중요해요. 어떤 어려움을 겪고 계신지, 어떤 피드백이 있으신지 가까이에서 자주 들어보고 깊이 있게 경청할 수 있는 방법을 마련할 계획이에요. 그렇게 모은 사용자 의견을 앞으로 해야 할 액션 아이템 우선순위에 적극 반영할 계획이에요.
안녕하세요:) iOS 앱 개발자를 꿈꾸는 신정연(매들린)입니다.작년 하반기부터 iOS 개발을 본격적으로 시작해서, 최근에 개인 앱 프로젝트로 <로또일기>를 출시했습니다.저는 작년 애플 디벨로퍼 아카데미 2기를 수료하고, 현재는 새싹 교육과정을 이수하는 중입니다.사람들과 함께 지식과 경험을 공유하는 것을 잘해서, 협업을 좋아하고, UX를 좋아합니다.기획부터 디자인, 개발 모두 2주라는 기간 안에 해야했기에, 앱의 완성도가 다소 떨어지지만 꾸준히 업데이트해 나갈 예정입니다! 응원 부탁드립니다!🤗 프로덕트 소개좀 해주세요~당신은 오늘 로또를 사면서 무엇을 꿈꾸셨나요?우리의 삶에서 희망을 품고 로또를 구매하는 순간이 주는 작은 설렘이 있습니다.'로또 일기' 앱은 그 설렘과 희망을 담아, 당첨되면 실현하고 싶은 꿈들을 기록하고, 나만의 행운을 찾아가는 여정을 돕는 친구가 되어 드립니다.제가 좋아하는 유투버는 로또를 사면, 뒷면에 당첨되면 하고 싶은 일을 적는다고 합니다. 이건 욕심이 아니라 로또에 대한 예의라는 설명을 덧붙이면서요.이렇게 저도 제가 구매하는 로또 하나하나가, 제가 바라던 일들 하나하나가, 헛되이 사라지지 않게 기록하고 싶었습니다.로또를 구매해보신 분들은 사기 전에 어떤 계기가 있었거나,또는 로또를 사면서 어떤 희망이나 설렘을 가져본 경험이 있으셨을 텐데요,저는 그 경험을 기록할 수 있는 앱을 만들었습니다!주요 기능으로는- 로또 결과를 바로 확인할 수 있는 기능(번호를 직접 입력하거나 QR코드 인식),- 나한테 의미 있는 번호는 저장하고,- 랜덤으로 재미있게 로또 번호를 생성하는 기능,- 현위치와 주변 로또 판매점을 조회할 수 있는 기능,- 로또를 사게 된 계기나, 사고 나서 느낀 감정을 기록할 수 있는 일기와,- 사진과 로또 번호, 그리고 소원 태그를 기록할 수 있는 기능,그 외에도 로또 결과 발표 시간에 알림을 주는 기능이 있습니다.추후에는 소원 태그와 구매 통계를 차트로 보여주는 기능을 1.1ver에 추가할 예정입니다.앱을 출시하고 나서, 아직 제대로된 홍보는 하지 않아서, 지인 선공개를 해보았었는데요,제 주변분들이 로또를 처음 구매해보기도 하고,제 앱으로 추천받은 번호로 5등까지 당첨되었다는 소식도 들어서, 저도 흥미롭게 리뷰를 보고 있습니다.ㅎㅎ⁉ 프로덕트를 만들게 된 계기는 무엇인가요?제가 좋아하는 유투버는 로또를 사면, 뒷면에 당첨되면 하고 싶은 일을 적는다고 합니다. 이건 욕심이 아니라 로또에 대한 예의라는 설명을 덧붙이면서요.이렇게 저도 제가 구매하는 로또 하나하나가, 제가 바라던 일들 하나하나가, 헛되이 사라지지 않게 기록하고 싶었습니다.로또를 구매해보신 분들은 사기 전에 어떤 계기가 있었거나,또는 로또를 사면서 어떤 희망이나 설렘을 가져본 경험이 있으셨을 텐데요,저는 그 경험을 기록할 수 있는 앱을 만들었습니다!😱 개발은 어떻게 진행이 됬나요?1. 기획과 디자인 및 개발 준비우선 Figma를 활용해서 디자인과 기획에 대한 큰 틀을 잡았습니다.가능한 많은 레퍼런스 앱과 동행복권 사이트 등을 참고하면서,이렇게 기획과 디자인을 먼저 큰 틀이라도 확정지은 다음,개발에 필요한 기술 스택과 기능들을 찾아봤습니다.2. 개발 과정1) 개발 구조 설계앱에 대한 큰 가닥으로, 로컬 데이터베이스는 어떤 것을 사용할지, API 호출을 위한 네트워크 통신은 라이브러리를 쓸지, 또는 어떤 아키텍처를 사용할 지 등에 대한 고민을 했습니다.그러고 나서는 제가 선택한 로컬 데이터베이스인 Realm에 저장해야 하는 데이터 모델을 정리한 후, 데이터베이스 테이블을 만들었어요.그리고 앱의 규모가 mvp 단계에서는 그리 크지 않았지만, 점점 기능을 추가하면 로직이 다양해질 것으로 예상해서, MVC와 MVVM을 섞어서 활용했습니다.또 제가 사용할 네트워크 통신 라이브러리인 Alamofire와, 동행복권 API의 콜 제한과 같은 조건을 조사했고,그리고 가장 러닝커브가 있다고 생각되었던, 카카오맵SDK를 활용해서 주변 복권 판매점을 키워드로 검색 후 지도에 띄을 수 있는 로직을 공부했습니다.특히 카카오맵SDK는 최근에 ver2가 나왔던지라, 레퍼런스가 전혀 없어서, 샘플 코드와 공식문서로만 개발을 해보았다는 점에서 의미있었습니다.2) UI와 비즈니스 로직누구는 UI부터, 누구는 비즈니스 로직부터 설계합니다.개발자마다 다른 것 같은데, 저는 UI부터 크게 잡아두고, 비즈니스로직을 개발하는 편입니다.눈에 보이는게 있어야 스스로 이해하면서 개발하기 편하더라구요.UI 레이아웃은 SnapKit과 다양한 CollectionView레이아웃을 잡을 수 있는 Diffable DataSource + Compositional Layout도 활용해보았습니다.이 과정에서 Realm 데이터 수정 및 삭제 로직과의 충돌을 여러번 만났는데요, 이런 과정을 트러블슈팅으로 블로그 글로 잘 정리해두었습니다.https://velog.io/@maddie/iOS-Diffable-Realm-Delete-Error3) 예외처리출시 이후 업데이트를 준비하던 도중 '렛어스고'라는 iOS 컨퍼런스에 참여해서, 우연히 예외처리에 대한 세션을 들었습니다.저는 UX를 고려한 개발을 할 때 유난히 재미를 느끼는 편인데, 특히 예외처리에는 개발자 버전과 유저 버전이 있다는 점이 흥미로웠습니다.예를 들어, 네트워크 통신이 실패한 상황을 가정해봅시다.예외처리 - 개발자 버전에는 네트워크 단절 상황인지, 잘못된 url인지, 인증에 실패했는지 등에 대한 내용을 다루지만,예외처리 - 유저 버전에는 네트워크가 하여튼 왜 안되는지에 대해서는 자세히 알리지 않고, 그래서 어떤 액션을 취해야 하는지("연결 상태를 확인해주세요", "로그인 상태를 확인해주세요", "문제가 계속되면 지원팀에 연락해주세요" 등) 안내하는 것이 좋습니다.바로 제 앱에도 업데이트해보았습니다.👍 재미있었던 것은 무엇이었나요?온전히 제 힘으로 앱을 출시해보니, 없던 주인의식이 생겼습니다. 😂기존 프로젝트들은 보통 팀원 중 한명으로, 팀에 도움되는 일이나, 앱에서 필요한 기능을 개발하는 편이었는데,온전히 제가 넣고 싶은 기능과 제가 생각했을 때 옳은 UX를 생각하면서 개발하니까, 자유를 느꼈습니다.👎 아쉽거나 어려웠던 점은 무엇이었나요?주변 개발자와 이야기할 때 "공수산정 대실패"다, 라는 말을 썼는데요,저에게 주어진 기간은 단 2주, 그 안에 완성해서 출시하는 것이 목표였다면, 앱의 규모를 좀 더 작게, 심플하게 가져가는 게 맞지 않았을까 하는 생각이 듭니다.그리고 실제로 제가 개발할 수 있는 능력치와 그에 걸리는 시간을 미리 계획하고, 실행하는 것이 정말 어렵더라구요.또 애플 스토어 입장에서 Lottery를 주제로 한 앱이니, 무조건 리젝을 한 번 당하겠다는 예상은 했지만, 막상 정말 받아보니 좀 당황스러웠습니다.리젝 사유에는 법적인 사항도 들어있었기에, 기존에 있었던 '로또구매(동행복권 사이트) 웹뷰'는 사라지게 되었습니다.앱 입장에서는 크리티컬한 기능이 빠져야했기 때문에, 리젝 이후에 UI 수정이 불가피해졌습니다.이 부분도 미리 알았다면, 구매와 직결된 기능은 넣지 않고 기획하지 않았을까, 하는 생각이 듭니다.첫 출시와 첫 리젝이라니, 좀 겁을 먹었던 것 같기도 합니다🥹(그리고 전 역시 협업이 더 좋습니다ㅎ🤣)💯 앞으로의 계획을 알려주세요현재 Google Analytics와 Crashlytics를 통해 유저의 사용 현황과 Crash를 추적해서 관찰하고 있습니다.아직 버그 투성이이고, 세세하게 개발하지 못한 기능도 있어서, 이 부분에 집중해서 업데이트를 꾸준히 이어나갈 예정입니다.(나중에는 광고도 달아볼 생각이에요. 아직 광고가 없는 버전을 이용할 수 있으니, 많은 관심 부탁드립니다😇)🧑💻 기타 공유하고싶으신 내용 말씀해주세요제가 다른 팀원분들과 같이 만든 “청각장애인을 위한 앱” 비스담도 많이 사용해보세요.아래에서 다운로드 가능해요(현재 IOS만 지원하고 있어요)https://apps.apple.com/kr/app/%EB%B9%84%EC%8A%A4%EB%8B%B4-bisdam/id6470152960https://letspl.me/booth/bisdam
안녕하세요. 저는 김혁진이라고 합니다.3년 차 백엔드 개발자인데, 혼자 이것저것 개발하는 걸 원래 좋아해요.그동안 10개가 넘는 웹, 앱 다양한 제품을 개발했었어요.이번에도 혼자 개발을 진행했습니다.🤗 프로덕트 소개좀 해주세요~내가 선택한 시간에, 선택한 앱들을 차단하는 앱이에요.습관적으로 앱을 실행시켜도 사용할 수 없게 되죠.무의식적인 사용을 방지하려는 의도에 가까워요.⁉ 프로덕트를 만들게 된 계기는 무엇인가요?요즘 인스타그램이나 유튜브 쇼츠 등 사람들이 하루 종일 휴대폰에 빠져 있잖아요.어느 날 저는 분명 산책에 집중해서 혼자만의 시간을 가지고 싶었는데, 자꾸 걸어가면서 무의식적으로 휴대폰을 켜서 앱들을 열게 되더라고요.분명히 저는 사용할 생각도, 목적도 없었는데 말이죠.그래서 저도 '아, 나도 스마트폰 중독인가?'라고 생각했었죠.저는 새로운 제품 아이디어를 찾을 때 가끔 레딧 같은 해외 커뮤니티에 들어가서 사람들이 어떤 고민과 문제를 겪는지 찾아보곤 하는데, 다들 비슷한 문제를 겪더라고요.알아보니 기존에 앱을 차단해주고 사용 시간을 관리해주는 앱은 이미 존재했었어요.저도 앱을 다운받아서 사용해봤는데, 제가 사용하려는 목적에 비해 앱이 무거운 경향이 있었어요.또 사람들도 앱의 구독 가격이 너무 비싸다는 등의 의견이 많았었죠.그래서 제가 직접 단순한 앱 차단기를 만들려고 했었어요.😱 개발은 어떻게 진행이 됬나요?우선 저는 기존의 앱들은 대부분 Flutter로 개발했어요.아무래도 Aos, iOS 둘 다 빠르고 쉽게 만들 수 있기 때문에 선택했었죠.내가 목표로 했던 기능은 비교적 최근에 나온 기술에 속해서 네이티브 언어로 사용하고자 했고, 한 가지 스토어에 집중하고 싶었어요.그래서 기왕이면 제가 아이폰을 사용하기 때문에 iOS swift를 사용하기로 했죠.총 개발 기간은 5일 안쪽이었던 것 같아요.단순한 UI와 기능인데도 앱 사용을 제한하는 기능에 대한 자료가 부족했어요.그래서 공식 문서를 확인하기도 하고, 얼마 없는 예제 코드를 사용했어요.별도의 서버는 두지 않았어요. 앱 사용 관련 정보는 사용자들에게 민감한 데이터일 수 있고, 작업량을 늘리고 싶지 않았죠.이후 앱 스토어 심사에 넣으려고 업로드를 하는데, 평소와 다르게 업로드 오류가 나왔었죠. 자세히 알아보니, 해당 기능에 접근하려면 애플에 관련 심사를 요청해야 했었습니다.심사 요청 이후 일주일 동안 기다리게 되었지만 안타깝게도 리젝이 되었어요.혹시 내가 선택한 옵션 중에 문제가 있었던 옵션이 있었나 싶어 다시 자세히 심사지를 읽어보고, 다시 신청해서 다행히 통과하게 되었습니다.하지만 심사 이후에도, 문제 해결이 되지 않았어요. 앱 권한도 추가해뒀고, 심사 요청도 성공적이었지만 여전히 오류가 나왔어요.원인을 찾기 위해 애플 커뮤니티에도 찾아보았지만, 애초에 자료 자체가 별로 없었어요.그래도 꼼꼼히 관련 게시물들의 댓글들을 읽다가 가족 관리 기능을 위해 추가한 extension 설정 또한 심사를 받아야 한다고 했었죠.다시 한번 extension을 포함해서 심사를 넣고, 승인 후 앱 권한을 추가하였더니 무사히 업로드에 성공했습니다.스토어 심사는 많이 올려본 짬밥이 생긴 건지 다행히 심사가 한 번에 통과했었습니다.👍 재미있었던 것은 무엇이었나요?아무래도 이번에는 개발 자체에 집중하기보다는, 제가 겪은 문제에 대해 집중하고,해외 커뮤니티에서 사람들이 어떤 문제를 겪는지, 기존의 앱은 어떤 문제가 있는지 알아보는 과정에 집중해봤어요.그리고 한 번에 복잡하게 만들기보다는 가장 단순한 기능 하나 출시를 하고, 이후 개발하기로 마음먹었죠.실제로 다른 기능은 현재 개발하지 않고 버튼만 추가해두었는데, 클릭하면 '이런 기능을 원하면 요청하세요!'라는 느낌이죠.많은 수의 요청이 있으면 해당 기능을 출시할 생각이에요.👎 아쉽거나 어려웠던 점은 무엇이었나요?심사 기간이 상당히 길었던 부분이 아쉬워요.심사 옵션을 꼼꼼히 읽어볼걸 그랬고, extension 심사도 해야 한다는 걸 빠르게 인지했으면 더 좋았을 걸 그랬다는 생각이 들어요.💯 앞으로의 계획을 알려주세요저는 그동안 스토어에 다양하고 많은 앱들을 출시했었어요.조금 더 지켜봐야겠지만 출시한 지 일주일 정도가 지났는데, 다른 앱들보다 노출 수와 판매량 지표가 월등히 좋은 상태에요.아직 데이터를 정확히 수집하는 부분을 신경쓰지 않아서 더 확인해봐야 알 것 같아요.만약 많은 사람들이 사용하고, 다양한 피드백이 들어온다면 종합해서 추가하면 좋을 것 같은 기능을 추가해볼 생각이에요.실제로 저도 사용 중이라 필요하다고 생각되는 기능이 있다면 업데이트 해볼 것 같네요.