1차 프로젝트 후기

cs982607·2020년 11월 26일
3


wecode에서 개발자가 되기 위해 공부하기 한달이 되었을 때 1차 프로젝트를 시작하게되었다.
2주동안 프로젝트를 진행하였으며 백엔드 부분을 맡아서 진행하였다.

Styleshare Clone Project_Back-End

스타일 쉐어라는 웹페이지로 STORE와 #OOTD 라는 두개의 메인페이지가 존재한다. 인스타그램처럼 자신의 코디를 업로드 하여 다른 사람들에게 보여줄 수 있는 페이지와 상품을 구매할 수 있는 페이지가 있다.

개발인원은 프론트엔드 3명, 백엔드 개발자 3명으로 약 2주간 클론을 진행하였다.

적용 기술

  • Python, Django web framework
  • Bcrypt
  • JWT
  • MySQL
  • re

담당한 기능

  • 프로젝트 초기세팅, 모델링, models.py 작성 (팀원전체)
  • 회원가입, 로그인
  • 프로필 페이지와 프로필 수정
  • 로그인 데코레이터 작성
  • 카테고리 뷰 작성
  • 프로덕트 리스트와 정렬방식
  • MD Choice 뷰 작성
  • Product sort 기능

칭찬할 점

  • 팀원들과 많은 소통을 하여 프론트엔드 팀원들과 원할한 테스트
  • 새로운 속성들을 계속해서 적용해본 점
    (select, prefatch_related, Q, annotete, sort, 쿼리스트링 등)
  • 안되면 찾아보고 물어보고 해서 실행된 점
  • Postman으로 모든 테스트를 해보고 엔드포인트, 변수명 등을 전부 정리하여 프론트엔드 개발자에게 알려준 점

아쉬운 점

  • 데이터 모델링을 완벽하게 이해하지 못한 점
  • Q 객체를 정확하게 이해하지 못한 점
  • offset, limit를 사용하지 못한 점
  • annotete, aggregation을 정확하게 이해가 안된 점

해결/개선 방법

  • 데이터 모델링 공부한 후 2차 프로젝트에서 이해하기
  • 2차 프로젝트에서 새로운 기능들을 맡아서 구현하기

데이터 모델링


정말 데이터 모델링하면서 이해가 안되는 점들이 많아 다시 한번 공부해야겠다는 생각이 들었다. 그리고 프로젝트를 시작하기 전에 모델링이 왜 꼭 필요한지 느낄 수 있었다 중간중간에 모델링 수정을 하고 다시 모델수정하고 마이그레이트하고.. 정말 모델링은 완벽하게 해야한다는 생각이 많이 들었다. 그래도 모델링을 전체 수정하거나 하는 일은 없었다.

생각나는 코드

처음으로 사용해본 annotete가 생각이 난다.
모델에 discount_rate라는 필드가 없어서 모델을 수정하지 않고 어떻게 할 수 있을까 하고 생각을 하고 팀원들에게 물어보니 이런 메소드가 있다라는 말을 들어서 공부를 하여 여러가지 많은 고민했지만 답이 나오지 않아 팀원에게 물어보며 작성했던 코드이다. 아직은 정확하게 이해가 안되지만 더 공부를 해봐야 할 코드인 것 같다.

또, 스타일쉐어에는 3가지의 카테고리가 있어서 그걸 3개로 나누어서 카테고리 뷰에 전부 담아 리턴해주는 코드이다. prefetch_related도 정확하게 이해하지 못한 상태에서 작성하였는데, 계속 참조가 안되어 수정의 수정을 거듭해서 작성했다. 이것을 어떻게 전부 나누어서 출력해야하나 해서 삼중으로 for문을 하였는데.. 이게 정말 최선인지는 잘 모르겠다.

1차 프로젝트가 끝나고

처음 wecode에 와서 많은 걱정을 하였다. 여기오기 전까지 나는 조리를 전공한 조리사였다.
비전공자에 컴퓨터는 엑셀도 어설픈 내가 할 수 있을까 라는 생각을 많이했다.
한편으론 어떻게든 많이 공부하면 된다라는 생각으로 많이 물어보면서 하였지만, 프로젝트가 시작하기 전에 개인 프로젝트를 진행하는데 모르는 부분이 많아 계속 찾아보고 물어보고 했던거 같다.
답답한 마음에 멘토님에게 면담을 하였더니 선배기수 중에 한분을 소개 시켜주셔서 면담을 하게 되고, 자신이 공부한 방법을 알려주셔서 그대로 나만에 공부를 시작하게 되었다. 처음에는 이게 정말 도움이 될까 했지만, 나의 심정을 너무 잘 아시는 선배기수분이 이렇게 하여 지금은 승승장구 있다 생각하니 나도 이렇게까지 하는데 안되면 그게 이상한거다 생각하면서 정말 열심히 한것 같다. 아직 개념이 정확히는 이해 안되는 것들이 많지만 다른 분들의 코드를 분석하면서 정말 많이 배우게 된 것 같다.
프로젝트를 시작할 때는 다른분들에게 피해끼치지 말자라는 생각으로 스스로에게 나는 잘하고 있다고 위로하며 어떻게하든 기능을 실행을 시키면 된다라는 생각으로 달려왔던 것 같다. 그래서 코드리뷰를 받으면 수정 사항이 많았지만 많이 고치고 다시 실행시키고를 반복했던 것 같다. 팀원들이 너무 잘 이끌어 줘서 수월한 1차 프로젝트가 되어 기쁘다.

앞으로도 계속 공부하여 2차 프로젝트, 더 나아가 개발자로 취업이 되도 공부하여 새로운 것을 무서워하지 않는 개발자가 목표이다. 이제 다음주부터는 2차 프로젝트가 시작되면 힘들겠지만 더 많은 것을 배울 수 있는 기회가 있는거 같아 기대가 된다.

Postman API

Postman으로 정리 한 백엔드 팀원들이 구현한 전체 기능

profile
기록하는 벨로그

4개의 댓글

comment-user-thumbnail
2020년 11월 28일

훌륭한 분과 함께할 수 있어서 너무 좋았습니다!
프로젝트 기간내내 너무 감사했습니다~

저도 현석님이 작성하신 sorting덕분에 편하게 작업할 수 있었습니다~
이래저래 제가 계속 요청드렸는데 불만없이 다 받아주셔서 너무 감사합니다!

앞으로 분명 더 좋은 개발자가 되실 것이라고 생각합니다 ㅎㅎㅎ
또 같이 할 수 있을 지 모르겠지만 언젠가 기회가 된다면 또 한 번 더 잘 부탁드리겠습니다!
화이팅하십시오!

1개의 답글
comment-user-thumbnail
2020년 11월 29일

현석님 2주간 너무 즐겁게 프로젝트했습니다. 같은 팀이 되어서 영광이었습니다.

1개의 답글