본문 바로가기
개발 공부

원티드x위코드 프리온보딩 첫번째 기업과제 (AIMMO) 회고록

by 부지런한 배짱이 2021. 11. 4.

11월 1일부터 원티드와 위코드가 함께 진행하는 채용 연계 실전 코스에 참여하게 되었다.

여섯명이 한 팀이 되었고, 이번 과제는 비교적 간단하다는 이유로 세명씩 한번 더 팀을 나누어 따로 진행되었다.

 

AIMMO 기업의 과제 내용은 대략 이러했다.

  • restful API 설계
  • 회원 기능
  • 게시글 CRUD
  • 게시글 목록 페이징
  • 대댓글 페이징
  • 테스트 코드
  • 배포

한 팀이 A와 B로 나누어졌고 내가 포함된 A팀은 NestJS 프레임워크를 사용하여 프로젝트를 진행했다.

 

내가 작업하며 느낀 것은 작업의 진도가 상당히 느리다는 것이었다.

그 이유에 대해서 생각해보았다.

 

  1. 처음 만난 사이여서 서로에 대한 정보가 부족하다.
  2. Pair Programming을 하라는 멘토의 제안
  3. 팀 개개인의 성향

 

일단 첫번째는 개인의 기술 역량, 의사소통 방식, 작업 방식, 등 서로에 대해 알아가고 어우러지는 시간이 필요했다.

 

두번째로 API 하나에 2~3명이 함께 작업 하라는 멘토의 제안이 작업방식을 결정하는데 시간을 많이 소비하게 했다.

 

팀원 한분께서 먼저 기본 세팅을 하겠다고 제안 해주셔서 함께 깃허브 그룹과 저장소까지 생성을 하였고

폴더 구조, 에러 핸들링 방식, node(npm) 버전, 등등.. 사소한 것들까지 꽤 많은 것을 함께 진행을 했다.

하지만 과제의 핵심 API 개발은 상당히 늦게 시작을 하게 되었는데

 

이미 시간을 많이 소모한 상황에서 어떤 방식이 서로에게 도움이 되면서 과제도 마무리 할 수 있을까라는 고민때문이었다.

우리는 어느정도 함께 구현하고 상의 후에 시간 관계상 기능별로 한명씩 진행하게 되었다.

 

팀 개개인의 성향또한 영향이 있지 않았을까 생각이 되었다.

과제가 끝나고 되돌아보니 우리 팀은 누군가 적극적으로 의견을 내기 보다는

작은 것이라도 이야기를 듣고 질문하고 논의하는데 시간을 많이 할애했다.

 

서로 존중하고 함께 프로젝트를 진행 하려는 동료들 덕분에

함께 24시간 밤을 새워가면서도 문제없이 과제를 제출할 수 있었던 것 같다 :)

 

실제 현업에서도 이렇게 동료들과 논의하며 작업을 진행 할 수 있을까? 나는 그런 곳에서 일하고싶다.

같이 논의하며 작업 할 때 나의 부족한 점을 알고 동료에 대해 알아갈 수 있다.

 

무언가를 제안하고 설득하려면 명확하게 이유를 설명할 수 있어야 하는데

나는 스스로 아직 무언가 제안하고 납득 시킬만큼의 공부와 훈련이 되어있지 않다고 느꼈다.

 

기술적인 측면에서도 아직 척척 해낼 만큼 익숙한 것들이 많지 않았다.

 

스스로에 대해 부족한 점들을 느낄 때 마다

이번 프리온보딩 코스에서 동료들과 협업하며 많은 것을 배울 것 같다는 생각이 들었다.

 

나는 이번 프로젝트에서 유닛테스트와 배포를 담당했는데

같이 진행 후 남은 구현 사항은 게시글, 댓글, 테스트코드 작성, 배포 였고

노드 환경에서 테스트 코드 작성 경험이 있는 내가 담당하게 되었다.

(기능 개발 후 테스트 코드를 작성한 것이었고 부족한 것이 많았다..)

 

다음 과제에서는 좀더 나에게 도전적인 부분을 담당하고 싶다.

프리온보딩 코스에서 나는 어떻게 임하는게 좋을까?

내가 자신 있다고 생각하는 것에 지원하기?

도전적인 것에 지원하기?

 

부족했던 점

  • 테스트코드 (MVC 각각의 내용, class-validator)
  • repository 패턴
  • restful-API
  • Mongoose
  • 페이지네이션
  • 대댓글
  • NestJS 모듈 활용 (Config)

결과물

https://github.com/preOnboarding-Team13/Assignment_1_AIMMO_nest