[2024 SUMMER DEV] 에코노베이션 내부의 도서를 효율적으로 관리하고 대출/반납할 수 있는 웹서비스 ‘Chack Check’, Sigma팀

프로젝트 소개

시그마 대표사진


Sigma팀의 Chack Check은 에코노베이션 내부의 도서를 효율적으로 관리하고 대출/반납할 수 있는 프로젝트입니다! 실제 동아리 회원으로서 겪었던 불편함을 해소할 수 있는 프로젝트를 진행해보고자 기획하게 되었다고 합니다.


팀원 소개

시그마 지유 시그마 수인 시그마 민규 시그마 명헌
FE    지유 FE    수인 BE    민규 BE    명헌


인터뷰

Q. 프로젝트를 하면서 어떤 문제를 겪었나요?

A. 개발 기간 관리에 있어 약간의 어려움이 있었습니다. 기획 단계에서 얼추 정해놓은 계 획들이 막상 진행하려니 분배가 제대로 되어있지 않다는 걸 깨닫게 되었습니다. 그렇다보니 프로젝트 기간을 나누어놓았음에도 어떤 때는 해야할 일이 밀리고, 어떤 때 는 생각보다 개발에서 난항을 겪어 개발 기간이 길어지기도 했습니다. 팀원 모두가 효율 적인 일정 관리에 대해서 고민해보는 계기가 되었던 것 같습니다.


Q. 프로젝트 하기 전 후 달라진 점이 있다면?

A. 팀원 모두가 로그인 기능을 개발해본 적이 없었는데, 인증이 필요한 시스템을 개발하며 로그인과 관련된 지식을 쌓을 수 있었다는 점이 가장 달라진 것 같습니다!


Q. 프로젝트를 시작하는 팀에게 전해줄 꿀팁을 말해주세요!

A. 당연한 말이지만 미루지 않고 꾸준히 조금씩 해나가는 게 제일입니다! 또한 기획을 할 때 핵심 기능들이 뭐가 나올지 머릿속으로만 생각하지 말고 간단히 리스트업을 해보고 선정하는 것도 좋을 것 같아요.


Q. Summer Dev 프로젝트에서 개발자로 참여한 경험을 설명해주세요. 어떤 역할을 맡았고, 주요 기술 스택은 어떻게 구성되었나요?

A. 저희 팀은 백엔드 2명, 프론트엔드 2명으로 구성되어 있습니다.

BE에서는 주로 jpa와 spring security를 사용했습니다. 지금까지는 jpa를 잘 모르고 썼었는데 이번 프로젝트에서는 jpa를 썼을 때 성능 이슈가 발생할만한 부분이나 효율까지 신경 써서 사용해보았습니다.

FE에서는 figma로 전체적인 웹을 디자인했고 구현에는 리액트를 사용하였습니다. styled components, react-router-dom 등의 라이브러리를 이용했습니다.


Q. 개발자로서 역량 향상을 위해 어떤 노력을 기울였으며, 이 프로젝트를 통해 어떤 기술적 성장을 이루었나요?

A. JWT 토큰과 스프링 시큐리티를 활용해 인증과 인가를 구현하면서 기술적 성장을 이루었습니다. 스프링 시큐리티를 활용하면서 웹 애플리케이션의 보안에 대한 전반적인 이해도가 높아졌습니다. 이는 보안 위협에 대한 대응 능력을 향상시키는데 큰 도움이 되었습니다. 또한, 세부적인 권한 관리와 접근 제어를 설정하여, 사용자 역할에 따른 세분화된 접근 제어를 구현하였습니다. 이를 통해 보안성을 높이고, 불필요한 접근을 방지했습니다.


Q. 팀 내 협업에서 문제는 없었는지 이야기해주세요.

A. 저희 팀의 FE는 각 페이지 별로 역할을 분담하여 작업했습니다. 여러 페이지에서 공통으로 사용되는 기능은 재사용성을 고려하여 단위별로 나누었는데, 각자 맡은 페이지 기준으로 컴포넌트를 개발하다 보니 다른 사람이 개발한 페이지에서는 컴포넌트의 위치가 어긋나거나 기능이 제대로 작동하지 않는 문제가 발생했습니다.

그래서 이미 개발된 컴포넌트를 수정해야 하는 상황이 빈번했는데, 이 과정에서 이미 수정된 컴포넌트를 인지하지 못하고 서로의 수정사항을 반복해서 수정하는 일이 발생했습니다.

이를 통해 더욱 철저한 소통과 협업을 통해 수정 사항을 공유해야 한다는 것, 컴포넌트를 개발할 때 독립성을 유지하기 위해 노력해야 한다는 점을 느낄 수 있었습니다.


Q. 문제에 대한 개선 방향은 어떤 것이 있을까요?

A. 이번 프로젝트에서는 반복해서 서로의 코드를 수정하게 되는 상황은 코어타임에 직접 만나 서로 같이 프로그래밍하는 과정에서 대화하며 해결했습니다.

이러한 상황을 개선하기 위해서는 일단은 코드를 수정하게 되면 수정한 내용을 그때 즉시 공유하는 것이 가장 중요할 것 같습니다. 그 밖에 사전에 스타일 가이드를 정한 뒤 개발에 들어가고, 개발한 컴포넌트의 props와 상태 등을 문서화하여 공유하면 좋을 것 같다고 생각합니다.



메인 관리자 페이지


좋은 의견 감사합니다. 지금까지 에코노베이션 내부의 도서를 효율적으로 관리할 수 있는 웹서비스 ‘Chack Check’을 제작한 Sigma팀의 인터뷰였습니다!