본문 바로가기

iOS 개발

iOS 야곰 커리어 스타터 캠프 3기 수료 후기

2021년 5월부터 6개월동안 진행했던 iOS 야곰 커리어 스타터 캠프가 끝이 났다.
'기억보다 기록이 중요하다'는 것을 배웠기 때문에, 캠프에 대한 회고를 해보려 한다.

 

결론적만 말하자면 야곰 커리어 스타터 캠프는 iOS 개발을 시작하는 사람에게 정말 강추한다.

아래에 캠프를 시작하게 된 이유, 캠프에서 배운 것 등등을 의식의 흐름대로 써보려 한다.

진짜 의식의 흐름대로 씀

 

캠프를 시작하게 된 이유

야곰 커리어 스타터 캠프를 존재를 알게 된 당시 나는 UI/UX디자이너로 일하고 있었다. 평소에 앱을 만드는 일에 관심이 많고 사이드 프로젝트를 여러개 진행한 나는 앱 개발에도 관심이 있었다.
그 시기에는 디자이너가 코딩을 배우는것이 유행하던 시기였는데, 그 때 파이썬을 독학하고 야곰의 Swift 문법 강의도 들었었다. 코딩은 대학생일 때 계절학기로 C++을 공부했어서 거부감은 없었다. 하지만 야곰 캠프는 전일제로만 등록해야 했고, 회사에 다니고 있었기 때문에 다음 기회를 기약하며 1기 신청을 넘겼다.

디자인 일을 하면서 회의감을 느끼던 나는 그 해 9월 퇴사를 하고 푹 쉬면서 내가 정말 좋아하는 일이 무엇인지 깊이 고민했었다.
결론적으로 나는 앱을 기획하면서 만드는 일을 좋아하고, 실제로 사람들이 앱을 써주면서 많은 성취감을 느꼈다. 그리고 개발자에게 맡기는 것이 아니라 내 손으로 직접 앱을 만드는 경험을 하고 싶다고 생각했다.
그 중 iOS를 택한 것은 대학생때부터 맥북을 사용했는데, 맥북의 사용자 경험이 너무 마음에 들었다. 아이폰을 같이 사용하면서, 애플의 일관된 사용자 경험을 제공하는 점을 보고 iOS 개발을 하고자 마음 먹었다.

가격을 보고 처음에는 망설였지만 다른 캠프들에 비하면 저렴한 편이라고 들었기 때문에 지원하기로 마음먹었다. 그리고 다행히 3기에 붙어서 캠프를 시작할 수 있었다.

 

무엇을 배웠나?

1. iOS 개발에 대한 기초 지식

iOS 커리어 스타터 캠프라는 이름에 걸맞게 iOS 개발을 하는데 필요한 기본기는 모두 배울 수 있다. 자세한 커리큘럼은 홈페이지에 다 적혀있다.
https://www.yagom-academy.kr/camp/career-starter/ios

커리큘럼들은 기수에 따라 조금씩 달라진다고 한다. 나는 기초 문법만 아는 상태로 들어간거라 커리큘럼을 봐도 뭔지 몰라 상관이 없었다.

 

캠프에 들어오기 전 김정님의 iOS 개발자 학습 로드맵이라는 걸 보았는데, 지금 와서 다시보니 표의 90%이상은 캠프 내에서 배우거나 최소한 키워드를 들어본 내용이다.

 

활동학습에 대해 얘기를 하자면, 주에 2번 활동학습을 진행하는데 처음엔 너무 적은것 아닌가 싶었지만.. 절대 적지 않고 프로젝트 시간까지 생각하면 시간이 빠듯했다.

예습을 성실하게 해와야 활동학습을 더 알차게 보낼 수 있었던 기억이 난다. 그래서 활동학습 전날에는 프로젝트를 잠시 내려놓고 예습하는 시간을 가졌었다.

 

활동학습은 강의 방식일 때도 있지만, 모둠끼리 같이 리서치를 한다거나 게임을 하는 식으로 진행하기도 했었다. 개인적으로 그냥 강의하는 방식의 활동학습은 잘 기억에 안 남아서 복습해야 할 것 같다. 토론식이나 모둠 미션을 통해 공부하는 활동학습이 더 좋았는데, 모둠원과 토론하고 설명하는 과정을 통해 머리에 더 오래 남은 것 같다.

 

2. 공부의 방향성

캠프를 하면서 내가 뭘 모르는지 알게 되었다.
혼자서 iOS를 공부했을 때는 그냥 구현만 하면 되지 않나..라고 생각하던 시절이 있었다. 하지만 튼튼한 기초가 없으니 단순히 돌아가기만 하는 코드를 짤 수 밖에 없었다. 이렇게 처음 시작하는 사람은 어디서부터 손을 대야할 지 모르는 게 당연하다고 생각한다. (내가 그랬으니까)

야곰 캠프에서는 개발을 할 때 필요한 큰 구성들을 넓게 훑을 수 있다. 기초 CS부터 아키텍쳐, 디자인 패턴, iOS에서 사용하는 프레임워크 등등을 넓게 배운다. 이 과정을 통해 내가 어느 부분을 모르는지, 나중에 더 깊이 공부할 필요가 있을 때 어떤 키워드로 검색해야 하는지 알 수 있게 되었다. 야곰의 '삽질을 할 때 어딜 삽질해야 할 지 알려준다'는 말에 정말 공감했다. 

 

6개월 내내 나의 모습 ㅎㅎ

 

3. 협업하는 자세

캠프의 장점 중 하나는 같은 iOS 개발자와 팀프로젝트를 진행하는 경험을 할 수 있다는 것이다.

팀플의 장점은 같은 요구사항을 보고 서로 구현하는 방법이 달라서 비교하면서 더 나은 방법을 적용할 수 있다는 것이다. 그리고 자료를 공유하면서 구현하다 발생하는 버그도 혼자할 때보다 빠르게 고칠 수 있다. 그리고 선배에게 물어보러 갈 때 용기가 생긴다. ㅋㅋㅋ 

 

사람이 같이 모여서 하다 보니 힘든 점도 있었다. 생활 패턴이 안 맞는 경우 만날 수 있는 시간이 적었다. 나는 야행성인데, 그나마 같은 야행성 분들과 많이 만났던 것 같다.

그리고 만약 결정을 잘 못하는 두 명이 만나게 되면 결정하는 데에 시간을 많이 쏟을 수 있다. 한 번은 다른 캠퍼와 서로 코드를 짜오고 비교해서 프로젝트에 도입하려고 했었다. 두 코드의 장단점을 비교하고 합리적인 선택을 하고 싶어서 결정하는 시간이 늘어지게 됐는데, 기한을 넘겨서 PR을 보내기도 했었다.

 

캠프를 통해 바뀐 점

1. 코드에 이유를 찾게 된다.

매 프로젝트를 할 때 담당 리뷰어를 배정받게 된다. PR을 보내면 리뷰어께서 리뷰를 해주신다. 리뷰하실 때 코드를 짠 이유와 의도를 물어보시기 때문에 후반부로 갈 수록 왜 이렇게 써야하는지에 대해 고민했던 것 같다. 그리고 이런 질문들을 통해서 내가 어떤 부분에서 생각없이 코드를 짰는지 알게 되었다.

 

2. 영어 문서를 읽는 것이 익숙해졌다.

애플의 공식문서와 WWDC를 위주로 학습하게 되는데, 모두 영어로 되어 있어서 이해하기 어려웠다. 파선생님과 구선생님ㅎㅎ의 도움을 빌려서 어찌어찌 번역을 해서 읽었었다. 영어로 읽기도 힘든데 모르는 개념이 너무 많아서 읽기가 더뎠지만, 결국엔 익숙해졌다. 영어 공부를 따로 하지 않아도 영어 공부까지 되는 느낌이다. 🧐


3. 자료를 찾을 때 출처에 대해 의심(?)하게 되었다.

어떤 자료를 찾을 때 빠르게 맥락을 확인하기 위해선 한글로 된 자료를 참고했지만, 깊게 공부할 땐 꼭 공식 문서를 찾는 버릇이 생겼다. 왜냐면 어떤 문서에서는 A가 맞다 했는데, 다른 블로그에서는 B가 맞다고 하는 경우를 몇 번 보다보니 정말 이게 맞는지 한 번 더 확인하게 되었다.

 

4. 기록을 더 꼼꼼히 하는 습관이 생겼다.

캠프 생활을 하면서 주말과 수요일을 제외한 날에는 TIL(Today I Learned)과 회고를 쓰는 것이 규칙이었다. 나는 캠프 기간동안 개인 노션 페이지를 만들어서 그때 그때 찾아본 키워드나 활동학습 내용을 기록했다. 하루를 마무리하며 기록한 내용을 가다듬어서 TIL을 작성을 했다. 키워드나 관련 자료 등을 상세히 적어놔야 TIL을 편하게 쓸 수 있었다.

개인 노션 페이지에 거의 매일 메모했다. 6개월동안 총 220개의 노션 페이지를 작성했다.

 

건강하고 훌륭한 커뮤니티

사람이 모이는 곳에는 반드시 또O이가 있다고 하는데, 이 캠프에선 상식에 어긋나는 행동을 하시는 분을 못봤다. (설마 나인가..?😨 )
물론 팀프로젝트를 하면서 개인적인 성향이 다른 사람은 있었지만, 다름이지 틀림이 아니기 때문에 조율하면서 잘 맞춰가니 큰 문제는 없었다.

무엇보다 가장 좋았던 것은 태도가 좋고, 배우려는 의지가 있는 사람들이 모여 있었다는 것이다. 깊게 생각하려고 노력해서 질문의 수준이 높고 문제에 접근하는 다양한 방법에 대해서도 경험할 수 있었다.

그리고 무엇보다 3기 캠퍼들의 분위기가 화기애애하고 같이 으쌰으쌰하는 분위기여서 힘내서 마칠 수 있었다.

(3기 캠퍼분들 감사랑합니다 💓)

 

캠프 지원을 고민하는 분들께...

혹시나 이 글을 보고 야곰 커리어 스타터 캠프를 고민하는 분이 있을지도 몰라서 몇가지 케이스를 생각해봤다.

 

  • iOS 커리어를 시작하고 싶은데 기초부터 체계적으로 배우고 싶다 < 강추
  • 내가 iOS 개발에 대해 뭘 모르고 아는지 잘 모르겠다 < 강추
  • 실력있는 iOS 개발자들과 교류를 하고 싶다 < 강추
  • 실제 앱을 만들어서 배포하는 과정을 겪고 싶다 < 추천 - 배포하는 것을 뺀 실제 앱을 만드는 과정을 겪을 수 있음

만약 본인이 위의 4가지에 해당한다면 야곰 아카데미 캠프를 적극 추천하고 싶다. 

 


 

글을 정리하면서 좋은 개발자에 대해서 고민을 하게 되었다.

결국 중요한 것은 인성이라고 생각한다. 실력이 좋다하더라도 커뮤니케이션이 어려운 개발자, 같이 일하기 어려운 개발자는 환영받지 못한다고 한다. (다른 모든 직군도 마찬가지겠지만..)

좋은 개발자가 뭐다 라고 지금 단언하기엔 아직 경험이 부족한 것 같다. 언젠가 나만의 정의를 할 수 있을 것이라 생각한다.