Project: TaskFlow
효율적인 작업 관리를 위한 최적의 칸반보드
TaskFlow 프로젝트에서는 작업 흐름을 직관적으로 확인하고 관리할 수 있는 칸반보드를 구현했다.
기본적으로 인증 및 인가와 CRUD 기능을 구현하였으며,
이번 프로젝트에서는 특히 프론트엔드를 구현하여 백엔드와 연동함으로써 사용자 인터페이스를 완성하였다.
또한 더미 데이터를 활용하여 대용량 데이터를 처리해보았고,
그 과정에서 쿼리 최적화를 통해 성능 개선을 시도하였다.
다음은 이번 프로젝트에 대한 KPT 회고이다.

KPT 회고
- Keep (현재 잘 진행 되고 있고, 계속 했으면 좋겠는 것)
- Problem (불편하게 느끼며, 개선이 필요하다 느끼는 것)
- Try (Problem에 대한 문제 개선, 당장 실행 가능 한 것)
Keep
- 태도
서로 간에 문제 해결에 대해서 같이 노력하는 협업의 태도가 좋았다
- Git Flow 활용
체계적인 git flow로 협업을 진행하다보니 역할도 명확히 구분되고 긴급한 버그 대응도 가능해서 좋았다.
- 팀원의 열정
주말까지 밤새워 작업하는 팀원들의 열정이 좋았다.
- 프론트엔드와 백엔드 협업
프론트엔드를 구현하면서 백엔드 입장에서 협업 시 어떤 점을 고려해야 하는지 알 수 있어서 좋았다.
Problem
- 테스트 부족
중간 중간에 에러가 많이 생겼는데 본인이 했던 부분은 테스트까지 완료해서 하는 것이 좋았을 것 같다.
- 프론트 고려 부족
프론트를 고려하지 않고 백엔드를 만들어서 프론트에서 문제가 많았던 점이 아쉬웠다.
- 작업 구역 분리 부족
작업 구역을 분리해서 좀 더 다양한 기능을 체험해볼 수 있었으면 좋았을 것 같다.
- 쿼리 최적화 부족
단순한 쿼리 구문을 작성하다 보니 성능 저하 문제가 있었고, 쿼리 최적화를 적용하기에도 애매했다.
Try
- 단위 테스트 및 테스트 코드 사용
단위 테스트와 테스트 코드를 많이 사용해서 구현되지 않은 상황에도 테스트할 수 있게 만들면 좋을 것 같다.
- 프론트엔드와 백엔드 연결 구조 이해
프론트엔드와 백엔드의 연결 구조를 좀 더 이해하고 작업한다면 시간 단축 효과와 오류 감소를 기대할 수 있을 것 같다.
- 세부적인 설계와 역할 분배
논의를 통해 설계를 세부적으로 진행하여 작업 단위를 쪼개고 이를 바탕으로 역할 분배를 진행한다면 문제를 해결할 수 있을 것 같다. 또한 TDD 구조를 도입하여 계층적으로 진행했다면 시간 단축이 되어 더 다양한 기능을 여러 명이 구현할 수 있을 것 같다.
- QueryDSL 활용
QueryDSL을 활용하여 복합적인 쿼리를 작성하면 성능 개선과 쿼리 최적화에 도움이 될 것 같다.