드디어 짧다면 짧고, 길다면 길게 느껴졌던 2주간의 웹 프로젝트 기간이 끝났다.
처음에는 2주가 짧을 것이라고 생각했는데 매일 팀원들과 아침 저녁으로 모여서 회의하고, 밤낮 구분없이 계속 개발을 하다보니 정말 길게 느껴졌던 것같다.
About Project
이번에 진행한 프로젝트의 주제는 포트폴리오 공유 사이트를 만드는 것이었다. (이 후에 진행되는 프로젝트는 기획부터 직접해야하는 것으로 알고 있는데, 이번 프로젝트는 주제, 기본으로 구현해야 하는 기능은 정해주셨다.)
기본 기능은 학력, 수상이력, 프로젝트, 자격증 항목을 추가할 수 있는 mvp를 구현하는 것이었고 나머지 추가 기능은 각 팀마다 원하는 기능을 추가하였다.
우리 팀은 포트폴리오 항목 삭제, 다른 사람의 포트폴리오 좋아요, 방명록, 팔로우, 자유 게시판, 프로필 사진 변경, 회원 탈퇴 등의 기능을 추가했다.
이번 프로젝트에서 나는 프론트엔드 파트를 맡았고, 세부 기능으로 수상이력, 자격증 항목의 추가, 편집, 삭제와 팔로우 기능을 구현했다.
기술스택으로 프론트엔드는 React, 백엔드는 Node.js, 데이터베이스는 MongoDB를 이용했다.
혼자 진행했던 졸업 프로젝트에서도 React로 개발을 했었지만 클래스 컴포넌트를 사용했었다. 이번 프로젝트에서는 React Hook Form을 사용했는데 확실히 hook을 사용해보니 훨씬 간단하게 개발할 수 있었다.
그리고 전에는 async/await, 프로미스, 비동기 처리 등의 개념을 모르는 상태에서 개발하느라 상태 관리가 어려웠는데, 이번에는 배운 내용을 바탕으로 잘 활용하니 전보다는 더 잘 할수 있었다.
Problem?
프론트엔드 코치님께서 오피스 아워 시간에 많은 질문을 해달라고 하셨는데도 질문을 많이 하지 못하고 혼자 해결하려고 했었다. 따라서 깔끔하지 못한 코드도 작성했고, 시간을 불필요하게 많이 쓴 부분도 있었다.
스스로 문제를 해결하는 능력도 기르는 것이 좋지만 정해진 시간이 있는 만큼 어려운 부분에 대해서는 질문을 해야 한다는 것을 끝나고 나서야 느꼈다.
오류가 발생하면 혼자 끙끙대며 해결하는 게 습관이 되다 보니 어떤 상황에 질문을 해야 하는지, 어떻게 해야 하는지 잘 몰랐던 것 같다. (이런 거 물어보면 '검색도 안하고 물어보는 건가?'라고 생각하실까봐 못 물어봤던 것 같다. 실제로 예전에 교수님께 용기내서 질문하러 갔다가 구글링하라는 말을 듣고 난 뒤부터.. 약간의 질문 질문 공포증이 생긴 것 같다🥲)
그래도 이 과정은 교육과정이기 때문에 다음 프로젝트를 진행할 때는 도와주시는 코치님께 더 많은 질문을 해야겠다고 생각했다!
프로젝트를 통해 얻은 것
😍 정말 좋은 팀원분들
팀 프로젝트를 하기 전에 걱정을 많이 했었다. 예전에 진행했던 프로젝트 때 힘들었던 기억이 있기 때문이었다.
정말 웹의 'ㅇ'자도 몰랐고 버전 관리, 코드 컨벤션 등 협업을 위한 것들도 아무 것도 몰랐기 때문에 정말 꾸역꾸역했었다. (진행되는 것없이 매번 밤을 새다보니 신경이 날카로워 지는 일도 있었다..)
프로젝트를 진행하기 전 먼저 이번 프로젝트에서 사용할 기술 스택들과 깃을 이용한 버전 관리에 대해서도 먼저 배웠기 때문에 관련해서 어려움은 없었고 정말 모든 분들이 열정적이셔서 프로젝트를 하는 재미가 있었다.
화~토요일 동안 매일 아침, 저녁으로 스크럼 회의, 회고를 진행했다. 힘들 수도 있는 일정일텐데도 다들 열심히 참여해주셔서 감동도 받고 자극도 받았던 것 같다.
이번 팀 프로젝트를 하면서 정말 좋은 팀원분들을 만나서 좋았고, 팀 프로젝트는 어떻게 하는 것인지를 많이 배웠다.
팀원끼리 의견이 다 맞아서 앞으로 스터디를 만들어 이번 포트폴리오 사이트를 좀 더 고도화해보기로 했다! (예이!!)
😊 정말정말 친절한 코치님
처음에는 코치님이 어렵게만 느껴졌는데 먼저 질문 많이 해달라고 하시고, 틈틈이 시간날 때마다 답변해주셔서 너무 감사했다. 그리고 최대한 취업 관련 정보나 실제 현업에서는 어떻게 하는지를 많이 알려주셔서 너무 감사했고 많은 것을 배웠던 시간이었다.
코드 리뷰도 꼼꼼히 남겨주시고 중간중간 질문에 답변해주시다가도 좀 더 좋게 고칠 수 있는 코드를 말씀해주셔서 깔끔한 코드란 무엇인지 다시 생각해볼 수 있게 해주셨다.
평소에 개발을 하다가 오류가 나면 검색을 통해 해결할 수 있지만 내 코드가 깔끔한 지는 솔직히 기능이 잘 동작한다면 굳이 신경쓰지 않았다. 하지만 코치님이 코드를 봐주시면서 고치면 좋을 부분, 추가해야 할 부분을 말씀해주셔서 코드를 작성할 때 좀 더 생각하면서 작성해야겠다고 느꼈다.
그리고 로딩이 오래 걸릴 경우 유저가 스켈레톤이나 로딩 버튼같이 UI/UX 관련 조언도 해주셔서 전혀 생각지 못했던 내용들도 추가하고 고칠 수 있었다.
바쁘실텐데도 틈틈히 도와주셔서 너무 감사했습니다 16팀 코치님!
무언가를 만들어보면서 배우는 게 크다고는 항상 느꼈지만 이번 프로젝트를 진행하면서 정말 많은 것들을 배운 것같다.
팀 프로젝트를 해봐야 하는 이유도 알았고 버전 관리의 중요성, 클린 코드, 리팩토링의 중요성 등등 여러가지를 배울 수 있었다.
'Education > Elice AI Track' 카테고리의 다른 글
[엘리스 AI 트랙 4기] 인공지능 웹 프로젝트 회고 (0) | 2022.07.31 |
---|---|
[엘리스 AI 트랙 4기] 데이터 분석 웹 프로젝트 회고 (0) | 2022.05.12 |
엘리스 AI 트랙 4기 지원 후기🎉 (0) | 2021.12.30 |