프론트엔드와 소통하는 것이 처음이라 의사소통을 원활하게 하기 위해 신경을 썼다. 처음에는 프론트엔드의 용어들을 잘 몰라서 소통에 어려움이 있었다. 그 후 미팅에서 프론트엔드 팀원분이 말씀하셨던 부분 중 모르는 용어가 있으면 따로 공부해서 다음부터는 좀 더 소통이 잘 되도록 노력했다.
통신을 본격적으로 해 본 것은 처음이었다. 단순히 자가 통신 성공과 내가 보내는 데이터에만 신경 쓰는 것이 아니라, 프론트엔드 분의 코드를 함께 보면서 어떤 형태로 데이터를 받으시는지 면밀하게 보려고 노력했다.
백엔드와의 커뮤니케이션
백엔드 팀원분과 업무를 분담하는 것 또한 처음이었다. 멘토님의 리뷰를 통해 각자에게 적절한 양의 업무가 분담되게 노력했다.
또한 다른 팀원분이 어려움을 겪고 계시면 서로 도움이 되려고 노력했다. 블로킹 포인트에 대해 같이 구글링하고 자신의 지식과 경험으로 서로의 코드를 보완했다.
팀워크
힘든 상황에서 서로 힘이 될 수 있는 분위기를 만들기 위해 모두들 노력했다. 덕분에 좋은 팀워크로 프로젝트를 진행할 수 있었다.
실수에 대해서 감정적으로 대응하지 않고 실수를 통해 배우고 성장한 포인트를 찾는 자세를 가지려 노력했다.
새로 구현해본 기능
데이터 filtering, ordering, pagination
제품 리스트 페이지에서 Q객체를 활용하여 필터링과 검색 기능을 구현하고, 정렬(ordering)도 구현해보았다. 데이터들을 필터링하고 정렬하는 흐름에 대해 파악하는 것이 어려웠는데, 구글링을 통해 여러 정보들을 찾아보고 취합하여 이해할 수 있었다.
리팩토링을 통해 개선한 코드
제품 리스트 뷰 기능 추가
제품 리스트 뷰에서 단순히 전체 제품 정보를 리턴하는 것만 구현했었는데, 리팩토링을 통해 query parameter을 사용한 filtering, ordering, pagination을 추가 구현했다.
제품 리스트 뷰 코드 보완
제품 리스트 뷰와 디테일 뷰에서 list comprehension을 사용하여 코드를 간결하고 가독성 높게 수정했다.
새로운 경험 & 성장 포인트
기술적인 영역
DB에서 CRUD를 사용하는 것에 대해 좀 더 많은 경험을 했다.
다대다, 일대다, 일대일 관계가 복합적으로 얽혀있는 데이터베이스를 모델링해보았다.
query parameter를 활용하여 리턴하는 데이터를 가공하는 것을 연습했다.
path parameter를 이용하여 RESTful한 엔드포인트를 설정하는 경험을 했다.
django의 field lookup을 활용하여 데이터를 가공하는 경험을 했다.
협업 영역
github에서 한 프로젝트를 다른 팀원과 함께 만들어나가고, conflict를 해결하는 경험을 했다.