부트캠프에서의 첫 번째 프로젝트 회고
- 부트캠프에서의 첫 번째 프로젝트 회고 -
지난 10월 31일부터 11월 11일(2주)간,
제 생애 첫 개발 프로젝트를 진행했습니다.
특별히 생애 첫 개발 프로젝트라고 강조하는 것은,
매 순간순간이 너무나 생생하고 소중했기 때문입니다.
본 프로젝트 회고록은 하기의 순서로 진행됩니다.
- 순서 -
1. 기술적으로 겪었던 어려웠던 점
2. 프로젝트 시작 전 세웠던 계획에 대한 평가
3. 기타 느낀 점
우선,
기술적으로 겪었던 어려웠던 점 입니다.
회고록 내용의 두 기둥인,
감정과 기술을 분리하기 위해 별도로 작성한 게시글의 링크를 첨부합니다.
(기술관련 게시글은 내용이 아직 완성되지 않았으므로 비공개 상태임)
- MySQL, TypeORM 쿼리문을 통해 출력 한 자료의 형식에 관한 고찰(Object? String?)
- 미숙한 깃 사용능력으로 인한 업무낭비
입니다.
두 번째로,
프로젝트 시작 전 세웠던 계획에 대한 평가입니다.
냉정히 평점으로 매기자면 5점 만점에 1점 정도의 결과입니다.
제가 세웠던 목표는 하기 세 가지 입니다.
1. 공식문서 읽기
비록 실제로 구현에 성공하진 못했지만,
MySQL공식 문서를 뒤져가며 EventScheduler를 사용하려 노력했습니다.
선배님들의 블로그에서 '어떤 소스가 있구나.'정도만 파악한 후,
공식문서를 계속해서 읽었습니다.
구현에 결국 실패해서인지,
공식문서를 끝까지 고집했던것이 옳았었던 것인지,
어떻게든 결과를 만들어 내는 것이 옳았던 것인지,
판단이 잘서질 않습니다.
어찌됐든 결과를 만들어 냈어야 했었던 것인지,
많이 아쉽습니다.
2. 새로운 기능, 기술을 익히기
1번의 연장입니다.
계정삭제 API를 제작 하는 과정이었습니다.
즉각 삭제하는 것이 아닌 적정 텀을 두고 쿼리문을 시키는 방법(EventScheduler)와,
테이블에 삭제 예정 일자를 기입하고 해당 일자에 테이블이 삭제되도록 하는 방법,
두 가지를 구상했으나,
제 역량의 부족으로 실패했습니다.
제 쿼리문에 어떤 문제가 있었던 것인지,
나중에 꼭 다시 구현해보려합니다.
3. 컨디션(마음가짐) 관리 잘하기
냉정하게 말해,
컨디션 관리가 엉망이었습니다.
세션기간에는 아슬아슬하게 지켜오던 수면시간과 컨디션이,
프로젝트가 시작되고 1주일이 되는 시점부터 와르르 무너져 내렸습니다.
지금 생각해도 사실 어쩔 수 없었던 상황인가 싶기도 합니다.
어떻게든 구현하고 싶은 내용은 많고,
시간은 한정되어있고,
실력은 아직 부족하니,
결국 시간을 많이 투자할 수 밖에 없었던 것 같습니다.
아마 다음 프로젝트에도 비슷한 상황이 벌어지지 않을까 걱정이 됩니다.
마인드 관리와 컨디션 관리에 특별히 주의 해야겠습니다.
마지막으로 기타 느낀점입니다.
기타 느낀 점은 하기 세 가지 입니다.
1. 프론트엔드는 렌더링으로, 백엔드는 쿼리문으로 증명한다.
부트캠프에 참가하기 전,
자바스크립트, HTML, CSS에 간단히 공부하였습니다.
Node.js나 SQL과 같은,
백엔드 기술스택에 대한 지식은 전무했습니다.
그 결과 프로젝트 내내 제 역량의 부족으로,
원하는 로직을 구현하지 못하는 안타까운 순간이 반복됐습니다.
사실 많이 속상했습니다.
'내가 왜 몰랐을까',
'나는 왜 동기보다 못할까'
생각했지만,
저는 거꾸로 생각하기로 했습니다.
'나도 해낸다',
'아픈만큼 동기부여가 되니, 나는 동기가 충만한 상태이다'
라고 말입니다.
앞으로 SQL을 어떻게 공부할지 계획을 세웠습니다.
사실 오늘부터 당장 두 번째 프로젝트가 시작되기 때문에,
오롯이 SQL공부에 집중할 수는 없습니다.
하지만 꾸준히, 조금씩, 차근차근 백엔드적 역량을 쌓아가려합니다.
2. API문서와 쿼리문은 누가봐도 명확해야 한다.
사실 처음에는 이해가 되질 않았습니다.
'왜 이렇게 명세수정을 요청하실까?'
'대충 보면 다 아실 수 있는 내용이 아닌가?'
제가 전달해드리는 res값의 키 이름을 보면,
프론트엔드분들도 당연히 쉽게 내용을 파악하실 수 있으리라 생각했습니다.
하지만 이게 웬걸,
제 코드가 아닌 동료가 작업한 코드를 수정하는 과정에서 저는 깨달았습니다.
모든 코드 및 API문서는 명확해야하고 애매함이 없어야 한다는 것을 말입니다.
심지어 제가 작성한 코드도 제가 이해하지 못할 때가 있었습니다.
동료분이 작성한 코드가 좋지않았다는 것이 아닙니다.
다만 사람의 생각은 정말 어디로 튈지모르고,
사람마다 해석방법이 가지각색이라는 것을 알아야 한다는 의미입니다.
앞으로는 API문서는 물론,
코드를 작성할 때에도 애매함이 없이 명확할 수 있도록 특별히 신경쓰려합니다.
3. 개발은 함께하는 것이다.
어쩌면 가장 중요한 내용이 아닐까 싶습니다.
짧은 하나의 문장에,
개발에 관한 많은 것들이 함축되어 있다고 생각합니다.
개인의 실력도 중요하지만,
함께 일할 수 있는 능력이.
모든것을 혼자 해내는 것 보다,
본인의 어려움과 알고있는 내용을 공유하는 능력이.
혼자 폭발적인 스퍼트를 내는 것 보다,
함께 호흡을 맞추고 템포를 조절하는 능력이.
혼자 돋보이는 것 보다,
타인을 빛내고 함께하는 마음이.
개인의 욕심보다,
팀의 성장을 바라는 마음이.
개발자에게 가장중요한 덕목이지 않을까 하고,
프로젝트를 진행하며 느꼈습니다.
그리고 과연 나는 현재 어떤 상태인가,
되돌아보게 되었습니다.
여러모로 많이 부족한 상태로 프로젝트에 임했습니다.
그만큼 많이 어려웠습니다.
하지만,
어려웠던 만큼 앞으로 더 성장 할 여지가 있다고 생각합니다.
특별히 아팠던 부분을 중점적으로 보완해가면 될 일이니까요.
순간은 아프지만,
절대 좌절하며 주저앉지 않습니다.
누구나 처음은 서투른 법입니다.
앞으로 더욱 단단해질 제 자신이 더욱 기대가 됩니다.
사실,
제가 이렇게 생각하게 된 것은 제 멘탈이 강해서가 아닙니다.
그건 보물보다 소중한 동료들이 제 곁에 있고,
그들이 저와 함께하기 때문입니다.
(나만 그렇게 생각하는건가?!👀ㅋㅋㅋ)
터무니없이 부족했던 저를,
끝까지 따뜻하게 대하고 응원해 줬던 저의 동료들에게 꼭 고맙다고 인사하고싶습니다.
- 재미없는 줄 알았는데 너무너무 재밌었던 동료
- 자러 갔다가 코드가 떠올랐다고 한 시간만에 돌아왔던 동료
- 능력있고 추진력도 있고 넓은 시야까지 있던 동료
- 조용하지만 책임감있게 모든 것을 해냈던 동료
- 많이 부족한 저와 함께 끝까지 노력했던 착하고, 순수하고, 배려심 있던 특별한 동료🐤
모두모두 너무너무 감사합니다.
많은 것을 배우고 느꼈지만,
동료들이 없었다면 무의미 했던 시간이었습니다.
앞으로,
그들의 앞길이 꽃으로 가득하길 진심으로 응원합니다.🌻🌼🌷🌹🌺
저는 하루하루 꿈틀거리며 전진하겠습니다.🐛🐛🐛🐛🐛
감사합니다.