[PROJECT] 2차 프로젝트_회고록 (아니! 나 성장했잖아?)

초이지수·2022년 6월 1일
0

PROJECT

목록 보기
4/9

🐾 펫플래닛을 기반으로 한 프로젝트

https://petplanet.co/

대한민국 1등 펫시터 앱 서비스인 펫플래닛을 기반으로 2차 프로젝트를 하기로 결정했다.

1차 프로젝트로 판매 서비스는 경험해보았으니 1차와는 다른 서비스로 2차 프로젝트를 진행해보고 싶었다.
펫플래닛은 예약 기능도 있고 앱서비스로 구성되어있어 웹 서비스로 변경해볼 수 있다는 장점이 있었다.

프로젝트 이름은 댕캉스로 결정했다! 강아지에게 휴가를!
다른 집에서 다른 친구들(강아지들)을 만나는 경험이 강아지들에게도 리프레쉬되는 휴가가 될 수 있지 않을까? 싶은 마음에서 지은 프로젝트명이다!

이번 프로젝트에서는 어떤 일이 나를 기다리고 있을까?


🐶 프로젝트 진행 순서(Backend)

  1. Project Initial Setting (Django 초기 세팅)
  2. ERD
  3. models 작성 후 migration
  4. view 코드 작성
  5. view 코드가 완성 될 때마다 FE와 통신해보기

🐶 기본 구현 사항

  1. 카카오 SNS 로그인 (내가 구현)
  2. 리뷰 페이지 view (내가 구현)
  3. 상품 리스트, 디테일 view

🐶 2차 프로젝트 목표

💫 첫 번째 목표 : 항상 웃으며 진행하기!

결과물도 중요하지만 진행과정은 더욱 중요하다!
1차 프로젝트를 겪어보니 각자의 기능 구현보단 즐겁게 의사소통하며 프로젝트를 진행하는 것이 중요하다는 것을 뼈저리게.. 느끼게 되었다. 의사소통이 제대로 되지 않으면 하루종일 잠을 줄여가며 짠 코드를 한 순간에 날리게 되는 상황이 생기게 된다.
잠 못자고,, 부트캠프 생활한지 어느덧 7주차... 다들 체력적으로 지쳐 예민해져있는 상황이다. 이런 상황일수록! 더더욱! 사소한 것들에 웃으며! 진행하기로 했다.

💫 두 번째 목표 : 하나를 구현하더라도 제대로 알고 가기!

BE 에 비해 FE 의 실력이 월등히 좋았는데 (나는 선행지식 없이 퇴사 2주만에 부트캠프에 들어온 당돌하고 너무 당돌한 ..휴먼이었다.)
팀원은 FE 4명 BE 2명으로, 나의 유일한 팀동료.. BE 님은 세 아이의 가장이셨고.. 주말에는 협업을 진행할 수 없으신 상황이었다.. (오 주님 ,, 나를 바라보는 FE분들의 8개의 눈동자... 읍.,, 무서..지 않습니다.)

이러한 BE 사정을 알고 FE 분들이 많이 배려해주셨다 🥲
이번 프로젝트는 많은 기능구현보단 하나를 구현하더라도 제대로 알고 가기로! 목표를 잡고, 주요한 기능을 컴팩트하게 구현해보기로 했다!

💫 세 번째 목표 : 소통 x 100

기능 구현은 부트캠프가 아닌 혼자서도 충분히 인터넷 강의, 책을 보고 구현해볼 수 있다. (아직 혼자 공부 안 해봐서 모르는데.. 그렇다고 하셨다.)
다양한 사람들과 협업의 기회는 부트캠프 지금! 현재!만 가능한 일이라는 의견에는 100% 동의해, FE 와 BE의 협업! 의견 조율의 기회에 감사하면서 이번 프로젝트는 소통을 최우선으로 진행 및 조율하기로 했다.


🐕 우리가 바로! 선릉 붙박이!


🐶 아쉬운 점

1. ERD

1차 프로젝트때 ERD의 중요성을 모르고, 첫 ERD를 가볍게 작성했다가 프로젝트 내내,, 총 10번의 수정을 한 경험이 있었다. 2차 프로젝트때는 그런 일이 생기지 않도록 충분히 시간을 투자했는데 생애 두 번째 프로젝트라 그런 걸까.. 미처 생각하지 못했던 로직 오류가 있었다.

리뷰 페이지에 리뷰 데이터 get, update, delete view를 작성하고 API를 FE로 보내드렸다.
그런데 왠걸! 각 리뷰에 해당하는 상품의 id를 받아 올 수가 없었다! 😱
상품 상세 페이지에 리뷰 기능이 있어야 상품의 id를 가져올 수 있는데, 상품 상세 페이지와 리뷰 페이지를 따로 각각 분리된 데이터라고 생각했다. (상품 상세 페이지는 BE 동료분께서, 리뷰 페이지는 내가 맡아서.. 더 늦게 깨달은 것 같기도,, 하다)

BE는 사용자가 보는 화면이 아닌 (화면도 생각은 해야합니다.) 데이터를 어떤 API로 뿌려주고 어떤 로직으로 효율적으로 보내줄 것인지에 대해 생각해야 하는데 나도 모르게 29년 인생에서 친숙한,, 화면 기준으로 생각해버렸다.. 앞으로 로직을 구현할 때 페이지 기준이 아닌 데이터 기준으로 다시 생각해보는 시간을 정기적으로 반복해서! 꼭 가져야겠다고 다짐했다!

2. 기능 구현

정말.. 정말 다시 생각해도 최선을 다했던 2차 프로젝트였다. 하지만 4주동안 HTML, CSS, Python, Django 를 공부하고 5,6주차에 1차 프로젝트. 7,8주차에 2차 프로젝트를 진행한 나로서 다양한 기능 구현은 어려운 일이었다. 뚝딱뚝딱 API를 만들어내는 다른 BE를 바라보면 괜히.. 우리팀 FE 분들에게 미안한 마음이 들었다. 현실적으로 지금 당장 내가 제어할 수 없는 상황이라는 걸 알지만 아쉬운 마음은 어쩔 수가 없었다. 최최선을 다했으니 후회는 하지 않는다! (눈에서 땀이 흐르네,,)


🐶 잘한 점!

1. 틈나는 대로 FE 와 소통!

1차 프로젝트 경험을 토대로 2차 프로젝트에서는 틈나는대로 FE 분들과 소통했다!
부트캠프 특성상 눈만 뜨면 씻고 밥 먹는 시간을 제외한 모든 시간동안 코드를 작성한다. 집에서는 잠만자고 바로 부트캠프로 출근하는 우리는 각자 오전 10시의 코드, 오후 3시의 코드, 오후 8시의 코드의 격차가 매우 크다. 최소 3시간에 한 번씩 FE 분들과 의사소통을 하고 로직에 관련해 고민이 생기거나 이해가 안 되는 부분이 있다면 바로! 당장! 얼굴을 보고 이야기를 나눴다. (제가 너무 찾아갔나요... 감사합니다. FE분들.. 들숨에 건강을,, 날숨에 취뽀하시길..)

2. Test code 작성

이번 프로젝트에서는 처음으로 테스트 코드를 작성해보았다. 테스트 코드라는 개념도 처음 알게 되었다! 멘토님께서 현업에서 프로젝트를 하게되면 로직을 짜고 바로 실제 사용되는 코드가 아닌 테스트 코드부터 작성한다고 말씀하셨다. 카카오 SNS 로그인 테스트 코드를 작성하다보니, 내가 생각한 로직이 효율적인가? 방향은 맞는 걸까? 다시 생각해보는 시간이 되었다. 아! 이래서 테스트 코드를 작성하는 거구나 깨닫게 된 시간이었다!

3. 회의록 작성을 열심히!

1차 프로젝트때 코드 작성하기에 급급해 회의록 작성을 소홀히 했다. 멘토님께서 개발은 휘발성 지식이 많은 편이라 2차 프로젝트에서는 꼭! 회의록 작성을 부탁드린다고 매우 매우 강조하셨다. 이번 프로젝트에서는 매일 스프린트 미팅마다 회의록을 작성하였고, 아침 회의내용과 변경된 사항이 있다면 팀내 공유 노션에 바로 작성 후 팀 슬랙에 메세지를 남겨 팀원들이 모두 확인할 수 있도록 했다.


🐶 느낀 점!

1. 소통은 정말. 매우. 아주. 중요하다.

FE 분들과 BE 동료분과 소통을 자주 하려고 노력했고 최소 3시간에 한 번씩은 이야기를 나눴지만, 소통은 해도해도 부족하다는 것을 다시 느꼈다. 다양한 사람들, 다양한 가치관이 모였으니 생각은 다를 수 밖에 없고 의견은 나눠도 나눠도 끝이 없다. 이번 프로젝트에서는 단순히 소통의 양만 늘렸는데, 어떻게 하면 다음 프로젝트에서는 효율적으로 소통할 수 있을지, 지혜로운 소통방법은 무엇인지에 대해 고민해보아야겠다고 느꼈다.

2. 기본기를 쌓자.

개발 공부를 할 수록 개발의 세계는 끝이 없구나... 느끼게 된다. 사전 스터디 없이 부트캠프에 입소한 만큼.. 수료 후에 기초부터 탄탄히 공부해야겠다고 절.실.히 느꼈다. 어려움이 있을 때마다 바로 달려와 도와준 동료들에게 너무 감사하다!!!! 동료들이 없었다면 프로젝트를 진행하지 못 했을 것이다. 🥹🤍


💡 아니! 나 성장했잖아?!

1차 프로젝트 때는 Python도 Django도 처음이었던지라 잘 못 구현하게 되면 FE분들에게 민폐일까봐 걱정을 많이 했었고, BE 동료에게 의지를 많이 했었다.
BUT! 이번 프로젝트는 내가 도맡아서 해야하는 상황이었다. (BE동료분.. 아버지셔서,, 주말에는 육아를 하셔야 했기에... 100% 이해합니다)
내가 잘 할 수 있을까? 겁이 났지만 오히려 좋아!!!!!!!! 로 상황을 전환 시켰다. 1차 프로젝트때 배웠던 경험을 토대로 주도적으로 프로젝트를 진행해볼 수 있는 기회였다.
모든 FE 분들과 최소 반나절에 한 번씩 이야기를 나누고 BE 관련된 사항을 팀내 노션에 바로바로 업로드 했다. ERD는 종이로 직접 프린트해서 FE 분들께 하나씩 나눠드렸고, 모델링에 대해 이해가 안 되시는 FE 분들을 모아 하나씩 차근차근 설명해드렸다. (이해가... 되셨을 까요.., 최선은 다했는데...)
BE 입장에서 좋은 코드와 FE 입장에서 좋은 코드에 대해 토론하고 서로 다른 시선에서 이해보려고 노력했고, 추후에 BE 뿐만 아니라 FE 관련 공부해야겠다는 생각을 다시금 하게 되었다.

같은 개발자 사이에서도 이렇게 입장 차이가 큰데, 앞으로 같이 협업하게 될 비개발자 직군 분들과는 어떻게 소통해야 상대방의 입장에서, 쉽게 이해하실 수 있도록 의사소통을 할 수 있을까 고민하게 되었고 이런 고민이 생겼다는 점이 나의 개발 세계가 조금은 확장 되었다는 반증이라 기쁘고 감사했다.

이렇게 개발 세계가 확장될 수 있었던 것은 곁에서 힘이 되어주고 같이 버텨준 동기들이 있었기에 가능한 일이었다. 혼자였다면 아무 배경지식 없던 나는 이 부트캠프 생활을 버틸 수 없었을 것이다. 평일이건 주말이건 매일 출근해 막차까지 코딩 공부를 하다가 집에 돌아가는 동료들 덕분에 나도 더 힘내서 코딩공부를 할 수 있었다. 동기들에게 감사한 마음뿐이다. 이 감사함을 어떻게 보답할 수 있을까 생각하니, 언젠가 나도 누군가에게 도움을 받은 것 이상으로 베풀어야 겠다는 다짐을 하게 된다. 그렇게 되기까지 꾸준히 공부하고 노력해야겠다.

profile
닫혀 있어서 벽인 줄 알고 있지만, 사실은 문이다.

0개의 댓글