Pre-Project 회고 (기술 외적으로 느낀 점)

bagt13·2022년 9월 7일
0

Project

목록 보기
1/19
post-thumbnail

코스의 마지막 파트인 Main Project를 시작하기 전, 프로젝트 flow 연습과도 같은 Pre-Project를 진행했다.

프로젝트 기간은 매우 짧았으며(약 2주), 프로젝트의 주제는 stackoverflow 사이트와 같은 질문 게시판을 클론 코딩 하는 것으로 정해져 있었다.


첫 협업

첫 프로젝트이자 프론트엔드 개발자분들과의 첫 협업이었기 때문에 긴장되기도 했고 무엇부터 시작해야 할 지 막막했었다.

프로젝트 설계

먼저 첫 단계인 설계 단계에서는 사용자 요구사항 정의서API 명세서를 작성했다.
이번 프로젝트는 기간이 아주 짧기 때문에, 필수적으로 필요한 회원 관리, 질문 게시판 CRUD, 답변 CRUD, 태그 기능과 태그 검색, 질문 검색, 유저 검색 정도만 포함했다.

다들 처음 작성해보는 내용이라 많이 서툴렀고, 개발 도중에 빠트린 내용이 있다는 것을 뒤늦게 알아채기도 했다.


API 명세서

API 문서의 경우 백엔드 쪽에서 작성하기 시작했는데, 프론트에서 정확히 어느 상황에 어느 데이터를 원하는지에 대해 충분한 협의가 부족했기에, 작성 도중 협의가 필요했다.

또한 완벽히 설계할 수 있으면 좋겠지만, 개발 단계에서 발견되는 오류와 변경 사항들이 분명히 존재하기 때문에, 개발 단계에서 프론트 개발자분들과의 원활한 소통이 중요하다는 것을 느꼈다.



pre-project를 통해 느낀 점

이번 Pre-Project에서 기술적인 부분 외에 가장 크게 와닿은 부분은 프로젝트 설계 단계의 중요성다른 개발자와의 소통의 중요성이다.


설계의 중요성

프로젝트를 시작하기 전에는 설계 단계는 짧고, 개발 단계에 소모되는 시간은 아주 길 것이라고 무의식 중에 생각하고 있었던 것 같다.

하지만 프로젝트 설계가 허술하다면 오히려 개발 시간이 급격히 늘어날 수도 있다는 것을 알게 되었다.

요구사항 정의서도 충분히 디테일하게 작성하지 못했고, API 스펙과 관련하여 충분한 고민과 협의가 부족했기에, 개발 도중에 추가 또는 변경되어야 하는 부분이 꽤 많았고, 이에 대해 고민하느라 시간을 많이 쓴 것 같다.

개발 단계에서는 오직 개발에만 신경쓸 수 있도록 프로젝트 설계가 잘 되어있어야 한다고 생각했다.


팀원들과의 소통

다른 개발자들과의 소통이 개발자로서 갖추어야 할 필수적인 요소라는 것은 익히 들어 머릿속으로는 잘 알고 있었다.

하지만 그냥 개념적으로 아는 것과 직접 경험해본 뒤에 느끼는 중요성은 큰 차이가 있는 것 같다.


1. 백엔드 개발자 동료와의 소통

업무 분담부터 시작해서, git에서 같은 파일을 받아와 작업하기 때문에 충돌(conflict)이 발생할 수 있고, 작성한 코드를 dev 브랜치로 merge하기 전에 상의도 해야하고, 어떠한 기술을 적용시키기 전에 의논을 거쳐야 하는 등 소통해야할 일이 많다.

내 코드가 다른 개발자분의 코드에 영향을 미칠까봐 더 신경써서 적극적으로 소통한 것 같다.


2. 다른 분야(프론트엔드)의 동료 개발자와의 소통

백엔드 개발자는 프론트 분야에 대해 잘 알지 못하고, 반대로 프론트 개발자도 그러할 것이다. 따라서 개발 도중 질문, 수정 요청 등 소통해야하는 상황이 빈번히 일어나기 마련이다.

이 때 질문의 경우, 궁금한 부분을 명확하게 정리하여 질문해야 하고, 요청사항이 있을 때에는 상대방이 불쾌하지 않도록 소통하는 효율적이고 올바른 커뮤니케이션을 수행해야 한다고 생각했다.

이번 pre-project에서도 개발 도중 특정 기능에 대한 수정사항이 생기기도 했고, API 응답에 추가적인 데이터를 포함시켜 달라는 프론트 개발자분의 요청 등이 있었고, 나름대로 소통이 잘 되었던 것 같다.

pre-project를 통해 배운점을 토대로, 부족한 점을 개선하여 다음 프로젝트를 진행해서 더 완성도 높은 프로젝트를 만들고 싶다.

profile
주니어 백엔드 개발자입니다😄

0개의 댓글