(prologue)

안녕하세요, 까만거북이입니다.
지난 글에 이어지는 패스트캠퍼스 iOS 개발 SCHOOL의 후기이자 리뷰, 2화입니다.

 → 지난 글 바로가기

글이 많이 늦어졌네요.
저번 글이 무려 9월.. -ㅁ-
2달이나 뒤에 2화를 쓰다니, 혹여 기다리신 분들께는 심심한 위로를 전하며.. 이렇게 차일피일 미루다간 강의가 어땠는지 잊어버리고 말겠구나.. 하며, 문득 새벽에 타이핑을 해봅니다.
( 패캠 관계자분들 보고 계신다면, 댓글 한개씩.. 블로거는 댓글을 먹고 살아요. )

이번 글에서는 음. 진짜 강의가 진행되면서의 이야기를 담아볼까 합니다.
미리 이야기하지만, 저는 무일푼(...)으로 본 글을 작성합니다.
모두 담지는 못하겠지만, 강의 진행 중의 사연들 그리고 그 느낌과 감정도 함께 담아보도록 노력해보겠습니다.

참, 그리고 제 깃헙에는 강의 중 작성한 거의 모든 소스가 잘 담겨져 있습니다. -

  → 작성자 깃헙 바로가기


( ↑ 강의 첫 날 찍었던, 명찰 )

강의 속도, 그리고 고시생과 같았던 삶

강의 커리큘럼은 패스트캠퍼스를 참고해보시거나 제 깃헙 강의 노트 시리즈를 참고해보시면 더 자세히 알 수 있습니다.

 → 깃헙 강의 노트 시리즈 바로가기

앞에서 말씀드렸다시피 저는 약간의 선행 학습과 컴퓨터공학 출신이라는 이점을 가지고 있었기 때문에, 첫달 강의는 어영부영 넘길 수 있긴 했습니다.
퇴사 직후, 수강을 시작했기 때문에, 주말에는 약간의 여행도 가보고, 쉬엄쉬엄 듣고 있...던 것은 짧은 시간이었고, 아마 강의 시작 2주 뒤부터 저는 야간 스터디를 남았던 것 같습니다.

오전 10시부터 오후 6시까지 풀타임으로 진행되는 강의를 받고 있으라면, 강의 하시는 강사님도 녹초가 되지만, 받는 사람도 녹초가 되기 마련입니다.
게다가 학교 다닐 때처럼 중간에 잠깐 집중하지 않거나, 다른 것을 하고 있노라면, 바로 흐름을 깨치게 되지요.
솔직히 강의 1주차 때는 깃헙(GitHub) 세팅 방법이나 환경 구축, 그래봐야 Swift 기초 문법 정도를 나가기 때문에 스터디 양은 거의 없었습니다.
2주차 정도가 되면, 이제 뭔가 화면에 그려지기 시작하고, 처음 보는 것들이 등장하지요.
그래도 이때까지는 강의 때 눈만 떠 있으면, 고개를 끄덕거릴 수는 있는 수준이 됩니다.

그러나, 저는 이 때부터 야간 스터디를 남아서 진행했습니다.
이유는 첫째, 스터디에 익숙해지기 위해서.
둘째, 눈으로만 보면, 눈 감고 코딩은 불가능하기 때문에.

강의 중에 제가 자주 했던 말이 "눈 감고 코딩 못하겠다.."인데, 바로 아무것도 없이 백지 상태에서 오늘 배운 것을 소화할 수 있을 때까지 남아서 키보드를 두드렸습니다.
후에 이것은 큰 도움이 되어서, 추후 어려운 것들을 익혀 나갈 때, 기초적인 것들에서 막히지 않고 쭉쭉 밀고 나갈 수 있는 원동력이 되었습니다.
쉽게 예를 들어서, 더하기/빼기를 펜을 들지 않고, 눈으로 보면, 고개를 끄덕거릴 수 있지만, 나중에 곱하기/나누기가 나오면서 미적분까지 쭉 가버리면, 더하기/빼기를 혼자 힘으로 해보지 않은 사람은 이를 소화하기 매우 어렵습니다. ( 더 어려운 예시?? )

여튼, 저는 스스로를 패캠 마감조라고 부르며, 수업 후, 야간 스터디를 거의 남아서 있었고, 때때로 강의하는 건물에서 스터디를 할 때는 11시를 넘어서 건물 경비 아저씨와 말다툼(...)을 한 적도 있었습니다.
나중에는 스스로 강의실 에어컨과 형광등을 끄고, 퇴근 퇴실했던 것 같아요.

그래서 혹여 이 글을 읽으시면서 패캠의 스쿨 과정을 고민하시는 분이라면, 저는 당당히 말씀드리고 싶습니다.
야간 스터디가 아니더라도 스스로 스터디할 생각 없이 그저 강의를 팔로우만 하실 거라면, 패캠 스쿨 과정을 듣지 마세요.
강의를 거의 따라갈 수 없고, 설사 따라가더라도 그저 코드 흉내내기 수준일 겁니다.
그렇게 스터디를 한 저도 지금의 저 스스로를 봤을 때, 코드 흉내내기 수준이라고 생각하고 있으니까요. (.........)

( ↑ 때때로 점심 시간에 답답한 마음을 달래러 갔던 한강 - 패캠 건물에서 가까워요! :D )

수강생에게 달려 있는 강의 퀄리티

그리고 정말 많은 분들이 궁금하고, 걱정하실 강의 퀄리티..
저는 강의를 마치고 두어달이 지난 지금 시점에서도 강의 퀄리티는 강사님 그리고 수강생에게(?) 전적으로 달려 있다고 생각합니다.
일단, 제가 뵈었던 강사님은 저에게 만큼은 "최고"였습니다. ( 다시 한번 말하지만, 저는 무일푼으로 이 글을 작성하고 있.. )

제가 강의 전에 우려했던 점은 한국식(?) 주입식(?) 교육이면 어쩔까.. 3개월 그 짧은 시간이면, 그렇게 하고도 부족한 시간일텐데.. 라는 점이었습니다.
솔직히 패캠 스쿨 과정은 속성 과정에 가까우므로, 코드를 던져 주고, "이렇게 하면, 이렇게 되니까 갖다 쓰시면 됩니다~" 라고 해도 문제가 없었을 것이고, 아마 비전공이 대부분인 수강생들에게는 그러나저러나 같은 강의였을지 모르겠습니다.
그러나, 실제 강의는 그렇지 않았고, "원리와 결과"를 맞춰서 진행하며, 동시에 수강생들의 수준에 맞는 설명을 하기 위한 커리큘럼 조정 등까지 이어졌습니다.
음.. 예를 들면, 저에게 인상적이었던 강의는 객체 지향에 대한 설명과 앱 생명주기 정도였던 것 같네요.
강의가 끝나고, 면접을 여럿 보면서 수차례 질문을 받기도 하면서 여전히 어렵고, 지금도 자신감이 많이 없는 부분인데.. 지나고보니, 그저 외워! 라는 교육을 해주지 않으신 강사님이 무릇 대단해 보였고, 강사님이 아니었다면, 지금만큼이라도 알았을까? 하는 생각이 드네요.
동시에 제가 바랬던 현업의 꿀팁도 100%는 아니겠지만, "강사님이 굳이 이렇게까지 알려주신다고? 이렇게 알려주셔봐야 강사님 입만 아프실텐데.."라고까지 생각했던 부분들도 많았으니까요.

문제는 위에서 이야기한 강의 퀄리티가 수강생에게(!) 전적으로 달려 있다고 한 부분입니다.
프로그래밍이나 세상 어느 공부가 그러하듯, 강의 초기 스터디는 매우 중요한 것 같습니다.
앞서 이야기했듯이 저는 강의 초기부터 개인 스터디를 정말 중요시 생각했고, 거의 매일 강의 노트를 작성해 수강생들과 공유했습니다.
강의의 속도가 빠르기는 하나, 저는 과감하게 비전공자가 매일 스터디를 3시간 이상 투자한다면, 충분히 따라갈 수 있는 속도 및 수준이라고 이야기할 수 있고, 함께 한 저의 동기들이 이를 증명합니다.
다만.. 이 스터디를 하지 않으면, 강의 50% 이후부터는 강의 속도가 정말 빨라지고, 초기 기반을 잡지 못한 분들은 이 속도를 따라가려면, 그보다 훨씬 많은 시간을 투자해야 하는데.. 강의 시간 자체가 하루를 잡아먹기 때문에 그런 시간이 나오질 않죠.
저 역시도 어느 순간부터는 하루 잠을 3-4시간씩 잤더랬습니다.
따라서, 이를 따라가지 못하는 수강생이 되면, 강사님이 퀄리티 있는 강의를 해주어도 이해하지 못하고, 스킵하게 될 뿐더러, 오히려 나중에는 "강사가 못 따라가는 수강생들을 전혀 커버해주지 못한다-"라는 불만을 늘어놓게 됩니다.
높은 수강료가 있으니, 수강생으로서 강사님에게 바라는 요구 사항은 많을 수 있지만, 어쨌든 제가 하고 싶은 말은, 어쨌든 공부는 나의 몫이다..라는 점이 되겠네요.
여튼, 누구보다도 자신있게(아마 패캠 매니저분들도 잘 아실 정도로..), 열심이었던 저는 강의 중간중간 깨알 같았던, 알짜베기 강의 내용들을 지금도 기억하고 있고, 시간이 지난 지금은 iOS 앱 개발에 있어서 정말 유용하고, 맛있는 반찬이 되고 있습니다.
( + 그리고 추천하는 스터디 방법은 아래에 따로 작성해두었습니다. )

사실, 강의 퀄리티 부분에서 예시도 들어가며, 많은 내용을 이 글에서 말하고 싶었는데..
나중에 알고 보니, 함께 수강한 수강생들조차 서로 공감하지 못하는 것을 보고는 저 혼자만 접어두기로 했습니다.
더불어서 저와 함께 하셨던 강사님이 다음 기수도 함께 하시는지는 확실치 않으므로, 이 이야기는 이쯤 해두도록 하겠습니다.
이 자리를 빌어서, 주영민 강사님, 좋은 강의 해주셔서 정말 고맙습니다. (_ _)

( ↑ 매일 같이 수강생들과 공유했던 강의 노트 via GitHub )


퀄리티 말고, 3개월의 커리큘럼

네, 퀄리티 말고, 커리큘럼 이야기를 해볼게요. 간단하게..

강의 커리큘럼은 의외로(?), 패캠 스쿨 소개 페이지 커리큘럼 거의 그대로 진행했던 것.. 같습니다.
( 저는 95% 동일했다고 보는데, 이게 또 아니라는 다른 수강생분들이 계시더란..ㅠ )

솔직하게 두어달 지난 지금 시점(...)에서 몇주차 때 무얼 했고, 몇주차 때 저걸 했고..는 이야기 못하겠습니다.
그러나, 저의 모든 강의 내용은 저의 GitHub에 있으므로, 이를 참고하시면 더더욱이 좋습니다! ( 그만 홍보해!! )

사실 정말로 여기서 어쩌고저쩌고 떠드는 것보다 강의를 들으며, 하루하루 남겼던 강의 노트 그리고 프로젝트 파일들, 소스 코드들이 그 생생한 증거물이 될테니, 제 깃헙을 믿어보심을 추천드립니다. ( 저의 깃헙의 'Leejaesung_iOS_School' 저장소를 참고하시면 됩니다. )
짧게 글로 남겨보면..

첫번째 달은 그냥 GitHub 세팅과 Swift의 문법 설명이 1-2주를 차지했던 것 같네요. 그래도 첫달에 iOS 시뮬레이터에서 뭔가 돌아가는 것을 만들어서 뿌듯했던 때가 바로 계산기와 아래 스크린샷의 야구 게임(내가 생각했던 야구가 아니었어!)를 만들었을 때였네요.

두번째 달은 본격적으로 iOS를 뜯어가며, 하나씩 구조를 파악하고, 원하는 것을 흉내는 내볼 수 있는 때였던 것 같네요. 첫달에도 화면 이동은 했었지만, 둘째달에는 화면 이동의 다양한 방법이라거나, 뷰와 뷰 사이의 데이터의 이동 등등. 대충 통신이 없는 "나 이거 만들었어!" 버전의 앱은 이 때에도 나올 수 있었지요.

세번째 달은 이제 고도화된 앱을 만들기 시작합니다. 코드도 좀 더 간결하게 다듬을 수 있고, 같은 기능인데도 누구는 A를 사용하고, 누구는 B를 사용하죠. 그리고 무엇보다 통신을 배워서 써먹기 시작합니다. 그리고 다양한 오픈소스들을 접목시켜서 대충 보면, 앱이 그럴싸해 보이는? 정도는 만들 수 있게 되죠. ( 자세히 보면, 아직은 시궁창..? )

세번째 달의 1-2주차 정도 되면, 이제 수강생들 중에 나뉘는 것 같습니다.
앞으로 맥북과 시간만 주면, 뭐라도 만들 수 있는 수강생 Vs 지금까지 만들었던 것조차 혼자 만들기 어려운 수강생.. ( 제 멋대로의 주관입니다. )

( ↑ 첫번째 달에 만들었던 야구게임 프로젝트 via Baseball Project )

까북이 추천하는 스터디 방법

음, 이 부분이 제가 개인적으로 생각하는 이 글의 하이라이트 부분이 되겠습니다. ( 에헴 )

하이라이트라고 했지만, 별거 없습니다.

직접 만드시고, 돌려보세요.

정말입니다.
이게 전부입니다.

프로그래밍을 처음 접하시는 분들은 기존의 본인 스타일 대로 공부하는 모습을 많은 수강생분들을 통해 보게 되었습니다.
제 스터디 방법이 정법이 될 수는 없겠지만, 예를 들어, 이론을 열심히 암기한다, 예제 코드들을 따라한다, 강의 때 만들었던 것을 그대로 만들어본다, 강의 노트를 꼼꼼하게 만든다 등등이 있습니다.

물론, 제 깃헙에는 꼼꼼한(?) 저의 강의 노트들이 있습니다만.. 욕심쟁이라고 생각하시고, 거의 추천하지 않습니다.
혹은 직접 만들어보고, 돌려본 후에 여유가 난다면, 강의 노트를 작성하세요. ( 저는 그랬습니다. )

무.조.건.
직접 만들어보고, 그리고 실제로 돌려보도록 합니다.

예를 들어, 오늘 강의 시간에 이것저것 배워서, 사직연산이 되는 계산기를 만들었습니다.
그러면, 야간 스터디 타임 때, 강의 시간에 배우고, 만들었던 계산기를 못 만들었다면, 완성 시키고, 이미 완성 시켰다면, 잠시 생각에 잠겨서 한칸만 업그레이드된 계산기를 떠올려 봅니다.
그래서 계산 내용이 모두 남는 것을 떠올렸고, 그것을 만듭니다.
이 때, 프로젝트를 새로 파서 강의 시간에 만들었던 계산기와는 다르게 새로 만듭니다.
물론, 옆 화면에 강의 시간에 만들었던 계산기 프로젝트를 띄워놓고, 작업해도 무관합니다만.. 최대한 보지 말고, 스스로 만들고, 보더라도 소스를 긁어 일명, 복-붙은 하지 않도록 합니다.
보면서, 직접 타이핑(눈으로 복붙..)하도록 합니다.

문제는 강의 초기 때가 가장 중요하다는 사실이죠.
강의 후반 때야, 워낙에 만드는 것들이 많아서 괜찮은데, 강의 초기 때는 문법 강의나 이론 강의가 많습니다.
이 역시, 문법을 배우더라도 문법을 응용한 예제들은 충분히 만들어볼 수 있습니다.
심지어 iOS 앱이 아니더라도 Swift Playground를 통해 콘솔에서 돌아가는 프로그램을 만들어볼 수도 있습니다.

무조건 만들고, 또 만들고, 부시고 또 만들고를 반복하도록 합니다.
나중에는 Xcode에서 새로 프로젝트 만드는 것이 전혀 어색하지 않을 정도가 되어야 합니다. ( 심지어 마우스에 손을 얹지 않고, 키보드로만 프로젝트를 새로 파서 작업하는.. )

이 과정에 몸에 익어야 나중에 가서도 앱을 하나 만드는 것에 부담이 없고, 심지어 그냥 만들면 되지- 라는 자신감이 생깁니다.
( 무수히 많은 Xcode의 버그에도 자연스럽게 대응하는 몸을 만드는 것은 덤.. )

실제로 저는 위와 같은 방법을 계속 고수했고, 항상 다음 강의 때에 질문할 거리는 미래에 배울 것들인 경우가 대부분이었습니다.
그럴 수 밖에 없는 것이 오늘 강의 때, 만들었던 것을 포함해서 한편 업그레이드 된 기능으로 만들려고 하니, 어려울 수 밖에 없었지요. ( 이걸로 조교님을 많이 괴롭혔었.. )

물론, 강의 초반부터 내가 무얼 만들고 싶다..라고 생각해놓고, 그 앱에 오늘 배운 기능을 하나씩 붙이는 것도 큰 공부가 됩니다.
다만, 이 방법은 내가 생각한 앱에 도저히 오늘 배운 기능을 붙일 것이 없다거나, 혹은 한번 소스를 지저분하게 만들면, 그 코드를 깔끔하게 만들고 싶어서 주객이 전도된다는 단점이 있으니.. 이러한 니즈는 강의 후 팀프로젝트할 때, 혹은 주말에 개인 프로젝트로 새로 장기 프로젝트를 만들어서 하심을 추천 드립니다.

추가로 여럿이 함께 팀스터디, 혹은 여럿이 한 프로그램을 같이 만드는 '페어 프로그래밍' 같은 스터디를 하신다면.. 요것도 조금은 추천하지 않습니다.
이 방법은 그 팀 모두가 으쌰으쌰- 하는 분위기가 되면, 좋지만 그렇지 않으면, 나락으로 빠지기 때문..이지요.

여튼, 제가 추천하는 방법은 뭐가 되든, 무조건 만들어보라- 입니다.


 + 혹여 iOS 스쿨을 수강하시는 분들 중에 스터디 방법에 고민이 있으신 분은 저에게 개인적으로 메일 주셔도 성심껏 답변 해드리도록 하겠습니다. ( 윙크 )

( ↑ 여러명이 한 맥북을 놓고 번갈아 가며, 코딩하는 페어프로그래밍 데이 )
( 안녕하신가요, 
조교님 )

마지막 1개월의 팀프로젝트

대망의 팀프로젝트 이야기를 할 때가 왔네요.
제가 가장 쓰기 싫은 파트입니다. (...)

패스트캠퍼스 스쿨 과정은 총 4개월로 3개월의 강의와 1개월의 팀프로젝트 기간을 전체 과정으로 두고 있습니다.
마지막 팀프로젝트는 iOS 뿐만 아니라, Android, Web(Front-end), Web(Back-end)와 함께 팀을 꾸려서 한달 동안 어떤 결과물을 만들어내게 됩니다.
이 결과물은 실제로 서비스를 해도 좋지만, 보통은 취업 포트폴리오용으로 활용하는 경우가 대부분이고, 그럴 수 밖에 없는 것이 모두 초보들이 모여서 불과 1달도 안되는(거의 3주 정도..) 시간 안에 얼추 모양이 만들어져야만 합니다.

일단, 제가 참여했던 팀프로젝트의 결과물은 아래와 같고, 추가로 아래 첨부한 유튜브 영상을 보시면 됩니다.

Chming - iOS 앱 | 패스트캠퍼스 SCHOOL 결과물
http://school.fastcampus.co.kr/outcomes/all/72/


제가 시시콜콜한 팀프로젝트의 과정을 여기에 담을 필요는 없을 것 같고..
3가지 정도만 여기에 담아보겠습니다.

첫번째, 처음 보는 사람들(다른 스쿨 수강생들..)과 함께 하기엔 너무 짧은 시간들

프로젝트 기간은 약 3주 정도 됩니다.
마지막 주에 '하이어링 데이'라는 패캠에서 진행하는 취업 박람회(?) 같은 행사 이전에 최대한 마무리해야 하기 때문이죠.
이 행사 때, 회사 부스가 만들어지고, 회사 부스를 찾아가며, 제가 이런이런 사람이니, 데려가시죠- 라는 포즈를 취해야 하는데, 문제는 회사에서도 나를 볼 수 있는 얼굴이 바로 이 팀프로젝트의 결과물이라는 사실입니다.
따라서, 이 팀프로젝트의 결과물이 조금은 번듯해야 패캠에서 주는 거의 유일한 기회에 명함은 내밀어 볼 수 있습니다. ( 사실, 돌아보면, 큰 의미는 없긴 하네요.. )

그런 상황에서 3개월 동안 함께 한 iOS 스쿨 수강생도 아닌, 쌩판(..) 처음 만나는 타 스쿨 수강생들과 어찌어찌 팀이 맺어져서 프로젝트를 끌고 가게 됩니다.
지나고보니, 이 황금 같은 시간(하루하루 스터디 하는 시간도 아까워서 저녁도 거르던 시절..)에 iOS 스쿨 내부에서도 팀을 어떻게 짜니 마니 하면서 갈등이 생길 수 밖에 없고, 타 스쿨 사람이 어떤지도 모르는데, 팀프로젝트 주제만을 놓고, "자, 그럼 시작해봅시다-"라면서 진행을 합니다.

일단, 저는 이 사람과 사람들이 만나는 공수가 너무도 아까웠고, 시간이 지난 지금은 훨씬 더 아까워졌습니다.
그렇다고, 저렇게 만나서 잘 될 확률은? 거의 절반에도 못 다다른다고 보고, 실제로도 잘 된 케이스를 찾기 어려웠다고 봅니다. ( 결과가 잘 나온 척들은 할 수 있었지만..)

물론, 패캠에서는 이를 팀 프로젝트를 미리 체험해볼 수 있는 기회, 스타트업 문화를 느껴볼 수 있는 기회 등으로 이야기하지만, 실제로 스타트업만을 거쳐왔고, 그 스타트업들에서 여러 PM들을 맡았던 저로서는 도무지 이해할 수 없었습니다. ( 이걸로 느껴볼 수 있다고?? )
스타트업에서는 이러한 공수를 줄이기 위해 채용시, 인사담당자나 팀원들이 성격과 취향(?) 등을 아주 꼼꼼히 검토하기 때문이죠.
애초에 쌩판 처음 보는 사람들끼리 함께 작업하는 그런 구조가 아니라는 뜻입니다.

역시 하고 싶은 말이 많은데.. 요 정도에서 줄이고, 만약 다시 그때로 돌아간 저라면, iOS 스쿨 내에서만 팀을 꾸려서 팀프로젝트를 할 것 같습니다.
더 솔직하게는.. 그냥 혼자 하는 편이 나았을지 모르겠지만요..

두번째, 실력 차이

앞서 이야기했듯이 저에게 이 때의 시간은 황금 같은 시간들이었습니다.
높은 수강료 뿐만 아니라, 오랜 시절 꿈이었던 스스로 개발하는 사람이 되었고, 하루하루가 정말 행복하던 시기였죠. ( 물론, 지금도 그러합니다. )
그런 시간에 팀프로젝트를 진행하면서, 팀원들을 독려하고, 코드를 살펴주고, 구현에 도움을 주는 등의 시간이 소요되었습니다.
게다가 3개월의 강의 시간 이후, 뭔가 하루를 차지하던 강의 시간이 빠지고 나니, 수강생 모두가 잠시 나른해지는 분위기도 있었지요.
여튼, 이 때는 이것도 공부이려니..라면서 즐겁게 함께 했지만..

시간이 지난 지금에서 보니, 정작 제가 집중하고 싶었던 공부나 강사님께 질문들은 하지 못했고, 더 나아가, 그 실력 차이로 인해 서로의 감정들이 쌓이는 일들도 있었던 것 같네요.
뭐, 그것도 경험이려니.. 싶을 수 있지만, 그런게 취업에는 단 1%도 도움 되지 못합니다.
오히려 취업에는 내가 적은 코드가 한줄이라도 더 많고, 탄탄한 것이 GitHub에 있어야 도움이 되지요.
( 지금 이 글을 쓰는 현재, 수어번의 면접을 보았는데, 모든 면접의 면접관분들이 저의 GitHub을 구경했습니다. )

이 스쿨 과정을 수강하는 수강생의 목표 0순위가 무엇인지 생각해보고, 혹시 수강하시는 분들은 이를 정말 심도 있게 고민해보시길 권해드려요.
그리고 패캠에서도 이를 면밀하게 검토해주시길 부탁드리고 싶습니다.
솔직한 말로 iOS 스쿨 과정에서 모두 기분이 좋다가, 마지막 달에 모두 망친 기분이 들기도 했으니까요. (...)

세번째, 백엔드-백엔드-백엔드

위에서 이야기한 것처럼 팀프로젝트는 백엔드 - 그리고 나머지 클라이언트(iOS, Android, FrontEnd)가 팀을 꾸려서 진행하게 됩니다.
네, 지금에 와서 저희 팀이 백엔드가 좋았다 아니다 라고 할 것은 아니고, 사실 실제 결과물로서는 우리팀의 백엔드 결과물이 매우 좋았습니다. ( 짝짝짝- 고생하셨어요. )

문제는 이 백엔드가 모종의 이유로 나오지 않거나, 잘 나오지 않거나.. 등등, 문제가 생겼을 때입니다.
게다가 이 모종의 이유는 정말 다양한 변수를 가지고 있다는 것이 더 큰 문제이지요.

수강하시기 전에 이 글을 보시는 분들은 백엔드가 무엇일까.. 하고 생각하실 것 같네요.
현재, 세상 거의 모든 앱들은 네트워크 통신을 하게 됩니다.
이 통신을 해서 로그인도 하고, 데이터도 가져오고, 던지기도 하고 그러지요.
이를 위해서는 서버라는 것이 있어야 하고, 이 서버를 만들고, 실행하고, 운영하는 파트를 백엔드라고 합니다.
만약에 백엔드가 나오지 않는다?
대부분의 경우, 앱이 실행되지 않습니다. (..서버가 불안정합니다. 개발자도 불안해요...)

그리고 이 백엔드가 나오기 전까지 iOS 개발자가 할 수 있는 것이라곤, UI라고 부루는 껍데기(..죄송...)를 만드는 일 밖에 없습니다.
게다가, 이 껍데기도 많은 경우에 백엔드에서 데이터가 어떻게 올지 모르므로, 미리 만들었다가 잘못 되는 경우도 다반사이지요.

네네, 그래요.
원래 프로젝트라는 것이 그렇고, 현업에 가서도 서비스의 중심(로직)은 백엔드에 있습니다.
그러나.. 지금 우리는 iOS 스쿨의 포트폴리오를 만드는 것이라구요!!! (-_ㅠ )

사실 취업 전선에서 통신이 들어간 iOS 포트폴리오는 매우 중요합니다.
그래서 패캠의 팀프로젝트는 잘 되었을 때(!), 그럴싸한 모양이 될 수 있습니다만.. 잘 되었을 때 이야기이고, 인사 담당자들은 어차피 3주 동안 만든 이 결과물로 "너 따위가 뭘 알겠냐, 거기서 뭘 해봤고, 뭘 느꼈는지나 이야기해봐라.." 정도로 볼 겁니다.
그런 상황에서 iOS 개발자가 백엔드 타령만 하고 있을 수 없지요..
그래서 백엔드-백엔드-백엔드를 외칠 수 밖에 없는 팀프로젝트는 지금에 와서는 피하고 싶습니다.
게다가 함께 하는 백엔드 수강생도 이제 3개월 배우신 초보 개발자이니까요..


그래서 어떻게 하라고.. → 작게 또 작게

혹여, 여기까지 글을 읽어주신, 스쿨 수강을 고민하고 계신 분께, 먼저 고맙습니다.
그리고, 수강하게 된다면, 팀프로젝트는 너무 공을 들이지 말고, 프로젝트 사이즈를 작게, 또 작게, 또 작게 만드세요.
제가 권해드린다면, 뷰 2-3개 선에서 끊도록 하세요. ( 그러나 100% 그렇게 안 될.. )

작게 만들어서 참여하면서 강의 시간 동안 경험해보지 못했던 Restful을 경험해보되, 백엔드가 준비하는 동안 순수한 iOS 프로젝트로 개인 프로젝트를 진행하세요. ( 놀지는 말구요. )

뷰 2-3개에서 끊도록 작게 하려는데, 타 스쿨 수강생분들이 프로젝트 사이즈를 가만 두지 않는다면!
과감하게 다른 프로젝트로 이동하세요. (...)
혹은, 어차피 iOS는 따로 놀아도 되니까, 이 프로젝트에서 일부 기능(이왕이면, 핵심 기능)만을 목표로 구현하세요.


그리고 패캠에서 주는 어쩌면 두번째 기회인 테크-멘토링 시간을 적극 활용하세요.
토요일에 2-3번 있는 특강과 1:1 멘토링 시간이 여러번 주어지는데..
이 시간을 날로 버리는 수강생 분들이 많습니다. ( 아주 많아요.. )

그러나 이 시간이 정말 알짜입니다.
이 시간에 배웠던 Firebase(파이어베이스)GitHub(깃헙) 협업 방법은 저에게 있어 지금까지도 개발에 큰 힘이 되는 기반이 되고 있고.
이후, 있었던 멘토링 시간은 그 동안 메인 강사님께 하지 못했던 고급(?) 질문들을 편하게 할 수 있는 기회가 주어집니다.
물론, 스터디를 헛으로 하는 바람에 질문할 거리가 없으면, 멘토링 시간은 의미가 없습니다.
역시 여러분들에게 달려 있겠죠.
그러나 정말 잘 배우고, 지금까지도 이 시간이 없었으면 헤맸을 케이스를 상상하면, 저는 매우 아찔하네요.
이 자리를 빌어서 멘토링해주셨던 장인수님께도 고마움의 마음을 담아봅니다. (_ _)


그럼, 여러분들의 건투를 빕니다.

( ↑ 야간 스터디 때, 작성하던 강의 노트 )


그리고 남은 것

와.. 이 글도 마무리를 해야겠네요.
약 3시간의 타이핑..
그리고 남은 것...

누구나 이 패캠 스쿨 과정을 듣는 것은 인생 전체까지는 모르겠고, 아마 그래도 큰 결정일 겁니다.
수강료도 수강료이지만, 대부분이 커리어 전환을 생각하고 결정하고..
누구 말마따라, "수강료 + 나의 기회비용"을 생각하면, 거진 돈 천만원을 투자하는 셈이니까요. ( 게다가 수강하는 동안에 빠져나가기만 한 나의 식비..ㅠㅠ )

저 역시 인생에서 꽤 큰 결정이었을 것 같네요.
중고등학교 때, 개발자가 되고 싶었던 것을 부모님의 만류(?)로 어찌어찌 살게 되었고, 군대 제대 후, 개발자가 되어야지! 라고 마음 먹고는 돌아보니, 기획자가 되어 있었지요. ( 중간에 말아먹은 사업을 하지 말았어야.. )
모 카셰어링 기업에 입사해, 운이 좋게도 꽤 작지 않은 프로젝트의 PM도 맡아보고, 감사하게도 직장 동료분들에게 신임도 얻었던 것 같은데, 그런 회사를 박차고 나와서 iOS 스쿨 과정을 택했네요.

그러나, 무엇보다 행복한 시간이었고, 정말 제 스스로가 신나서 공부를 열심히 했었던 것 같습니다.
정말 재밌었고, 하루하루가 무엇을 배울까. 오늘은 어떤걸 만들까가 아닌, 만들 수 있을까가 설레였던 때였습니다.
시간이 아까워, 저녁 끼니도 거의 매번 걸러서, 강의가 끝나고 몸이 망가질 정도였으니까요. ( 하하하하.. -_-ㅋ )
혼자 뚝딱뚝딱 개발할 수 있는 지금도 역시 정말 행복합니다.

그래서 여기에 마무리는 패캠 스쿨 강의, 제 점수는요.. 라고 할 수가 없을 것 같아요.
저의 주관이 너무 들어가게 되고, 앞서 이야기했듯이 함께 같은 시간에 같은 강의를 수강한 저의 동기분들인 다른 수강생들과 저의 생각조차 다르니 말이지요.
혹여나 이 글을 읽고 계시는 수강을 고민하시는 분들이 있을지 몰라 제 마무리는 이 정도에서 끝내도록 하겠습니다.
아마, 대부분의 이 글을 읽으신 분들이 저와 같이 수강을 고민하시는 분들이겠죠.
저도 수강 전에 수강 후기를 엄청 찾으러 다녔던 기억이 나고, iOS 스쿨의 후기는 찾기가 힘들었던 것 같아서, 그럼 내가 써야지! 하고 쓰는 글이기도 합니다. ( 잘났다 잘났어.. )


아, 제목이 "그리고 남은 것"이었네요.
남은 것..

위에서 이야기했듯이 마음에 남은 것은 "행복감"이구요.
머리에 남은 것은 "iOS" 그리고 "자신감"입니다.

과정이 모두 끝나고, 1-2주는 저도 몇달 동안 너무 달렸던 터였는지 몰라도 혼이 나간 상태로 있었고, 이후 개인 프로젝트들과 마음이 맞는 동기 수강생분들과 팀 프로젝트들을 진행했습니다.
그 과정은 역시 제 깃헙에 모두 있기는 한데, 그건 조금 있다가 이야기하고..

개인 프로젝트들로 뚝딱뚝딱 앱을 만들면서, 스스로가 생각해도 "와.. 이제 이 정도는 그냥 특별히 웹서핑 안하고도 만드는구나.."라거나, "왜 공부가 더 필요하다는지 알겠다. 여기여기는 이론 공부를 좀 해봐야겠다."라는 케이스들이 여럿 있더군요.
여튼, 현재는 게임 같은 그래픽적인 요소가 있는 카테고리가 아닌, 일반적인 보통의(?) 앱들은 시간만 주면, 만들 수 있고, 그 시간이라는 것도 보통의 프로젝트 기간과 크게 다르지 않을 것 같네요.
예를 들면, 일기장 앱, 메모 앱이나 여행 앱?, 정보를 전달하는 앱? 등등..

그리고 이 과정에서 역시 자신감이 붙으니, 더 많은 것들이 보이기도 합니다.
이런 문제는 이러이러하게 하면 되겠네~ 하고 싶으면, 해결이 되기도 하구요.
더 큰 문제는 이제, 흉내 내는 정도로 만들 수는 있겠는데, 어떻게 하면, 가독성이 좋고, 빠른 대응이 가능한 코드를 짜느냐.. 이겠네요.

( ↑ 동기 수강생분들과 함께 했던 차고지 WWDC 관람 데이 )
( 역주: iPhone 오리지널을 발표하던 스티브 잡스 키노트를 다시 보는 중입니다. - feat. 우리의 조교님 )


( ↑ 그리고 WWDC17 )


(epilogue) - 그래서.. 너는 이제 뭐하니?

그렇죠. 아마, 이 정도 글을 읽으신 분이라면, 일단 존경합니다. ( 제가 글을 길게 쓰는 안좋은 습관이 있어요... )

이 정도 글을 읽으신 분이라면, 궁금하실 거예요.
너는 이제 뭐하니?

네, 저도 궁금합니다...는 아니고, 여차여차해서 저의 거처(?)는 결정이 났고, 그 동안 했던 프로젝트들의 결과물들도 얼추 스토어에 올라가기도 했습니다.

지금은 좀 체력이 딸려서, 여기에서 마무리 짓고, 패캠 강의 후기도 이 글이 끝입니다.
다음 글은 번외편으로 저의 거처(...)와 앞으로의 계획, 그리고 지금까지 했던 프로젝트들을 조금 정리해서 공유해볼까 해요.

더불어 GitHub Readme 쓰는 노하우 전수 정도?


그럼, 읽어주셔서 고맙습니다.
혹여 더 패캠 스쿨 과정에 대해 더 궁금하신 점들은 메일 주시거나 본 글에 댓글 혹은 비밀댓글로 남겨주시면, 추가로 말씀드리겠습니다.

곧 다음글로 돌아올게요.
다음글은 일주일 내로 찾아오겠습니다! :D

고맙습니다.


2017.11.27
비도 오고, 그렇고 그런 날에.


// 번외편

( ↑ 강의 기간 때, 갔던 지드래곤 콘서트 )


( ↑ 역시 강의 기간 때, 우리집에 들어온 초코님 )


( ↑ 추석 때 찾아온, 동생님의 블루님 )
( 역주: 나도 드디어 맥북 위에 고양이를 올려두고 코딩한다!..라며, 찍었던 사진 )

(...)


( ↑ 강의 기간 때, 찾아 갔던 애플 리사전 )


끝-

저작자 표시 비영리 변경 금지
신고
Posted by 까만거북이

댓글을 달아 주세요

  1. 2017.11.30 19:36  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

    • Favicon of http://blackturtle2.net BlogIcon 까만거북이 2017.12.02 17:40 신고  댓글주소  수정/삭제

      댓글 정말 고맙습니다.
      비밀댓글님의 열정이라면, 충분히 많은 배움 얻으시리라 생각해요.
      제 깃헙 소스 마구 긁어보시고. ㅎㅎ 여기 블로그에도 이제 iOS 꿀팁들을 공유할 예정이니 자주 찾아주세요.
      스터디에서 막히시면, 여기 방명록이나 메일 주시면, 성심껏 답변 드리겠습니다. :)

  2. 키위드레싱 2017.12.02 01:40 신고  댓글주소  수정/삭제  댓글쓰기

    지난 1화에 이어, 이번 2화도 잘 읽었습니다. 정성들여 글 써주셔서 감사합니다.
    번외편도 기대할게요!^^

  3. 2017.12.04 02:23  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

    • Favicon of http://blackturtle2.net BlogIcon 까만거북이 2017.12.04 16:46 신고  댓글주소  수정/삭제

      비밀댓글님//
      와우.. 제가 원하던 댓글이네요.
      다른 분들께 공개가 안되어서 아쉬울 정도의.ㅎㅎ
      댓글 고맙습니다.

      내용이 워낙 길어서, 말씀하신대로 자세한 답변은 메일로 드리겠습니다. :)

  4. Favicon of https://github.com/fimuxd BlogIcon 2017.12.08 11:24 신고  댓글주소  수정/삭제  댓글쓰기

    까북님 글 잘 읽었습니다.
    저렇게 몰래몰래 사진을 찍고 계셨다닠ㅋㅋㅋ 덕분에 저도 추억이 새록새록이네요.
    저도 거의 매일 남아서 자습하면서 까북님한테 이거 모르겠다 저거 모르겠다 괴롭혔었는데...ㅋㅋㅋㅋ

    앞으로 iOS 개발자로 새 옷을 입은 우리에게 어떤 미래가 있을까요.
    어떤 길을 가던 묵묵히 뚜벅뚜벅 그리고 언제나 파이팅입니다!

  5. Favicon of http://moneycoach.kr/ BlogIcon 소액결제 현금화 2017.12.14 16:55 신고  댓글주소  수정/삭제  댓글쓰기

    좋은글 잘보고 갑니다 ~