[Wecode]1차 프로젝트 회고록

Hyeseong·2021년 1월 22일
0
post-thumbnail

🔫기간 : 2021년 01월 11일(월) ~ 2021년 01월 22일(금) [12일간]

🔫사이트: 배민문방구 클론

🔫팀명 :싸닥코(프런트 2명, 백엔드 2명)

구현 웹사이트

ERD 객체 관계 다이어그램(feat. Aquerytool)

🔫영상

🔫 적용 기술 및 배운점

GIT

  • 파일의 변경 사항을 추적하고, 프로젝트의 작업을 조율하기 위한 분산 버전 관리 시스템을 다루었습니다.
  • git의 대표 명령어(ex. init, add, commit, remote, branch, push, pull merge, log)를 직접 사용하고 이해하였습니다.

Trello

  • 프로젝트 생산성을 높이기 위한 시간관리, 업무관리를 위해 웹기반 프로젝트 관리 비쥬얼 프로그램을 다루었습니다.

  • Backlog, This Week, In Progress, Done과 같이 카테고리를 구분지어 진행하였습니다.

  • Trello에 정리한 카드 내용을 토대로 매일 아침 정해진 시간 팀원들과 standup meeting을 진행

Django

  • 장고 초기세팅(프로젝트 생성, 앱 생성, MySQL DB연결)

  • ORM을 사용하여 DB CRUD(Create, Read, Update, Delete)을 구현

  • 장고의 폴더 구조를 이해하고 있으며 각 파일의 목적과 용도 이해

  • Decorator를 구현 및 엔드포인트에 적용

  • 프론트에서 회원가입한 유저정보를 데이터 베이스에 저장

Database(ERD,SQL)

  • one to one, one to many, many to many 개념

  • JOIN 기본 개념(LEFT JOIN, RIGHT JOIN, INNER JOIN, OUTER JOIN의 차이점)이해

  • 요구사항에 맞게 데이터 베이스 모델링 설계

HTTP

  • HTTP 기본 개념 (요청/응답, stateless)를 이해와 메세지 구조

  • GET, POST 메소드 차이점을 알고,
    프론트에서 넘어오는 데이터를 어떻게 처리해야 할지 파악

  • 쿼리 스트링과 JSON으로 전달되는 데이터를 어떻게 받아서 처리 할지

RESTful

  • RESTful API 개념을 이해하고 URL 주소를 RESTful 식으로 구현

bcrypt, pyjwt

  • 단방향 비밀번호 해시 메커니즘이 원본 메시지를 hash algorithm으로 암호화하여 다시 평문으로 볼수 없는 digest를 생성한다는 점에 대한 이해

  • 기존 단방향 해쉬함수의 약점을 보완하기 위해 salting, key stretching기법에 대한 이해

  • Python을 이용한 bcrypt설치, 암호화 및 저장, 암호화된 정보 비교 구현

  • JWT는 단방향 해쉬와 다르게 복화화가 가능하며, request header에 토큰을 저장하여 별도로 DB에 저장 하지 않음에 대해 이해

VScode

  • vs코드의 인텔리센스 기능을 이용한 자동완성 기능 등을(린팅, 멀티 커서 편집, 매개변수 힌트, 깃 지원, 내장 소스 코드 통제 기능) 사용 및 다룸

httpie

  • python으로 개발된 콘솔용 http client유틸리티로 개발 및 디버깅 진행
  • HTTP 인증, 및 커스텀 헤더 설정

miniconda

  • 미니콘다(아나콘다)를 이용한 가상환경 생성및 패키지 파일 설치, 삭제, 업데이트 등과 같은 CLI 기능 사용

Github, Slack

  • Github pull request를 통해 현재 작업중인 사항과 요청 사항에 대해 정리하여 merge요청 가능

  • SSH기능을 이용한 Clone, Issues, Wiki, Project page기능에 대해 이해

Agile, Scrum

  • 고객과 개발자가 지속적으로 소통하여 요구사항의 변화를 수용해야하는 점
  • 개발자 개인의 가치보다 < 팀의 목적을 우선시하며, 고객의 의견을 가장 우선으로 하는점
  • 개발팀원들과 주기적으로 회의하며 프로젝트 점검
  • 일정하게 개발한 프로그램을 시행해보고 고객으로 부터 피드백 점검
  • 비용절감과 프로그램 품질향상을 위한 노력
  • 프론트엔드 개발자와 소통하여 front 와 back을 연결
  • 새로운 기술을 학습하며, 잘 안풀리는 문제에 직면한 경우 Google검색, stackoverflow등을 활용하여 문제를 해결하고 바로 적용

✅느낀점

- 🔫좋았던 점

  • 하나! 위코드에서 프로젝트 개발을 협업으로 진행하며 소통의 중요성을 알게되었습니다.
    특히, 프로젝트 시작전 왜? 준식멘토님이 소통을 그렇게 강조했는지 알고 있었지만 형식적으로 중요하다고 흘겨 들었는데 마음 깊이 와닿는 기간이었습니다.

  • 둘! ‘나’라는 사람의 현재 위치와 교만한 마음을 지울수 있는 계기가 되었습니다.
    아래는 병민 멘토님의 조언

  • 셋! Front분들이 너무 잘해주어서 UI/UX의 감각이 백엔드의 부실한 기능을
    단순하지만 깔끔하고 담백한 기능으로 웹사이트를 구현할 수 있었습니다.

  • 넷! 합숙하면서 서로 치킨도 먹고 식사하면서 여러 이야기를 공유할 수 있어서 좋은 시간이었습니다.

  • 다섯! 위코드 내부 Slack 커뮤니티를 이용하여 정리되지 않은 질문을 무차별적으로 하는 것이 아닌 체계적으로 하는 방법을 익혔습니다.

  • 여섯! 스크럼 방식을 통해서 Trello를 통해 정해진 11:30분에 미팅을 통해서 정리되지 않은 것들을 팀원들에게 공유하고 짜여진 틀속에서 compact하게 일을 추진할수 있어서 좋았습니다.

  • 그 밖에 여러 새로운 기능들을 실습하며 만난 오류들은 처음에 당황스러웠지만 지금은 이를 바탕으로 앞으로 나아갈 수 있는 계기가 되어 좋았습니다.

- 🔫아쉬웠던 점

  • 하나, 22일 발표하는 날까지 DB 충돌이 끊임없이 났습니다. ㅠ.ㅠ(슬랙 커뮤니티를 이용 해결)
  • 둘, 시간부족, 의사소통, 새로운 기능에 대한 대처 능력에 완벽한 모습을 보이지 못한 순간이 있었습니다. 팀원중 소외감을 느낀 인원에 대해 더 면밀히 Care하고 PM과는 의견 조율을 통해서 프로젝트 내외적으로 최대한의 시너지를 내지 못하여 아쉬운 마음입니다.
  • 셋, 프로젝트 발표를 할때 갑자기 서버가 동작하지 않아 대부분의 웹페이지의 기능들은 보여줄수 없었고 MOCK데이터를 이용한 기능들을 보여주기만 했습니다. 추후에는 서버 안정화 및 FRONT <--> BACK 간의 통신 안정화를 이용하기 위해 Docker를 이용하여 로컬 서버운영 서버를 적절히 구축하여 진행해 볼 예정입니다.
  • 넷, Wecode Notion에 게시된 커리큘럼에 대한 지식을 모두 흡수 및 응용하여 진행하지 못해 아쉽습니다.

- 🔫팀원들에게

  • 부족한 부분 많은 나를 이해해준 팀원과 혹은 의견충돌이 있었던 인원들에게는 아쉬운 마음과 고마운 마음이 양분하네요. 또한 같이 다른 팀원들과 함께 늦은 시간 짧게 맥주도 마시고 치킨도 마시며 이런 저런 걱정을 나눌때는 서로 동기애와 팀이라는 합일된 마음을 점검할수 있어서 좋았어요.앞으로 남은 2차 프로젝트 화이팅하며 어떠한 역격과 시련이 오더라도 초!심! 만 잃지않고 나아가길 나에게 그리고 팀원들에게 당부드려요.
profile
어제보다 오늘 그리고 오늘 보다 내일...

1개의 댓글

comment-user-thumbnail
2021년 1월 24일

프로젝트 수고 많으셨습니다 혜성님 🙌🏻

답글 달기