4월 ~ 11월까지 약 7달 동안의 길고 길었던 카카오테크캠퍼스 부트캠프가 마침내 끝나버렸다. 카테캠을 진행하면서 느낀점과 좋았던점, 아쉬웠던점을 남겨볼려고 한다.
카카오테크캠퍼스의 경우 전공자, 비전공자는 상관 없고, 1차 자기소개서, 2차 코딩테스트 4문제 + cs 테스트로 진행된다.
나는 신소재공학 전공자이고, 개발이외에 cs적인 부분은 전~~~혀 모르는 상태였다. 지원 당시 학교에서 컴퓨터구조, 알고리즘, 소프트웨어 설계를 수업을 신청해서 듣고있는 상태였다. 그나마 컴퓨터구조에서 반도체 부분은 신소재수업에서 배워서 조금 아는 정도였다. 근데 성적은 왜?? ㅋㅋㅋㅋ....
주변에서 아쉽게 떨어졌다는 사람들의 얘기를 들어보고, 내 자소서와 비교해보니 "저는 이런 기술을 사용해본 경험이 있고, 앞으로는 이런 기술을 새롭게 공부해보고 싶어요!" 보다는 "저는 프론트엔드(백엔드, 안드로이드)에 관심이 있고, 리액트(스프링, 코틀린)을 깊이있게 학습하면서 팀프로젝트를 진행해보고 싶어요!" 와 같은 컨셉으로 작성하는게 좋았던 것 같다.
지원 당시 나는 리액트로 프로젝트를 진행해본 경험은 있지만, 개발을 시작하면서 Javascript라는 언어 그 자체에 집중하기 보다는 React라는 라이브러리로 개발을 하는데 조금 더 집중을 했다. 그렇기 때문에 React를 이해하고 사용하기 보다는 주변에 개발을 좀 잘한다는 친구들의 코드를 보며 클론코딩을 하는 느낌이 매우매우 강했다.
그래서 개인적으로 지원 당시에는 리액트에 대해 기초부터 다시 공부를 해야겠다는 생각이 강해서 카테캠과 같은 외부적인 요인에는 조금 관심이 없었다. 하지만 학교 동아리방에서 공부를 하다가 주변 친구들이 협박과 가스라이팅 (누구누구도 안하는데 넌 이거 안해?)을 감사하게도(?) 계속 해주어서 강제로 입 삐쭉 ☹️ 튀어나오면서 자소서를 쓰고, 코딩테스트를 위해 파이썬 공부도 하고, 알고리즘 공부도 했던 것 같다.
어찌저찌 하다보니 코딩테스트를 치고, 합격을 해서 카테캠을 할 수 있게 되었다!
카테캠은 Step1 ~ Step3까지 총 3단계에 걸쳐서 진행된다. Step1 에서는 온라인 강의위주로, Step2 에서는 강사님의 강의와 멘토님의 코드리뷰(+개인멘토링), Step3 에서는 7명의 팀원들과 프로젝트 및 멘토님의 코드리뷰(+팀 멘토링)를 진행하게 된다.
1학기때는 Step1, 방학때는 Step2, 2학기때는 Step3로 진행된다고 생각하면 편할 것 같다.
zoom에서 OT를 진행하고, step1이 시작되었다.
카테캠은 알고보니 패스트캠퍼스에서 주로 운영을 담당하는 것 같다. 그래서 그런지, 제공해주었던 모든 강의가 패스트캠퍼스 강의였다. 기간안에 강의를 다 수강하는게 Step1의 목표이다.
강의 중에서 첫 강의였던 '스타벅스 홈페이지 클론코딩' 수업이 가장 재밌었던 것 같다. html+cs+js와 같은 기본적인 것들을 좀 많이 배울 수 있었던 것 같다. 살면서 React를 안쓰고 개발한적이 거의 없었는데, 이때는 조금 즐거웠던것 같다.
그리고 같은 직렬끼리 5인 1조가 형성되었다. 1인 1역할 중 나는 조장을 맡게되었는데, 사실 조장 하면 뭔가 큰 메리트가 있을 줄 알고 조장을 맡았다. 하지만? 그런거 없다~!
무튼 같은 조원끼리 카페에 모여서 서로 자기소개도 하고, 얘기도 나누면서 빙고 게임을 진행했다. 하면 나중에 상품준다길래 했다..ㅎㅎ
그리고 중간에 또 한두번씩 만나서 사진을 찍고 얘기도 나눴던 것 같다. 그래서 인당 스타벅스 1만원씩 받게되었다. (근데 5만원짜리로 줘서 내가 만원씩 맞춰서 기프티콘으로 바꿔 보내줬다..)
고급웹프로그래밍 수업에서 진행한 프로젝트 과제와 IT동아리 연합 GLOW해커톤 그리고 기말고사까지 쉴틈없이 우다다 달리다보니 같이 공부하는 형이랑 카페에서 맨날 '피곤하다.. 쉬고싶다..' 이 말만 입에 달고 살았던 것 같다.
방학이 오면 쉴수있겠지? 라는 희망을 가졌지만, 우리학교 시험기간이 좀 늦었나? 기말고사가 끝나자마자 바로 Step2가 시작되었다.
너무 더워서 정말 밖에 나가기 싫었지만, 집에있으면 거의 공부를 안하는 몸이 되어버렸기 때문에.. 카페에 자주 나갔던 것 같다.
Step2에서는 '카카오톡 선물하기 페이지'를 클론코딩하여 완성하는 것이 최종 목표였다. 일주일에 2번 당근마켓에서 일하시는 강사님께서 강의를 하고, 매주 금요일까지 제시된 과제를 진행하고 PR을 제출하면 주말동안 내 담당 멘토님께서 코드리뷰를 진행해주신다.
그리고, 개인적으로 방학때 목표가 '부족한 CS지식 공부하기'였기 때문에 http 관련 공부를 하고싶었다. Frontend의 경우 강사님 강의가 저녁시간에 예정되어있었기 때문에 뭔가 오전시간을 내가 효율적으로 관리하지 못할것 같다는 생각이 들어서 동아리 소모임을 통해 사람을 모아서 HTTP 관련 스터디를 병행하게 되었다.
각자 강의를 듣고, 궁금한점과 잘 이해하지 못한점을 서로 공유하며 서로 알려주고 찾아보는 방식으로 스터디를 진행하게 되었다.
매일 새벽에 강의를 듣고, 오전에 카페에 모여서 스터디를 했는데.. 진짜 피곤해 죽을뻔했다. 오전시간을 효율적으로 쓰는게 내 목표였지만.. 강의 듣는 시간을 생각못했던.. ㅋㅋ..
step1때 매칭된 팀원들과 step2에서도 계속해서 팀을 이루게 되었고, 매일 오후시간에는 팀원들과 zep 에 모여서 모각코를 진행했다.
카테캠에서는 이런 방식으로 모각코를 진행하라고 했지만, 사실 그냥 2시간동안 zep에 접속해서 각자 과제를 했던 것 같다. 물론 조마다 성격이 달라서 활발하게 코드에 대해 의견을 나누는 조도 있었고, 단 한번도 마이크를 켜서 얘기를 하지 않은 조도 있다. 그나마 우리조는 서로 코드를 작성하면서 막힌 부분을 공유하기 위해 많이 노력했던 것 같다. 그 이유는 조장을 맡은 내가 조금이라도 소통하길 원했기 때문에...
그리고 매일 저녁 10시까지 일기를 쓰는것 처럼 TIL을 노션에 작성했다. 지금 다시 보니까 이것도 추억이네..
어쩌다보니 6주차에 주간 Best 학습일지에도 선정되었다. 열심히 꼼꼼히 썼다기 보단.. 그냥 API 명세서를 정리해놓기 귀찮아서 TIL에다가 적어뒀는데.. 아무튼 나이스~
zep에서는 이렇게 귀염뽀짝한 캐릭터를 움직이면서 주변 친구들을 괴롭(?)힐 수 있다.
열심히 강의를 듣고 있는 우리들.. (해달 FE 4인방)
step2 마지막 주차에는 백엔드와 협업을 통해 api 연결도 해볼 수 있었다. (이전까지는 강사님이 제공해주신 더미데이터 api를 사용했다.)
이때 프론트가 나 혼자였기 때문에 백엔드 4명의 모든 서버를 연결해보고, cors가 발생할때마다 빠르게 feedback 해주기위해 진짜 많은 노력을 했다. 나한테 주어진 과제 데드라인도 지키고, 백엔드 연결도 하기 위해 거의 맨날 밤샘을 했던 기억이 있다.
나도 뭔가 새롭게 배포를 진행해보고 싶어서 처음으로 S3를 이용해 배포를 해보았다. 처음 해본 배포 방식이라 낯설고, 오류도 좀 많이 발생했지만 꽤 유용한 방법이었다고 생각해서 나중에 내 블로그에 한번 정리도 해보았다. (CloudFront는 나중에 추가할게요...)
https://velog.io/@dobby_min/Vite-프로젝트를-AWS-S3-정적페이지로-배포해보자
나중에 멘토링을 하면서 알게되었는데, 대부분 vercel로 배포하고 proxy 처리를 했는데, S3를 이용해서 http로 배포한 사람이 내가 처음이라고 한다. 난 단순하게 백엔드가 배포를 http로 했다길래 별 생각없이 "이번에는 s3로 해봐야지!" 하고 배포를 진행했었는데, 멘토님의 말을 듣고 조금 뿌듯했다 ㅎㅎ
카테캠을 진행하면서 FE 스터디도 진행했다. 경북대 2명, 부산대 1명이 모여서 스터디를 진행했는데, 주제는 카테캠 하면서 더 공부하고 싶었던 부분들 위주로 진행하게 되었다.
이렇게 각자 글을 작성하고 발표하는 형식으로 진행했다. 평소에 발표를 진~~짜 못하는데, 이거 하면서 많이 늘었던 것 같다.. 아마도..?
매주 진행한 과제에 대한 코드리뷰도 진행해보았다. 세명 다 코드스타일이 조금씩 다르다 보니 정말 흥미로운 코드리뷰였다.
와.. 진짜 카테캠은.. 숨쉴틈이 없다.. 그래도 한 일주일정도 쉴 시간이 있어서 일주일동안 step2에서 작성한 코드도 다시 보고, 부족한 부분을 살펴보며.. 푹 쉬었다! 진짜 푹 쉬었다.. ㅎㅎ.. 물론 2개의 스터디와 3개의 프로젝트를 곁들인..
이번에는 새롭게 7인 1조로 프로젝트를 위한 조가 만들어졌다.
이번에도 조장을 맡게 되었다. 다들 21, 20학번이고, 내가 학번이 젤 높은것 같아서 그냥 내가 조장을 한다했다. (근데 알고보니까 나보다 형님이 한 분 계셔서 놀랬다.. ㅜㅜ) 그리고 뭔가 이때까지 내가 주도적으로 프로젝트를 진행해본 경험이 없는 것 같아서 이번 기회에 내가 계획한 대로 프로젝트를 진행해보고 싶었다.
팀 매칭이 되자마자 바로 아이디어톤이 예정되어있어서 열심히 프로젝트 기획과 아이디어를 생각해보게 되었고, 아이디어톤에 참가하게 되었다.
팀 Notion을 활용해서 꼼꼼하게 기록하기 위해 신경을 많이 썼던 것 같다. 조원분들도 정말 귀찮았을텐데 감사하게도 다들 꼼꼼히 기록해주셨다.
서울에서 아이디어톤은 무박 2일로 진행되었다. 아침에 학교로 버스가 와서 우리를 데리고 가서, 다음날 학교로 다시 데려다 주었다.
아쉽게 상은 못탔지만, 현직자 분들과 많은 얘기도 해보고, 현직 분위기도 조금 알 수 있었다.
그렇게 방학이 끝나버리고, 개강과 동시에 프로젝트를 시작하게 되었다 🥺
나는 카테캠까지 포함해서 총 4개의 프로젝트와 2개의 스터디를 하게 되었다.. 그래서 다른 프로젝트에 가서 당당하게 "나는 카테캠이 1순위야."라고 말했다. 다른 프로젝트를 미룬다는게 아니라, 평소에는 내가 필요한 기능구현을 찾아서 했다면 이제는 회의때 정해진 기능구현이 아니라면 카테캠 프로젝트에 시간을 더 쏟겠다고 말했다. 왜냐하면 이렇게 7명이라는 많은 사람이 모여서 프로젝트를 할 수 있는 경험이 나한텐 처음이자 마지막 경험이라 생각했기 때문에 나는 우선순위를 이렇게 결정하게 되었다.
Step3는 진짜 바쁘게 움직였다. 매주 대면 혹은 비대면 회의를 필수로 진행하고, 보고서를 작성해야한다. 그리고 담당 멘토님을 통해 코드리뷰도 필수적으로 진행해야 한다.
Step2 부터 느꼈지만 내 담당 멘토님들이 코드리뷰를 정말 꼼꼼하게 해주시는것 같다. 덕분에 코드가 정말 클린해지고, 코드에 대한 고민도 많이 했던것 같다. (멘토님한테 칭찬받기 위해...ㅎㅎ)
회의하면서 몰래 한컷 찍어봤다 ㅎㅎ..
그렇게 우리의 프로젝트가 완성되었다.
처음으로 도메인도 구매해서 연결해보고, S3와 CloudFront를 활용해서 배포도 진행해보았다. 사실 Vercel로 배포해도 상관없었는데, 직접 Git Action을 사용해 CI/CD를 진행해보고 싶어서 이러한 배포 방식을 선택해보았다.
서비스를 이용해볼려면 아래 더미데이터 로그인에서 비밀번호 1234
를 입력해 로그인이 가능하다.
막판에 갑자기 졸업시험과 어학성적을 빨리 제출해야한다고 학과사무실에서 연락이 오면서 졸업에 대한 압박이 다가오면서 살짝 멘탈이 나가버리는 바람에 이것저것 신경을 많이 못썼는데,, 고맙게도 조원분들이 똘똘 뭉쳐서 발표와 이것저것 정리를 잘 해주셔서 잘 마무리할 수 있었다.
4월 부터 11월까지 열심히(?) 달려온 카테캠도 이제 끝났다..
뭔가 매주 회의하고, 코드리뷰하면서 나름 규칙적인 생활을 하고 있었는데 수료증을 받고 다 끝났다고 생각하니까 많이 게을러진 것 같다.. 이제 다시 계획적으로 살아야지..
ENTP의 다소 극단적인 스케줄 관리.. 이젠 안녕..
우리를 위해 멘토링과 코드리뷰를 해주신 멘토님과 직접 만나러 FE 팀원들과 서울로 올라가게 되었다!
강남은 차갑다.. 학생들에게는 한없이 차갑다..
운좋게 Step2때 함께했던 멘토님도 연락이 닿아서 점심에는 Step3 멘토님과 만나서 얘기를 나누고, 저녁에는 Step2 멘토님과 만나서 얘기를 나누게 되었다.
두분다 너무 좋은 말씀을 해주셔서 정말 의미있는 시간이었던 것 같다. 나도 열심히 해서 누군가의 좋은 멘토가 되었으면 좋겠다는 생각이 들었다...!
길고 길었던 카테캠 진짜 끝!
👍 너무 좋은 글입니다. 잘 읽었습니다!! 홧팅