애플사이다의 iOS 개발 일지

[2022년 회고] 5년의 커리어를 접고, 노베이스에서 iOS개발자가 되기까지 본문

비전공자용 노력

[2022년 회고] 5년의 커리어를 접고, 노베이스에서 iOS개발자가 되기까지

Applecider 2023. 2. 12. 16:24

개발자 글쓰기 모임인 “글또”의 8기로 참여하게 되었다. 다른 개발자들과 함께 좋은 글을 쓰는 방법에 대해 고민하고 성장하고 싶다는 것이 계기였다. 글또에 공유할 첫 번째 글로 <2022년 회고>를 작성해보려 한다.

(2023년으로 넘어온지 벌써 한 달이 지난 시점이라 많이 늦었지만... 그래도 글또 덕분에 바쁜 와중에 글을 쓸 동기부여를 받았다.)


2022년을 한 줄 요약하면

“노베이스로 부트캠프 7개월 과정을 거치고, 5개월 뒤 iOS 개발자로 취직했다.” 이다.

 

이걸 좀 더 풀어보자면

“5년간 쌓아온 커리어를 접고,

야곰아카데미 부트캠프에서 7개월 동안 공부하고,

제주 한달살이로 워케이션하면서 개인 앱을 출시하고,

수십 번의 탈락 끝에 아이디어스의 iOS 개발자로 취직했다.”가 된다.

 

그 과정에서 느낀 것, 배운 것과 앞으로의 다짐을 적어보려 한다.

다뤄볼 내용은 아래와 같다.

 

1. 2022년 연간 목표

2. 4가지 성취

    2-1. 부트캠프 수료

    2-2. 앱 출시 (feat. 제주 한달살이 워케이션)

    2-3. 이커머스 iOS 개발자로 취업 

    2-4. 꾸준한 블로깅

3. 재평가

    3-1. 좋았던 점

    3-2. 아쉬운 점

4. 2023년 연간 목표

 

*회고란?

회고는 개발공부를 시작하면서 처음 접한 개념이었다. 부트캠프에서, 그리고 현재 재직 중인 회사에서 회고를 진행해 봤다. 일정 기간을 주기로 내가 지나온 길을 재평가하고, 이를 바탕으로 앞으로 갈 일에 도움이 될만한 포인트를 찾아낸다는 것에 의의가 있다. 또한 무엇보다 초심을 잃지 않도록 스스로 체크리스트를 만들어 현 상태를 점검하는 기회가 된다.


1. 2022년 연간 목표

모바일 앱을 통해 다양한 분야에서 사람들의 일상이 바뀌는 것을 목격했고, 각종 앱의 해비 유저였던 나는 자연스레 앱 개발에 관심을 갖게 됐다. 당시 발전소에서 엔지니어로 근무 중이었는데, 변화와 성장에 갈증을 느껴서 유튜브와 책을 통해 Swift 독학을 시작했다.

 

그러다가 야곰아카데미를 알게 되었고, 2021년 9월 시작되는 부트캠프에 등록할 계획을 세우고 퇴사를 했다. 당시 대리로 승진도 했고 나름 잘 다니던 회사였기 때문에 고민이 컸지만, 아래의 말을 듣고는 커리어 전환에 더욱 확신을 가지게 되었다.

“지금 있는 곳에서의 5년 후를 생각해 봐.”

 

같은 분야에서 일했고, 10년 동안 알고 지내며 많은 영감과 자극을 주는 선배가 해 준 말이었다. 내 계획과 비슷하게 IT 분야로 커리어를 전환하여 스타트업에 취업했고, 능력을 인정받아서 취업한 지 1개월 만에 연봉을 1천만원 높여 받고 보람차게 일하고 있었다. 이걸 가까이서 지켜보며 수평적인 조직 문화, 그리고 빠르게 결정하고 효율적으로 일하기를 경험해보고 싶었기에 스타트업에 취업하는 것을 목표로 잡았다.

 

2021년 회고는 따로 작성하지 않고, 부트캠프 후기로 대체했는데, 개발에 뛰어들게 된 얘기는 나중에 풀어보려 한다.

2022년 설정했던 커리어 목표
  • 해마다 Notion을 활용해서 연간 목표를 세운다. 월 단위로 Review하는 시간을 통해 목표를 수정하기도 한다.
  • 커리어 외에도 건강, 재테크, 문화생활, 관계, 여행 항목으로 나누어 관리한다.

2. 4가지 성취

2-1. 부트캠프 수료

부트캠프 생활은 다시 생각해도 치열했다. 새로운 개념을 배우고, 프로젝트에 적용하고, 토요일에는 복습스터디를 하는 생활의 반복이었다. 야곰아카데미의 교육철학에 따라 끊임없이 근거를 찾으며 문제를 해결하는 연습을 했다.

 

이상적인 동시에 지금 생각해 보면 굉장히 무서운 말이다. 개발자로서 필수적으로 지녀야 할 태도이기도 하지만, 누군가 떠먹여 주는 게 아니기 때문에 온라인상의 방대한 텍스트를 뒤지고, 추론하고, 다시 코드를 수정하고, 새로운 문제를 만나고…의 과정을 거쳐야 하는데, 끝이 안 보여서 막막하기도 하고 고통스러울 때가 많기 때문이다.

 

가장 힘들었을 때는 iOS 공부의 ‘3대 장벽’을 만났던 시점이었는데, 노베이스라서 당연히 힘든 거라고 위안 삼으며, 부트캠프의 동기/선배들과 함께 머리를 쥐 뜯으며 스터디를 했다. 힘든 만큼 문제를 해결했을 때의 희열도 컸다. 내가 작성한 코드가 시뮬레이터 상에 화면으로 그려지는 것이 재밌었다.

*3대 장벽 - TableView, 네트워크, RxSwift

큰 좌절을 가져다 준 계산기 프로젝트 (왼쪽) / 처음 네트워크를 구현했던 오픈마켓 프로젝트 (오른쪽)

너무나 하고 싶었던 개발 공부에 전념할 수 있어서 기쁘기도 했고, 때로는 유능한 동기들과 나를 비교하면서 ‘내가 이 친구들처럼 정말 좋은 개발자가 될 수 있을까?’ 하는 두려움이 커지기도 했다. 그래도 iOS를 업으로 삼는 좋은 동료들을 만나서 재밌게 공부하고 함께 성장했던 시간이라 소중한 경험이었다.

GitHub - 부트캠프에서 진행했던 프로젝트

*자세한 내용은 부트캠프 후기 포스팅을 참고

*링크는 GitHub 프로필을 참고

2-2. 앱 출시 (feat. 제주 한달살이 워케이션)

퇴사한 뒤 제대로 휴식할 시간이 없었기 때문에 부트캠프를 수료한 이후 나에게 주는 선물로 제주 한달살이를 계획했었다. 남들보다 늦게 시작했기 때문에 빨리 취업을 해야 한다는 조급한 마음도 들었지만, 나이를 먹으며 몇 번의 취업/이직을 경험해 본 결과 어디든 일자리는 있고, 굶어 죽지는 않을 거라는 믿음이 있어서 가능했다. (나이 드는 것의 장점도 나중에 써봐야겠다.) 게다가 마침 비슷한 시기에 친구가 회사에서 승진을 하고 안식월을 받아서 운 좋게도 함께 할 수 있었다.

 

당시 부트캠프에서 잘 맞았던 동기 호댕과 함께 앱 출시 프로젝트 '우리뭐먹지'를 진행하고 있었다. 미니게임을 통해 사용자 취향을 분석해서 다 같이 먹을 메뉴를 추천해 주는 앱이다. 수익을 내는 게 아니라 포트폴리오용으로 만들기로 한 것이었지만, 그래도 짜임새 있는 앱을 개발해보고 싶어서 지인을 통해 서버 개발자와 디자이너까지 섭외했다. 이 과정에서 어렵다고 느꼈던 RxSwift, MVVM, URLSession에 대해 제대로 체화할 수 있었고, 서버 개발자나 디자이너와 소통하면서 자연스레 실무에서 발생할만한 문제도 직접 대응해 보는 소중한 경험이 되었다.

*AppStore 출시 앱 ‘우리뭐먹지’에 대한 자세한 내용은 인디 앱 개발 포스팅을 참고

앱 스크린샷

앱의 기능을 설명하는 글과 스크린샷을 준비하고, 새벽까지 작업을 하다가 Apple에 심사 제출을 했는데, 불과 10분 만에 승인 메일을 받았었다. 이때 너무 기뻐서 같이 여행 중이던 친구를 깨워서 소식을 전했던 기억이 난다.

출시 승인을 받은 메일

사실은 제주도에 가기 전에 앱 출시를 완료하고 편안한 마음으로 떠날 수 있을 줄 알았는데… 코드 퀄리티에 욕심을 부리다 보니 작업 기간이 늘어지면서 제주도에서도 코딩을 해야했다. 베케이션 (Vacation)이 워케이션(Workcation)이 됐지만 나름 뜻깊은 경험이었다. 문제해결을 하려면 생각을 해야 하지만, 뇌에 과부하가 오면 머리가 굴러가지 않아서 애를 먹곤 했는데, 주변에 바다와 산이 있으니 언제든 훌쩍 장소를 옮겨 리프레시할 수 있다는 게 큰 장점이었다. 이때 등산과 위스키에 심취해서 요즘도 즐기고 있다.

겉으로는 평안해보이지만 끝없는 디버깅과 싸우는 중

2-3. 이커머스 iOS 개발자로 취업

제주도에서 돌아온 직후부터 취업 준비를 시작했다. 이력서를 다듬고, 서류를 제출하고, 채용 과제를 했다. 채용 과제는 생각보다 어렵지 않았지만, 면접 준비가 만만치 않았다. Swift/iOS 지식을 재정비하면서 아직 멀었구나, 하는 생각을 했다. 이때 앨런의 Swift 강의를 들었는데 비동기, 메모리와 관련해서 이해도를 높일 수 있었다.

 

가고 싶은 기업에서 채용공고가 나지 않아서 마음 졸이기도 했고, 면접에서 예상외로 긍정적인 평가를 받아 기쁘기도 했다. 이미 취직/이직을 해봐서 면접을 적지 않게 경험해 봤지만, 그럼에도 면접은 어려웠고 결과를 장담할 수 없었다.

 

결과적으로 핸드메이드 상품 거래 플랫폼인 ‘아이디어스’ (백패커)에서 합격 통보를 받아 입사하게 되었다. 사실 최종면접을 심하게 망했다고 생각해서 속으로 포기하고 새로운 협업 프로젝트를 구상 중이었다. 심지어 회사 인사팀에서 전화가 왔을 때 ‘여기는 왜 탈락자한테도 전화를 주지?’하고 생각했는데, 합격 소식을 들어서 굉장히 놀라고 기뻐했던 기억이 난다. 😂

 

아이디어스는 평소에 자주 사용했던 앱이기도 하고, 핸드메이드 제품을 다루며 국내 수공예 시장을 키우는데 기여할 수 있다는 의미가 있어 개인적으로 애정이 가기 때문에 즐겁게 일할 수 있을 것 같아 설레었다. 또 다른 도메인에 비해 화면이 복잡하고, 새로운 기능이 정기적으로 도입되는 이커머스 업계에서 빠르게 성장할 것이 기대됐다.

백패커 강남캠프 사무실

입사 직후에 터미널에 git clone을 입력해서 현업 코드를 확인하던 순간이 기억에 남는다. 예상은 했지만 프로젝트 규모가 매우 크고 복잡해서 순간적으로 눈앞이 캄캄했지만, 기존에 작성된 문서를 참고하기도 하고, 앱 사용자의 Kinesis Log를 관리하는 작은 업무를 담당하기 시작하면서 차츰 코드와 서비스에 대한 이해도를 키워나갈 수 있었다.

 

회사 생활은 아직까지 대만족이다. 팀원이 7명인데, 시니어 개발자가 많아서 문제가 생겼을 때 조언을 구할 수 있고, 누군가 질문을 했을 때 누가 먼저랄 것 없이 도움을 주려는 협조적인 팀원들이 많아서 많은 자극을 받았다. 팀원들이 좋아서 일을 더 열심히 하고, 팀에 기여하고 싶은 마음이 생기는 선순환을 경험했다. (전 직장에서는 정반대로… 읍읍)

 

복지적인 측면에서는 주 2회 재택근무, 유연 근무제, 휴가 결재 필요 없음, 넉넉한 간식 창고, 반려견과 함께 출근 등 매우 자유도가 높은 환경이라 놀라면서 다니고 있다. (IT업계에서는 흔할지도 모르지만, 화재/폭발 사고가 발생하는 발전소에 있다가 온 나에게는 그저 신세계…)

2-4. 꾸준한 블로깅

마지막으로 한 가지 성과를 덧붙이자면, 기술 블로그를 꾸준히 운영하고 방문자수를 늘려왔다는 점이다. 부트캠프를 시작하면서 블로그를 개설했고, 구글링을 해봤지만 해결하기 어려웠던 내용 위주로 포스팅을 해왔는데, 보람 있게도 꾸준히 방문자수가 늘었다.

 

특히 12월에는 페북 게시글과 카톡 단톡방에 내가 작성했던 글이 공유되면서 유입량이 급등했었다. 해당 포스트는 일주일 동안 조회수 1천을 넘기기도 했다. 반년 전에 작성했던 글이 현재의 누군가에게 도움이 될 수 있다니, 컨텐츠의 위력을 실감했고 뿌듯함을 느꼈다.

블로그의 베스트셀러 TOP 3

1) 인디 앱 개발 포스팅

 

[인디 앱개발] ✨ 앱 기획부터 출시까지 참고한 링크 - 앱 기획, 디자인, 개발, 배포 준비

최근 2개월 동안 개발했던 앱을 출시하게 됐다. 기획부터 시작해서 디자인, 서버 개발, iOS 개발에 직접 관여하며 진행했던 프로젝트인 만큼 재밌었고 배운 게 많았다. 그 과정에서 단계별로 고려

applecider2020.tistory.com

2) Hashable 해야 한다?

 

[Swift] Hashable 해야 한다? 해쉬값이란? (간단 요약)

안녕하세요. 애플사이다 입니다. Swift Language Guide의 네 번째 챕터 Collection Types에 "Hashable"과 "해쉬값 (Hash Value)"이 등장합니다. 해쉬 개념을 제대로 이해하려면 해쉬 테이블 (Hash Table)이라는 자료구

applecider2020.tistory.com

3) Diffable DataSource 이해하기

 

[CollectionView] Diffable DataSource 이해하기 (1/3) - Advances in UI Data Sources (WWDC19)

CollectionView / TableView와 관련해서 "Diffable DataSource" 개념이 등장했다. 러닝커브가 조금 있는 내용이라 포스팅을 남기려고 한다. ✏️ 새로운 기술을 습득하기 가장 좋은 방법은 Apple이 만든 WWDC 영

applecider2020.tistory.com

3. 재평가

이에 대해 좋았던 점, 아쉬운 점을 간단히 정리해 봤다.

3-1. 좋았던 점

  • 굵직한 3가지 목표 (부트캠프 수료, 앱 출시, 개발자로 취업)을 모두 달성했다.
  • 역량이 부족하다는 생각에 자책을 할 때가 있는데, 스스로에 대한 믿음이 (조금) 생겼다.
  • 커리어 전환을 해보니, 해외에서 일을 하는 것처럼 느껴질 정도로 업무 환경이 달랐다. 한글을 쓴다는 공통점만 있고 나머지는 모든 면에서 달랐다. 매우 수평적인 조직문화, 서로를 존중하는 팀원들, 체계적/효율적으로 진행되는 업무를 경험하게 되어 매우 만족하고 있다.
  • 나는 기록 덕후 (a.k.a. 기록충)인데, 개발 업계에서는 이게 장점으로 취급된다. 새로 배운 내용을 정리하고 누군가와 공유하는 것을 좋아하는 사람들이 많아서 반갑다.
  • 내 MBTI는 INTJ인데 살면서 같은 유형의 사람들을 많이 만나보지 못했다. 그래서 ‘내가 이상한, 유별난 사람인가?’ 하는 생각을 종종 했었다. 그런데 개발자 세계에서 INT* 유형은 꽤나 흔하다. 부트캠프에서, 회사에서 고요하게 자신의 일에 몰두하는 비슷한 성향이 동료들이 많아서 은근히 든든하다. (밖에서 만날 수 없었던 이유는 다들 집에서 조용히 뭔가를 하고 있기 때문이었던 것 같다.)

3-2. 아쉬운 점

  • 개발 과정에서 문제를 만났을 때 공식문서를 읽는 것에 매몰되는 경우가 있었다. 그래서 구글링 키워드를 충분히 고민해보지 않았다. (빠르게 문제해결을 못한다고 자책할 시간에 구글링을 하자. 구글은 답을 알고 있다.)
  • 회사에서 담당하게 된 프로젝트의 작업을 하느라 급급해서, 다른 팀원들이 작성한 코드를 제대로 보지 못했다. 내년에는 점심시간 직후, 회의를 끝낸 직후 등 컨텍스트 스위칭이 발생한 타이밍을 활용해 볼 계획이다.
  • 스타트업에 취업하는 게 목표였으면서, 코딩테스트를 보려고 기웃거렸다. 그래서 부트캠프에서 코딩테스트 스터디에 참여했었는데, (간접적으로는 도움이 됐겠지만) 물리적으로 시간이 부족할 수밖에 없는 상황에서 모든 걸 다하려고 욕심부리느라 에너지를 낭비했던 것 같다.
  • 출시한 앱을 업데이트 하지 않고 방치했다.
  • 영어 공부를 위해 개발 용어를 단어장에 정리하려는 계획이 있었는데 하다가 포기했다.
  • 한달살이를 할 때 매일 아침 조깅을 할 계획이었는데 못했다. ㅎㅎ

4. 2023년 연간 목표

  • 회사에서 진행 중인 글로벌앱 출시 프로젝트를 무사히 완수하고, 안정적인 서비스 운영에 기여하기
  • 업무 중에 접한 키워드 꾸준히 스터디하기
  • 팀원들과 더 잘 협업하기 (29cm의 김우성 개발자님의 특강으로 들었던 “PR로 협업하기”를 회사 코드리뷰에 적용해 볼 계획이다.)
  • 팀원들과 진행 중인 디자인 패턴 스터디 1회/주 참여하기
  • 노수진님의 강의 듣기 (슈퍼앱 운영을 위한 확장성 높은 앱 아키텍처 구축)
  • 사이드 프로젝트로 ‘우리뭐먹지’ 앱 고도화하기 (지도, 즐겨찾기, 로그인 기능)
  • 글또 구성원과 소통하고, 블로깅 1회/2주 하기
  • WWDC 1회/주 보고 정리하기
  • iOS 관련 컨퍼런스 1회/년 참석하기
  • 단어장 만들어서 영어 공부하기

 

쓰다 보니 글이 용두사미가 되었는데... 글또 활동을 통해 보다 가볍고 가독성 좋은 글을 써보고 싶다.

 

- Reference

 

🍎 포스트가 도움이 되었다면, 공감🤍 / 구독🍹 / 공유🔗 / 댓글✏️ 로 응원해주세요. 감사합니다.

Comments