첫 사이드 프로젝트 후기 ✌️
만들어보면서 배우는 게 가장 재밌고 빠르게 배울 수 있는 방법이라고 생각해서 사이드 프로젝트를 진행했었는데, 정작 프로젝트를 마치고 보니 기능을 구현하는 데에만 급급했던 것 같다.
CORS 이슈를 해결하기 위해 어떤 의미인지도 모르는 옵션을 넣고, 무슨 뜻인지도 모르는 Nginx 설정을 무작정 넣고..
일과 병행해서 진행하다 보니 여유로울수는 없었지만 그래도 배운 내용들을 정리하면서 진행했으면 좋았을 것 같다. 다음에는 꼭 이렇게 하기로!
조금 늦은 느낌이지만 Hola를 진행하면서 들었던 생각들, 배운 내용들을 정리해보려 한다.
아래와 같은 목차로 진행할 예정이다.
- 사이드 프로젝트 후기(이글!)
- Node.js 세팅 및 프로젝트 구조
- Database 선택. RDBMS or Nosql
- Restful API 설계하기
- Oauth 2.0 로그인 처리하기
- JWT 사용하기, Access Token, Refresh Token 전략
- mongodb 정리 + 팁
- EC2에 배포하기
사이드 프로젝트에서 완벽한 것을 얻으려 하지 말자
사이드 프로젝트는 개발을 재밌게 할 수 있는 좋은 방법이다.
개발에 대한 제약 없이 써보고 싶은 기술을 마음껏 써볼 수 있고 내가 원하는 서비스를 만들 수 있다.
Hola를 구상할 때는 분명 두근거렸던 것 같은데 완벽한 서비스를 만들어야 된다는 생각이 들었던 순간부터 재미가 아닌 압박으로 다가왔다. 오픈 후 사용자가 없으면 어쩌나 걱정하고, 비평을 받을까 걱정하고, 노력이 물거품이 될까 봐 걱정으로만 가득 찼던 것 같다.
사용자가 없다고 노력이 물거품이 되는 게 아니다. 내가 만들고 싶었던 서비스를 만든 것만으로도 충분히 의미 있고 써보고 싶은 기술을 써봤다는 것 만으로 충분히 의미 있다.
사실 지금도 Hola의 사용자가 없어질까 불안하지만 잘하고 있다는 마인드 셋을 가지기 위해 이 글을 쓰는 것 이기도 하다.
사이드 프로젝트는 재밌게!!😄
클론 코딩? 신규 서비스 개발?
빠르게 개발 실력을 늘리고 싶다면 클론 코딩을, 개발의 재미를 느끼며 성장하고 싶다면 신규 서비스 개발을 진행하는 게 좋은 것 같다.
내가 원하는 서비스를 설계하고 개발한다는 건 슈퍼 어썸한 일이다.
서비스 기능, UI/UX, 기능에 따른 Dataflow, Database, API 개발까지 많은 것들을 설계하는 경험할 수 있고 새로운 시야를 얻을 수 있다.
아래 노마드 코더님의 개발자에게 사이드 프로젝트는 필수인 이유! 영상을 보길 바란다.
하지만 새로운 서비스를 개발하는 건 시간이 많이 걸린다. Hola의 경우 서비스와 UIUX, 디자인을 설계하는데 한 달이 걸렸다.
팀원 모두 일 때문에 주 1~2회밖에 회의를 못하다 보니 조금 더 오래 걸리긴 했지만 어떤 서비스를 만들 것인지, 어떤 기능을 포함할 것인지, UI/UX는 어떻게 디자인할 것 인지 모두 생각해야 하기 때문에 오래 걸릴 수밖에 없다.
나에게 필요한 것이 무엇인지 생각하고 그에 맞는 프로젝트를 진행하면 좋겠다.
팀원 모집
사이드 프로젝트를 진행하는 데에 아이디어가 중요한 만큼 좋은 팀원을 모집하는 것도 중요하다.
주변에 지인과 함께 진행하면 좋겠지만 현실적으로 쉽지 않다.😅
사이드 프로젝트 팀원 모집 글을 보면 기술 스택만 동일하다면 선착순으로 구하는 경우가 많은 것 같은데
단순히 "안녕하세요! 같이해요." 보다는 먼저 사이드 프로젝트를 통해 어떤 걸 얻으려고 하는지, 바라보는 방향이 같은지 얘기해보는 게 좋은 것 같다.
좋은 팀원과 함께 프로젝트를 진행할 수 있어서 너무 좋았다.
기획, 디자인은 생각보다 더 어렵다.
복잡하지 않은 서비스니까 2~3주/ 주마다 2~3회 회의를 거치면 정리가 되겠지, 라는 생각을 했었는데 너무나도 착각이었다.
어떤 서비스를 만들지, 어떤 불편함을 해소해줄지 정해진 상태에서도 생각할게 많았다.
- 더 효율적인 화면 구성
- 가독성을 더 높일 수 있는 방법은 없을까?
- 화면이 너무 복잡하지 않을까?
- 사용자가 불편함을 느끼지 않을까?
- 너무 다른 사이트와 비슷하지 않을까?
- 과연 사용자가 이 사이트를 사용할까?
🔁무한 반복..
한 번에 완벽하게 만드려고 하지 말고, 간단하게 만들어보면서 수정하는 게 좋은 것 같다. 어차피 나중에 바뀌기 때문에 😅
이렇게 회의하는 게 좋은 것 같다.
회의 내용을 정할 때 단순히 등록 페이지를 어떻게 구성할지에 대해서 회의하자 보다는
아래처럼 결정해야 하는 항목을 정리하고, 각자 어느 정도 생각해온 후 회의하는 게 좋은 것 같다.
- 등록 페이지에서 어떤 항목을 보여줄지
- 유효성 에러가 날 경우 표현 방법
미리 정해놓지 않으면 어디까지 회의해야 하는지, 어떤 것을 준비해와야 하는지 알 수 없을뿐더러 회의 시간에 정적이 흐르는 대참사가 발생할 수도 있다.
준비해오면 회의 시간도 단축시킬 수 있고 회의가 언제쯤 끝날지 예상할 수 있다.
사용자 피드백은 필수
개발을 하다보면 생각지 못한 부분에서 사용자가 불편함을 느낄 수 있다.
이런 부분은 피드백을 통해서 개선을 해야하는데 직접적으로 피드백을 주는경우는 드물기 때문에 피드백 버튼을 만들어 쉽고 간편하게 피드백을 받을 수 있도록 구성했다.
개선할 부분들을 바로바로 받을 수 있고 사용자의 반응도 볼 수 있어서 좋았다 :)
후기
시작할때는 Node.js, MongoDB, AWS에 대해 거의 몰랐는데 부딪혀보면서 많이 성장한 것 같다.
또 사이드 프로젝트를 진행하기 전까지 내가 이직을 하기 위해 공부를 하는 건지, 좋은 개발자가 되기 위해 공부를 하는건지 헷갈렸는데 Hola!를 개발하면서 확실이 알게 된 것 같다. 물론 이직도 중요하지만 앞으로도 좋은 개발자가 되고 싶은 마음이 잃지 않았으면 좋겠다.
다들 사이드 프로젝트하세요! 👍
'사이드프로젝트' 카테고리의 다른 글
첫 사이드 프로젝트 오픈!! - Hola (2) | 2021.08.25 |
---|