드디어 쓰는 프로젝트 회고!
2월 11일~2월 17일 약 1주일간 진행한
프로그래머스 생성형 AI 백엔드 데브코스
1차 프로젝트가 끝났다!
끝나자마자 바로 회고를 썼어야 했으나...
여러 가지 이슈들과 게으름 이슈로 이제야 쓰는 회고
간단한 프로젝트 소개와 더불어
KPT [ Keep / Problem / Try] 회고 방식으로!
강의가 시작된 1월 중순부터 2월 11일까지 약간 모자란 한 달동안
다음과 같은 내용을 배웠다.
- html & css
- javascript
- javascript 웹
- GitHub Pages를 통한 배포 + Glitch (약간의 Express)
- LLM 및 LLM Chanining
풀스택을 기반으로 진행되는 데브코스라
초반에는 프론트엔드 기반의 서버리스 실습들 위주로 진행했고,
우리 팀도 이 실습들과 "여행🧳"이라는 대주제에 맞춰 주제를 정했다.
우리 팀의 경우
1. 수업 시간에 배운 기술들을 최대한 활용하자
2. LLM 모델에서 나아가 Vision 모델을 활용해보자
라는 방향성에 초점을 맞췄고,
모든 팀원들이 기능을 구현해보고,
지금까지 배운 기술들을 다양하게 사용해보는데 목표를 뒀다.
그래서 우리가 만든 프로젝트는...!
"반려동물과 떠나는 완벽한 여행 | PETTY" ⚡
🔗 프로젝트 링크 : https://quantumguinea.github.io/FE-BASE/
PETTY - 반려동물과 함께 떠나는 완벽한 여행
우리 아이(🐶🐱)와 여행을 떠나고 싶다면? PETTY가 최적의 숙소, 관광지, 음식점을 추천해 줄게요! 🐾
quantumguinea.github.io
- 반려동물 사진을 입력받아 Vision API + LLM Chaining를 활용하여 동물 이미지 분석
- RAG와 LLM을 이용한 반려동물 맞춤 숙소, 음식점, 관광지 추천 서비스
- 기본적인 로그인 및 CRUD 기능
이 구현되는 반려동물 여행 추천 서비스!
1. 반려동물 사진을 입력받아 Vision API + LLM Chaining 을 활용한 동물 이미지 분석
- gemini-1.5-flash / gemini-2.0-flash / gemini-2.0-flash-thinking
2. RAG와 LLM을 이용한 반려동물 맞춤 숙소, 음식점, 관광지 추천 서비스
공공데이터포털 반려동물 관광 정보 데이터 + LLM
3. 커뮤니티 서비스
로그인/로그아웃 + CRUD 기능
🐶😺
참 귀엽죠?
Keep
1. 프로젝트에 몰두한 것 👏🏼
개인적으로 부트캠프에서 진행한 첫 프로젝트이고,
또 새로운 기능들을 많이 접목시키는 프로젝트라
욕심이 나서 열심히 했던 거 같다!
또 팀원들도 모두가 열정적으로 프로젝트를 해서
나도 그 분위기에 함께 잘 어울릴 수 있었다
오랜만에 열심히 코딩한 일주일이였다
2. Vision API를 활용한 것 🎨
부트캠프를 들으면서 배운 점이 정말 많았지만,
복습하기에 바빠서 내가 관련된 심화 내용을 찾아보거나
하는 시간이 부족했던 거 같다
수업 시간엔 LLM을 위주로 다뤘었는데,
이번에 반려동물 분석 기능을 추가하면서!
Google Vision API, Gemini Vision 등
Vision에 관련된 여러 API를 써볼 수 있었다.
또한 API를 선택하는 과정도 경험할 수 있었다.
base64 인코딩과 캐싱 문제로 인해 llama 모델을 선택하지 못했고,
Google vision의 경우 label 형태로 출력되어 우리가 원하는 출력과 달라서
결국엔 Gemini Vision API를 선택했다
이렇게 더 적합한 모델을 선택하고 이유를 정리하는 과정에서
프로그래밍에 생각을 더할 수 있었다
3. 요일별 진행 상황 정리 🥳
우리 팀은 요일별로 각 팀이 어느정도 진행되었는지 공유했고
최대한 자세하게 각 팀이 당일한 내용을 작성했기에!
나중에 팔로우할 때도 어려움이 없었다.
상대적으로 다른 팀의 기술은 놓칠 때가 많은데 이렇게 문서로 공유하니
훨씬 더 쉽게 다른 팀의 기술을 이해할 수 있었다
Problem
1. 프로젝트 초기의 설계 문제 🦔
설계의 중요성을 느꼈다!
개발을 들어가기 전에
- 사용자에게 입력받을 데이터
- 처리해야되는 데이터
- 각 기능간 반환하는 데이터
등을 명확하게 정의하고 들어갔어야 했는데 ...
그냥 일단 팀을 나눠서 개발을 진행했다...!
각 기능이 분리되어 있는 것 처럼 보여서 그랬던 거 같다
또한 명확한 PM을 맡은 팀원도 없었기에..
개발 마무리로 갈수록
"그래서 이 기능에선 어떤 값을 입력받아야 하는 거죠?"
라는 의문이 마구마구 쌓였다!
왜 PM이 있고, 기능 설계서를 쓰며, 요구사항 정의서를작성하는지 알게 되는 순간이었다 😭
2. 시간에 쫓기다 ⌛
1차 프로젝트가 1주일(실제로는 6일) 정도의 짧은 기간이었기에,
우리는 미리 주제를 정하고 기능 구현만 프로젝트 시간에 하자!
라는 생각으로 미리 주제를 정했다!
그.러.나
"여행 추천이라는 주제에 약간 어긋난 거 같다"
"프로젝트 방향성이 맞는지 모르겠다"
라는 피드백을 듣고 ...
주제를 수정 수정 수정하느라 초기 시간을 100% 활용하지 못했다!
(그러다 보니 기능 정의도 하지 않은채 개발에 들어간 것도 있는 거 같다!)
또, 프론트 + 백엔드처럼 파트가 나눠져 있는 것이 아니었다보니
다같이 기능 개발을 하고
프로젝트 종료 2일 전에 급하게 화면을 만들어서...
디자인적인 완성도에 대한 아쉬움도 남았다
기능 별로 프론트도 함께 담당하거나,
다같이 대략적인 디자인을 먼저 하고 기능 개발에 들어갔으면 어떨까?
하는 아쉬움도 있다
3. 도움을 구하자! 🤖
나도 가지고 있는 가장 큰 문제였는데,
내가 맡은 기능을 내가 완벽하게 해내려고 하는 것
사실 시간이 짧은 프로젝트였던 만큼
안되는 부분이 있으면 일정 시간만 고민하고 팀원들한테 공유해서!
빠르게 문제를 해결하는 과정이 필요했던 거 같은데,
상대적으로 이 부분이 부족했던 거 같다
그러다 보니 기능 구현 자체에 대한 시간도 늘어지고
마지막에는 완성을 해야되니!
처음 기획한 것보다 아쉬운 완성도에서 타협한 점도 많은 거 같다.
4. 미래의 체력을 당겨쓰다... 🙅🏼♂️
나의 큰 문제는...
내가 자고 싶을 때 자고 내가 일어나고 싶을 때 잔다...
이번 프로젝트 때도 아직 실력이 많이 부족하다보니 + 욕심...
하나의 문제를 해결하는데 오래 걸리고
→ 그러다 보니 자는 시간이 늦어지고
→ 새벽에 자고.... 피곤하고
무한 반복 ♾️
중간에 강사님이
"이 프로젝트가 모든 것이 아니고 부트캠프가 개발의 끝이 아니다"
라는 말씀을 해주셨는데
그 말을 듣고 많은 생각이 들었다...!
맨날 밤샐 때마다 미래의 잠을 땡겨쓰는거야~라고 말하곤 했는데
생각해보면 지금의 순간보다 내가 앞으로 개발할 날이 더 많으니까!
일에 몰두하는 것은 좋지만 적당히 체력을 관리하는 것도 중요하다고 느꼈다
실제로 피어리뷰에서 받은 평가 중 하나
쉬고 해야 잘 될 때도 많다 😶🌫️
Try
1. 설계를 정확히 하고, 문서를 잘 작성하자 📜
최근에 Spring MVC 패턴을 공부하며 작성한 프로젝트 설계 방식인데,
이 순서로 프로젝트 구성을 진행하니 상대적으로 필요한 데이터가 명확하고,
기능에서 내가 구현해야하는 값이 무엇인지 파악할 수 있다는 생각이 들었다
또한, 우리가 최종적으로 제출한 문서들인데,
문서 작성이 코딩보다 어렵다 는 이유로
마지막에 급하게 몰아서 작성한 문서들이 많았다 😅
지금 돌아보니! 오히려 이 문서들이 가장 중요했고,
개발에 들어가기 전에 팀원들끼리 모여서
기획 + 기능을 문서로 남기는 시간을 가지고 싶다!
문서로 남기면 언제든 찾아볼 수 있으니까!
2. 매일 동행 스크럼 or 팀원들끼리 공유하기
Keep. 3처럼 매일 매일 진행 상황을 공유하되,
다같이 모여서 리뷰하는 시간을 가지기!
안되는 부분이 생겼을 때 빠르게 방향성을 조정하거나,
서로의 지식에서 도움이 되는 걸 발굴해!!!
더 빠르게 문제를 해결하고 싶다.
3. 꾸준히 TIL 쓰기 💥
가장 중요!!!!!!!!!!!!!
내가 구현하면서 생긴 문제점과 해결 방법을 기록하자
이번에 코딩하기 바쁘다는 이유 TIL을 소홀히 했다.
기억은 시간이 지나면 소멸하고...
문제점은 시간이 지나도 계속 생긴다....!
단순히 내가 구글링 했던 내용, AI에게 도움을 구했던 내용,
발생했던 Error 내용, API 사용 방법 등을
짧게나마 기록하는 습관을 프로젝트 시에도 유지해야겠다
이렇게 짧은 1차 프로젝트 회고 끝!
사실 이미 이 회고를 쓰는 시점도 프로젝트 종료 1달 후라...
많이 휘발된 기억들이 많다.
다시 한 번 TIL과 기록의 중요성을 느낀다 😅
첫 프로젝트인만큼 아쉬움이 많이 남는다
"이렇게 하면 더 잘할 수 있었을텐데"
"이런 부분은 이렇게 할걸!"
하는 생각이 많이 들지만!!!!
그래도 정해진 시간안에 하나의 서비스를 배포까지 했다는 점에
큰 칭찬과 박수를 보내고 싶다 ㅎㅎ
약 1달동안 더 열심히 공부해서더 큰 볼륨으로,
더 많이 기여하는 2차 프로젝트를 진행하고 싶다!
그럼 진짜 회고 끝!
혹시나 프로젝트가 궁금한 분들이 계시다면!
링크와 깃허브에 놀러오세요 🙈
🔗 프로젝트 링크 : https://quantumguinea.github.io/FE-BASE/
PETTY - 반려동물과 함께 떠나는 완벽한 여행
우리 아이(🐶🐱)와 여행을 떠나고 싶다면? PETTY가 최적의 숙소, 관광지, 음식점을 추천해 줄게요! 🐾
quantumguinea.github.io
🔗깃허브 링크 : https://github.com/QuantumGuinea
QuantumGuinea
QuantumGuinea has 6 repositories available. Follow their code on GitHub.
github.com
'TIL > 회고' 카테고리의 다른 글
[회고] 2025년 01월 월간 회고 (0) | 2025.02.06 |
---|