안녕 코드잇
짧다면 짧고 길다면 긴 6개월 부트캠프.. 내가 생각했던 것과 다르게 끝이났고 실감이 나지 않는다. "안녕 코드잇"
울적한 나의 속마음.
짧다면 짧고 길다면 긴 6개월 부트캠프가 끝이 났다. 실감나지 않는다. 부트캠프 수료 이후 3일이 지났지만 마음이 좋지가 않다. 부트캠프라는 울타리가 있었다가 사라진게 큰 이유이지 않을까 싶고, 마지막 프로젝트때 현타가 쌔게와서 더 그런거 같기도하다. 이제는 본격적인 취준이라 더 열심히 해야하지만, 그러지 못하고 있는게 좀 싫다. 그래도 공부는 매일한다 이런거보면 마음가짐이 중요하다고 다시한번 느끼게 된다.
내가 부트캠프 들어온 이유.
내가 부트캠프에 들어오게 된 이유는 크게 두가지가 있다. (부트캠프에 들어오기 전에 2년 10개월동안 퍼블리셔일을 했었다.)
- 첫번째로는 부트캠프 들어오기 전에 몇번의 커리어 멘토링을 받았었는데 "퍼블리셔 치고는 자바스크립트를 꽤 한다. 하지만 중견 이상으로 바라본다면 조금 더 공부가 필요하다"라는 얘기를 들었었고, 부트캠프를 다녀보는것도 좋다고 말해주셨다.
- 두번째로는 부트캠프 출신의 개발 블로그들을 보면 생각보다 잘하는 사람이 너무 많았다. (넘사벽이다) 그래서 기대가 엄청나게 컸다. 나는 물어보는것을 굉장히 잘하기 때문에 부트캠프에 가면 잘하는 사람들한테 많이 배울 것을 기대했다.
정리를 하자면, 인생 한번 사는거 이왕이면 공부를 더 해서 좋은곳을 가자라는 마인드로 부트캠프에 들어왔다.
내가 부트캠프에서 느낀 것.
나는 6개월이라는 시간이 길다고 생각한다. 시간이 길다고 생각해서 그런지 모르겠지만 "내가 정말 열심히 했나" 라는 의문은 든다. 퍼블리셔를 하면서 2년여간 강의를 보면서 공부를 쭉 해왔기에 어느정도 사전지식도 있었다. 배운건 분명 있지만 내가 원하는 목표에 가려면 한참 부족하다고 생각한다. 항상 그렇듯 끝나고 나면 후회를 한다.
초심의 중요성.
당연한 말이고 가장 지키기 어려운게 "초심을 잃지말자" 라는 말인것 같다. 모든사람이 그렇듯 처음엔 열심히 하다가 시간이 지나면서 여유를 부리게되고, "이정도 공부했으면 이제 놀아도 돼" 라는 생각이 머릿속을 지배한다. 코드잇에서는 부트캠프 수강생들을 스프린터라고 부른다. 지금와서 생각해보면 내가 했던건 스프린트가 아니였다. 한달에 31만원씩 돈을 받으면서 공부를 하는 유일한 시기였는데 스스로에게 실망을 많이 했다.
소통의 중요성.
3번의 프로젝트들을 하면서 소통의 중요성을 깨달은건 바로 파트3인 두번째 프로젝트였다. 잘한다라는 사람들만 모아놓은 팀이였기에 나는 많은 기대를 했었다. 각자의 능력치는 좋아서 처음 사용하는 기술 스택을 적용해도 별 문제는 없었지만 프로젝트 자체가 팀 실력에 비해 많이 아쉬웠다. 개발을 잘하는거랑 상관없이 서로 "어디까지 작업이 되어있는지", "어디를 어떻게 개선하면 좋을지", "어떤 문제가 발생했는데 어떻게 해결을 해야할지" 등등 소통을 안했던것이 너무 컸다. 그래서 프로젝트 발표날 3일 이전까지 위워크에서 팀원들과 밤을 샜다. 이 때는 많이 늦었지만 소통하면서 같이 작업하니 재밌었고 잘 마무리했다. 전 팀에서는 코어타임을 안가져도 알아서 디스코드 대화방으로 모여서 새벽까지 재밌게 코딩을 했던 기억이 있어서 이번에도 필요없을 줄 알았는데 그게 아니였다. 소통이 얼마나 중요한지 많이 깨닫게 된 두번째 프로젝트 였다.
검수와 일정의 중요성.
마지막 프로젝트에서는 검수와 일정의 중요성을 많이 느꼈다. 일정이 한번 지켜지지 않으면 와르르 무너진다는것도 이번에 깨달았다. 물론 머리로는 알았지만 디테일한 작업들은 예상보다 오래걸린다라는것도 이번에야 깨달았다. 또 이렇게 일정이 어긋나니 검수할 시간이 부족해졌다. 우리 프로젝트에서는 사용자가 어플리케이션에 잘 적응할 수 있도록 단계별로 작성해야하는 온보딩 페이지가 있는데 여기에 페이지 전환 애니메이션으로 힘을 줬지만, 프로덕션 모드에서는 적용이 안되는 문제가 있었다.
애초에 발표 5시간전에 배포를한게 문제였지만 그 전에 일정이 어긋나다보니 모든게 미뤄지는 현상이 문제였다. Next에서 Framer Motion의 일부 기능이 프로덕션 모드에서는 안된다라는 깃헙 이슈를 발견했지만 너무 늦게 발견했고, 이미 이것을 고치려고 시간투자도 많이했었다. 이 외에도 다른 자잘한 문제들이 많았다. 발표 전날에 16시간동안 작업을 했지만 디테일한 작업들을 못끝내서 아쉬움만 많이 남았다. 결과는 목표치만큼 좋지 않았지만 그래도 프로젝트를 하면서 많은것들을 배웠다.
R&R (Roles And Responsibilities)
나는 코드잇에서 진행하는 총 파트4개 중에서 모두 팀장을 맡아서 했다. 팀은 파트마다 바뀌고 팀장도 바뀐다. 억지로 팀장을 한적은 없고, 파트가 바뀌면 먼저 내가 한다고 얘기를 했다. 그래서 R&R에 대한 나의 실패 경험을 얘기하려고 한다.
파트2 R&R의 실패.
결과는 너무나도 성공적이였고 우리팀이 가장 잘했다라는 생각과 나만 좋았다 라는 느낌을 받았다. 이 때 나는 이기적으로 프로젝트에서 어려운 부분들, 욕심나는 부분들을 맡았다. 프로젝트 막바지에 팀원중 한 분이 "자기도 그 기능을 하고싶었다" 라고 얘기를 했었다.
수료식 때 그분은 그냥 한 말이라고 했지만 그 때 나는 "내가 너무 이기적으로 했나" 라는 생각을 많이했다. 역할을 보니 확실히 내가 한게 더 많긴했었다... 다 같이 팀으로 프로젝트를 하는건데 내가 한 방법이 결과는 좋더라도 이게 옳은 방향은 아니라고 생각했다.
파트3 R&R의 실패.
위에서 얘기를 했지만, 잘한다라는 사람들만 모아놓은 팀이였고 기대를 받는 팀이기도 했지만 R&R의 실패도 소통과 비슷한 비율을 차지할정도로 문제가 컸다. 이번에는 팀원들한테 선택권을 주고 나는 남는걸 하기로 했다.
그러다보니 내가 해야할건 간단한 랜딩 페이지 하나와 프로젝트의 핵심중 작은 한 부분을 맡게되었다. 프로젝트 기간은 총 15일이였는데, 내 파트는 1주일만의 끝이 나버렸다. 할게 없었다... 그래서 팀원들한테 어렵거나, 도움이 필요한 부분있으면 말해달라고 했다. 하지만 크게 연락은 없었고, 프로젝트 발표 3일전에 위워크로 발표자료를 만들러 갔다.
하지만 거기서 문제는 터졌다. 잘되고 있던 프로젝트인줄 알았는데 잘되고 있던것이 아니였다. 기능이 되기는하는데 자잘한 버그가 굉장히 많았다. 이 때 정말 위워크에서 밤새서 작업하고 집이 멀어 찜질방에서 5시간자고 다시와서 작업을 했었다. 여기서 책임감 강한 팀원 한 분이랑 얘기를 했던게 "어렵거나 핵심인 부분들을 우리가 맡았어야했다" 라는 얘기를 들었다.
이 때는 그래도 소통의 문제였겠지 싶었다. 그렇게 3일동안 모든걸 다 고치고 나름 잘한 프로젝트로 끝이났고 지금 생각해보면 내가 맡은게 너무 없었던 R&R의 문제라고 생각한다. 그리고 팀원들 말만 들을게 아니라 내가 직접 확인 해봐야한다. (그 때 당시에 멘토님은 R&R에 있어 이기적으로 하라고 했었다.)
파트4 R&R의 실패.
마지막 프로젝트에서는 소통은 열심히 했다. 전에는 R&R 문제는 아니라고 생각을 했기 때문에 이번에도 마찬가지로 팀원들한테 먼저 선택권을 주었다. 마찬가지로 내가 맡은부분은 크게 어려운게 없었다. 이것 역시 1주일만에 끝이 나버렸고, 중간에 팀원들이 도와달라고 얘길해줘서 같이 해결도 하고 붕뜨는 시간이 아까워서 지금 보고있는 이 블로그를 만들고있었다.
하지만 그 이후에 정해진 일정이 맞춰지지 않다보니 한번 더 얘기를 했었다. 저번처럼 실수하지 않으려고 팀원들한테 테스트 및 특정기능 잘되는지 얘기도 하고 확인도 받았다. 그렇게 시간은 지나면서 미처 생각지못한 페이지가 아에 만들어지지 않은것을 뒤늦게 알아버렸다.. 담당 팀원한테 얘기를 했지만 팀원도 깜빡잊었다고 얘기를 했었다. 내가 작업한다고 얘기하고, 생각보다 페이지 작업 시간이 꽤 걸려 팀원들한테 요청을해서 빠르게 끝을 냈지만 이 때는 이미 너무 늦은 시기였다.
16시간을 투자했지만 크게 나아진건 없었고 더미 데이터도 없었다. 발표 순서가 첫번째라서 더 작업을 해보려고 했지만, 결국 문제가 많은 프로젝트를 가지고 발표를 하고 끝을 내게되었다.
왜 R&R이 잘못되었다라고 생각하는가?
다른 팀들의 프로젝트 발표들을 보면서 많이 느꼈던것이 굉장히 잘했던 팀들이 몇몇 있었다. 정말 잘했다. 그런걸 보니 내 프로젝트가 너무 초라한것같아서 현타가 엄청쌔게 왔다. 내가 이 블로그를 만드는게 문제였다 라는생각이 엄청 들었다. 할게 없었으면 팀원이 어떤 기능을 빼먹은건 없는지, 기능이 잘 돌아가는지 확인을 했어야 했다.
이건 내가 잘못한게 맞다. 여태껏 그랬듯 파트2를 제외하고나서는 팀원들의 얘기만 듣고 내가 따로 확인을 해본적은 없었다. 확인을 하더라도 뒤늦게 했다. 잘한 팀들을 보면 누구 한명이 다른 팀원들에 비해 커밋이 압도적이게 높았다. 내가 너무 이상적으로 생각을 했던건지 무엇인지 아직 정답을 찾지 못했다.
글을쓰는 지금 나의 문제는 팀원들이 알아서 잘 해주겠지 라는 안일한 생각이 컸던것 같다. 팀원들이 못했다는게 아니라 나도 같이 검수를 해야했다. 중간점검 같은 형태로 했으면 더 좋았을 것 같다.
그리고 같이 공부하면서 어려운걸 극복하는 스프린터인데 실력을 따져서 누구는 못하니까 쉬운거 하고, 누구는 잘하니까 어려운거 하라는 식은 아니라고도 생각한다. 같이 주도적으로 하자는 마인드였었는데 세번의 실패를 한거보면 R&R의 문제도 크다고 생각한다.
"팀장이 참 어렵구나..""
나를 만난 팀원들도 많이 답답했을것 같고 미안한 감정도 든다. "팀장 역할을 잘해줬다"라고 얘기하는 팀원들이 고마웠다. 돌아보면 모든 이유는 팀장인 내가 못해서라는 생각도 많이 든다. 팀장 참 어렵다... 그래도 좋은 경험을 했지만 아쉬움이 많이 남는다. 그렇지만 나중에 어떤 곳이든 팀장과 비슷한 책임감 있는 역할을 맡게된다면 전보다 더 잘 할 자신감이 생겼다.
"그래도 나 많이 배웠어🙂"
나는 JavaScript
, React
, TypeScript
를 어느정도 다룰줄 알았던 상태에서 부트캠프 과정에 참여했다. 기술 스택으로 보면 별로 배운게 없지만 "어떻게 해야 더 잘 활용할 수 있을까"에 대한 고민을 많이 했었다. 늘 해왔던 방식대로 코드를 짜면 이건 숙련도가 높아지는거지 공부를한건 아니라고 생각을 한다. 별거 아닌거여도 생각을 먼저 해야 좋은 아키텍쳐와 코드가 나온다라고 생각을 한다. 의도적인 연습들을 하다보니 내가 성능적인 부분도 챙길 수 있었던 것 같다. (렌더링 성능 최적화, 재사용성에 대한 고민, FCP, LCP, CLS, 초기 로딩속도 개선 등등) 기술 스택적으로 보면 배운건 Next와 Tanstack Query밖에 없지만, 배움의 깊이를 보면 마리아나 해구를 향해가고 있다
마지막 한마디.
이런 기회를 얻을 수 있는 부트캠프라서 너무 만족한다. 내가 부트캠프를 가기 전에는 부정적으로 평가했는데 모든건 본인 하기 나름이다. 부트캠프에서 세번의 프로젝트를 하면서 정말 많은것들을 배웠다. 사실 프로젝트가 아니더라도 다른사람들의 얘기를 들으면서도 많이 배운다. 다양한 사람이 있는 만큼 다양한 관점으로 바라보니 너무 좋았다. 나랑 같은 팀이였던 팀원분들, 4기분들 모두 잘되어서 나중에 현업에서 만나면 좋겠습니다 🙂