First Project: Mentor-to-Mentee

hareguu·2021년 2월 22일
0
post-thumbnail

INTRO.

코드스테이츠에서 모든 스프린트와 assessment 가 끝난 이후 2주간 진행하였던 팀 프로젝트의 회고입니다.

저는 Team VVS 에서 백엔드를 맡았으며 2주간의 짧은 여정을 회고로 기록합니다.

Mentor-to-Mentee

배포링크
Git-hub 링크

What's Mentor-to-Mentee?

"멘토 투 멘티" 는 이름에서도 알수있듯, 멘토와 멘티의 소통을 온라인에서 이뤄주는 서비스입니다.

Team VVS

Front-End : 강희석, 조영권
Back-End : 박정환, 박정환

팀원으로서 맡은 소임으로는..

  • Sequelize 를 이용한 스키마 M:N 관계 셋업
  • 메인페이지 멘토카드 API
  • 계정 정보 설정, 비밀번호 재설정, 멘티정보 설정 API
  • 회원가입, 내가받은 질문 API
  • Multer-s3를 이용한 이미지 업로드 API

개발에 사용된 스택

프로젝트 선정

주어진 SR 일정은 2일 이였으나... 모두의 의견은 시간을 조금 빡빡 하게 잡더라도 놓치는 부분 없이 꼼꼼하게 작성하고 우리가 무엇을 만드는지 확실하게 알고 가자 하여 총 3일 동안 일정을 잡고 시작했다.

기획단계에서 여러가지의 서비스 아이디어가 나왔는데, 취업을 목표로 만나서 인지 다들 취업에 관련된 아이디어가 우리의 관심을 이끈 것 같다.

  • 런취업

Learn + 취업 or Lunch + 취업 - 중의적으로 이해할수 있는 프로젝트 이름
관심있는 분야에 대한 멘토를 맛집추천과 함께 매치 시켜주는 서비스

두개의 아이디어가 다수결에 의해 나왔는데, 아이디어의 이름이 참신해서 좋았던것같다.
하지만 점심시간이라는 특수한 시간에 멘티를 만나줄 멘토가 몇이나 있을까 싶어서 최종 탈락했던 서비스이다.

결국 모두의 의지로 "Mentor-to-Mentee" 선정!

기획

프로젝트 주제는 선정되었으니, UI,UX 디자인과 API, Schema, SQL 관계 작성을 해야하는데 말로만 떠들면 누구하나 이해되지 않을것같아 Figma와 Notion 등 다양한 툴로 작성하며 소통했는데 조금 빡빡하게 일정에도.. 나는... 레고 조립하듯 하나하나 디자인하면서 너무나 즐거웠었다 아마 다른분들도...!?

자세한 것은 위키를 통해 볼수있다.
위키 클릭!

뿌듯함!

DB스키마를 짰으나.. 관계 연결하는데 꽤나 애를 먹었다.

Sequlize 를 쓰면서 어떻게 M:N 관계를 구축해야하나 꽤나 많이 고민했었고,
영어로 글을 읽고 쓰는 능력은 자신있는데.... 익숙치 않은, Academic words 가 툭툭 튀어나오니까 한번 보고 파악 할 수 없었고, 공식문서를 봐도봐도 이걸 어디에 어떻게 쓰는게 맞는건가 도저히 알수없어 이틀간 수없이 삽질을 했었다...
하지만! 마침내 성공하고나선 팀원들 다같이 있는 zoom 에서 소리를 질러버렸다...

실수한 부분은...

'/models/mentee.js'

    static associate(models) {
      // define association here
      mentee.belongsTo(models.user, {foreignKey: 'menteeEmail', targetKey: 'email'});
      mentee.hasMany(models.qa, {foreignKey: 'menteeId', sourceKey: 'id'});
    }
  };

어디에 쓰는지 몰라서 models 안에서도 써보고 migration 에서도 써보고 할수있는 방법은 다 써봤다. 차라리 튜토리얼을 보면 조금 더 이해하기 편했으려나...?
Foreign key 와 Target key, Source key 를 정말정말 잘 이해하는게 중요하다. 서로 바꿔쓰는 경우도 있었고 그리고 오타...! 성격이 급하다보니... 가끔 실수를한다.....

Conclusion

Codestates 스프린트 일정 막바지에 Node.js, Mysql, Express를 배우면서 조금 익숙해져서인가 자신감이 있었고, 마침 팀원분들도 다들 페어프로그래밍을 한 적 있는 구면이여서 기획 단계에서 너무나 즐겁게 기획을 할수있었다. 프론트엔드를 맡아주신 강희석, 조영권, 그리고 백엔드 파트너 이재원 님의 노고에 감사드립니다.

profile
Who wanna be a programming nerd.

0개의 댓글