일상 및 회고

기초/중급 FE 프로젝트 회고록

승이버섯 2024. 5. 16. 23:57

때는 4학년 막학기 종강이 다가오던...
취준을 조금 찍먹하면서 장렬한 서탈과 면탈을 마주한 차디찬 작년 12월 연말......
내가 원하는 직무인 프론트엔드 개발에 대한 기술도 못 다룬 채로, 이대로 졸업할 수 없었던 나는!!!!!!!!!!
마지막 기말시험을 준비하면서 부랴부랴 여러 국비 교육과 부트캠프를 알아보다가,

ㅋㄷㅇ 프론트엔드 부트캠프가 제일 커리큘럼이 트렌디하고 최신 기술 스택들이 많다고 개인적으로 느꼈어서, '옳다구나 여기구나 내 6개월을 불태울 곳~^^'하고 ㅋㄷㅇ FE 부트캠프에 지원하고 영혼을 갈아서 서류와 면접에 임한 결과 4기로 합격하게 되었따...~ (feat. 졸업유예^^)
 
교수님께서 말씀하셨었지 합격은 곧 새로운 시작이라고,,~~
아무래도 6개월 동안 프론트엔드와 개발에 관한 전반적인 지식과 기술들을 익혀야하다보니, 빡센 커리큘럼대로 ㅋㄷㅇ 자체 강의들을 들으면서 온라인 부트캠프라는 새로운 환경에 적응도 해야했고, 또 나 자신도 프론트엔드 학습에 대한 욕심도 컸어서  (대학 4년 다니는 동안 여러 수업을 들으며 여러가지 분야를 찍먹하다보니..보안(암호, 해킹, 리버싱 등)/백엔드/인프라/게임/웹..중에서 그나마 웹FE가 하고싶었던 공부였음^^...)
부트캠프 시작하자마자 마음의 여유가 없어져서 SNS도 싹 다 끊고 친구들이랑 연락도 못하고
정신없이 하루하루를 보내던 게 엊그제같은데..,,~~

 
전체 진행 기간 6개월, 전체 파트 6개 중에서 지금 벌써 5번째 파트를 보내고 있고..!??!?
한달 조금 넘게 진행되는 고급 프로젝트를 끝내고 나면 수료라는 게 아직 실감이 안난다....
(전 아직도 프론트엔드 감자인데요?!!???!!) 
 
여튼 서론이 길었는데, 그래서 고급 프로젝트를 시작하기 직전인 지금!!
ㅋㄷㅇ 부트캠프에서 진행한 기초 프로젝트와 중급 프로젝트에 대한 회고를 KPT 방식으로 간단히 진행해보며, 앞으로 진행할 고급 프로젝트에서 개선하고 싶은 점을 이야기해보려 한다.

 


💬기초 프로젝트 (OpenMind)

_ 질문과 답변을 통해 대화를 나누는 웹 어플리케이션 소통 플랫폼
https://github.com/sprint-part2-team14/OpenMind
 

- 프로젝트 배경 :

일단 파트1에서 학습한 HTML, CSS, JS에 대한 지식과,
파트2에서 (상당히 압축적으로^^) 진행된 React에 대한 지식을 모두 활용하여 웹 어플리케이션을 2주 남짓한 기간 안에 완성했어야 했다.
우리 팀은 이때 당시 JS 공부하다가 갑자기 방대한 React 지식의 양에 압도되어서^_ㅠ... 커리큘럼 진도도 겨우 따라가는 분위기였는데, 그래서 프로젝트 선택할 때 복잡한 UI가 상대적으로 적은 프로젝트를 선택하여 이를 완성하면서 React로 개발하는 방식에 대한 감을 익히는 것을 목표로 했다!
 

- 프로젝트 회고 :

KPT 방식으로 회고하려고 한다.

 
- Keep (잘했던 점) :

  • 모르는 것이 있거나 막히는 부분이 있는 팀원을 외면하지 않고 다같이 적극적으로 도우려 했다
  • 팀미팅 시간을 잘 지켰다
  • 다들 열정이 넘쳐서 늦은 시간까지 열심히 코딩했었다🔥
  • 서로 깃 컨벤션도 잘 지켜서 깃 그래프가 이쁘다✨
  • zep에서 다같이 모여서 개발을 했었다 (= 코어 타임을 잘 지켰다!) -> 그래서 빠르게 소통을 했었다
  • 휴식 시간과 작업 시간 구분이 명확했다
  • 팀원들 간에 스스럼이 없고 서로가 서로를 편하게 느꼈었다

 

- Problem (문제점) :

  • zep에서 다같이 모여서 개발을 하며 서로서로 도우려했었던 건 너무 좋지만••• 팀미팅 시간과 코어 타임이 길어졌었다
    -> 개개인들의 개발 일정이 조금씩 밀렸었다
    -> 결국..프로젝트 발표 직전에 역할분담 관련해서 서로 아쉬운 점이 있었다
  • 배포를 하지 못했다
  • 끝으로 갈수록 개인 개발 일정을 맞추기 위해 휴식시간과 작업 시간이 점점 흐려졌었고, 그래서 늦은 시간까지 개발을 하느라 컨디션이 안좋아졌었다
  • 팀원들 간에 너무 편하고 스스럼이 없어버린 나머지 서로 피드백을 주고 받을때 부드럽게 말하지 못한 부분들이 있었다

 

- Try (더 개선하거나 보완해야할 것) :

  • 개발 일정을 맞추기 위해 어쩔 수 없이 건강을 살짝 포기했지만 다음부터는 꼭 건강을 해치지 않는 선에서 개발을 할 것이다…
  • 배포는 포크뜬 개인레포에서라도 해볼 예정이다!
  • 아무리 팀원들 간에 스스럼이 없어도 서로 리뷰나 피드백을 주고받을 때는 머릿속으로 한번 필터링을 거친 후 부드럽게 말하는 것이 필요하다는 것을 깨달았다..!

 


 

🖋️중급 프로젝트
(DoThisDoThat_일해라절해라)

_ 일정관리 웹 어플리케이션 플랫폼  
https://github.com/linason-esc/DoThisDoThat

 

- 프로젝트 배경 :

아르바이트를 구인하고 구직하는 어플리케이션과, 일정관리 어플리케이션 둘 중에 선택해야했었는데, 후자가 일정관리라는 기능이 우리의 일상과 잘 맞닿아 있고, 또 구현을 다하고 나면 실제로 우리가 직접 이용할 수 있는 것이기 때문에 일정관리 어플리케이션을 선택했다! 그리고 우리만의 색깔을 담아 이름과 로고와 이미지 등을 바꿨다! (샤라웃 투 소현띠..💜)


- 프로젝트 회고 :

KPT 방식으로 회고하려고 한다.


- Keep (잘했던 점) :

  • 서로 다같이 으쌰으쌰 하는 팀미팅/작업 분위기~!!
  • 서로 격려와 동기부여를 잘해주어서 힘들어도 다시 힘내서 코딩할 수 있었다!
  • 팀원들 각자 서로를 지지해주고 응원해주어서 든든했다!
  • 팀원들이랑 연락이 빠르게 잘 돼서 소통에 문제가 없었다
  • 프로젝트 기간 동안 즐겁게 코딩했다
  • 자기 부분이 아니더라도 함께 고민해주고 문제를 해결하는데 도움을 줬다
  • 활발한 커뮤니케이션


- Problem (문제점) :

  • 시간 안에 기능을 완성하는데에 더 집중하느라 코드가 깔끔하지 못했다
  • Next.js와 TS의 특징과 장점을 많이 살리지 못한 것 같다ㅜㅠ
  • 컴포넌트 분리에 대한 컨벤션은 없어서 개개인마다 컴포넌트를 나누는 기준이 달랐다
  • 추가 기능을 구현할 시간이 부족했다

 

- Try (더 개선하거나 보완해야할 것) :

  • 각자 추가 기능 구현해보기
  • 코드 정리 및 리팩토링_코드에서 분리할 수 있는 건 쪼개서 분리해보기 (type이라던지 api라던지..등등) 
    • 내가 구현할 추가 기능 / 리팩토링할 것들
      • httpClient → createHttpClient로 적용 (=api 요청/응답 로직 분리 + 타스 활용해서 요청/응답 타입 지정)
      • type 따로 파일 만들어서 분리
      • 서버사이드 렌더링 적용해보기 (댓글 데이터)_자동 새로고침 그만…ㅠ ㅠ + 댓글 중복 응답 버그 해결
      • 모달 레이아웃 싹 뜯어고치기 (버튼 위치 이슈) + 모달 반응형

      • 버튼 활성화/비활성화
      • react-datepicker 커스터마이징 (달력 스타일)

      • 로딩 스피너_Suspense 써보기

⭐앞으로 다가올 고급 프로젝트에서의 나만의 목표 :

1. TS랑 Next.js 특징 잘 살려서 프로그래밍하기!

2. 분리할 수 있는 코드면 잘 쪼개서 분리해서 깔끔하고 가독성 좋은 코드 작성하기!

3. 커밋이랑 PR 단위 작게 쪼개서 올리기! (기초랑 중급 프로젝트 때 작업 단위를 너무 한꺼번에 몰아서 올렸었던 전적이…^_ㅠ)