4주간의 기업협업 회고

이진웅·2022년 3월 17일
1

회고

목록 보기
4/5

기업 선정

2차 프로젝트까지 마치고, 마지막으로 기업협업을 진행 하기위해 희망 기업을 1지망, 2지망으로 수요(?) 조사를 진행하였다. 나는 그로우앤배터라는 기업에 1지망으로 지원하였는데, 다행히 뽑혀서 그로우앤베터라는 기업에 기업협업을 할 수 있게 되었다. 프론트엔드 1명, 백엔드 2명이 기업협업을 나가게 되었다.

첫 인상

회사에 처음 출근하기 전에는 내가 잘 할 수 있을까에 대해 막연한 두려움이 있었지만, 아래와 같은 장점들이 그 두려움들을 많이 상쇄시켜주었다.

  • 깔끔한 건물
  • 유연한 출,퇴근 시간 (10시 - 11시 출근 / 7시 - 8시 퇴근)
  • 자유로운 분위기
  • 친절한 직원분들

그럼에도 프론트엔드는 나 혼자밖에 없었고, 새로운 기술스택을 사용해야했기 때문에 여전히 부담이 있었던 상태였다. 그래도 첫 주에는 새로운 기술스택 강의와 기존의 코드를 기업에서 제공해주었기 때문에 이것들을 가지고 새로운 기술 스택과 코드를 보며 활용방법에 대해 더 심도 있게 공부하였다.

공부한 기술 스택

TypeScript Next.js SWR Redux

  • TypeScript 는 한 줄로 설명하면 자바스크립트와 같은데, 변수나 함수에 타입을 미리 정해놓고 이외의 타입이 들어오면 오류가 발생하는 언어이다.
  • Next.js 는 node.js기반으로 구축된 프레임워크이다. 리액트와 거의 흡사한 문법을 사용하며, 폴더단위로 라우팅이 되는 특징이 있다. 또한 서버사이드렌더링(SSR)에 장점이 있다.
  • SWR 은 데이터를 백엔드에서 가져올때 사용하는 라이브러리로, 해당 기업은 Redux 대신 SWR 을 활용하고 있다고 했다.
  • Redux 는 상태를 전역관리할 수 있는 라이브러리로, 상태를 프롭스로 드릴링 하지 않아도 필요한 곳에서 바로 사용할 수 있게 해준다. 하지만 해당 기업에서는 Redux 보다는 SWR 을 활용하고 있다고해서 아쉽게도 직접 활용해 볼 기회는 없었다.
  • 기술스택은 아니었지만 해당 기업에서는 페이지와 로직을 분리해서 관리했기 때문에, 디자인패턴에 대해서도 간접적으로 익숙하게 되었다.

프로젝트

프로젝트는 2주차에 공개 되었는데, PO님이 이전에 기업협업했던 분들과는 다르게 진짜 바로 필요한 설문조사 기능을 구현하기로 하였다. 첫 회의에서 PO님이 유즈케이스를 설명해주면서 진짜 프로젝트가 시작되는 것을 몸으로 느낄 수 있었다.

프로젝트 내용을 간략하게 정리해보면

  • 어드민 페이지에서 설문조사 양식을 작성 및 조회, 수정 기능
    - 설문조사는 사전 설문, 주차 만족도, 최종 만족도로 구분
    - 질문은 객관식 택 1, 객관식 다중선택, 짧은 주관식, 긴 주관식으로 구분
  • 어드민 페이지에서 설문조사 결과 통계 기능
  • 유저 페이지에서 설문 진행기능

위와 같이 크게 3가지로 구분할 수 있었다.

모든 프로젝트는 이전 프로젝트들과 같이 칸반보드로 관리하였는데, PO님의 요청으로 프로젝트 진행상황을 더 쉽게 파악하기 위해서 테스크들을 좀 더 세분화해서 관리하였다.

프로젝트는 2 ~ 4주차에 걸쳐 진행했지만, 마지막 4주차는 인수인계와 프로젝트 결과 발표 등 여러 일정이 겹쳐있어 사실상 3주차에 마무리를 목표로 진행하였다. 처음 회의에서는 계획대로 만들 수 있을지 알았지만 진행하다보니 수정사항도 발생하고, 백엔드에서도 처음으로 사용해보는 기술스택이 있어서 수정사항에 유연하게 대처하기가 힘들어 프로젝트가 많이 지체되었다. 그 결과 어드민 페이지에 집중하기로 계획을 수정하였다.

결과

스프레드 문법을 활용해서 질문을 추가하고 객관식인 경우 보기도 추가하는 로직을 구현하는데 상당히 애먹었지만 멘토님께 조언을 받아 다행히 완성시킬 수 있었다. 질문을 추가하는 것은 간단히 구현했지만 질문을 추가하는게 map()에 map()을 돌려버리니 생각과는 다르게 어려웠다.

통계 페이지는 아쉽게도 API가 완성되지 않아서, 나도 틀만 완성시켜놓고 기능은 구현하지 못해 아쉬웠다.

소감

  • 새로운 기술 스택을 경험해 볼 수 있어서 좋았다
    • Next.js를 배우긴했는데 잘 쓰고 있는지는...
    • SWR도 쓰긴 쓰는데 익숙하지는...
    • 타입스크립트도...
      • 그래도 any 타입을 사용하지는 않았다!
  • 레거시 코드를 보고 처음엔 읽기가 어려웠지만, 디자인 패턴과 타입스크립트가 익숙해지니 읽기가 마냥 어렵지는 않았다.
    • 하지만 아직도 리덕스 쪽은 이해가 완벽하게 되지는 않아 더 공부해야할 듯
    • 대신 Context쪽은 나름 익숙해진듯 하다.
  • 컨벤션이라고 일단 맞추긴했지만 디자인 패턴에 대해서 이해가 생겼다
    • 페이지와 로직을 분리
    • 컴포넌트 단위로 분리
      • 재활용 가능성이 있는 컴포넌트라면, 재활용이 가능하게 만들자!
  • 기본기가 부족함을 느꼈다
    • 기본기가 부족하니 로직을 구상할 때 애먹는 일이 많아서 더 열심히 공부해야할 것 같다 😢
  • 기업에 개발자 분들이 부족해서 피드백 받을 기회가 부족해서 아쉬웠다

0개의 댓글