4주간의 JSCODE 스터디가 끝이 난 기념(?)으로 인생 첫 회고를 하고자 한다.
회고를 하면 내가 무엇을 잘했고, 무엇이 부족한지 인지하여 빠르게 발전할 수 있으며 성취감 또한 느낄 수 있다고 한다.
이 좋은걸 이제 알려준다고???
스터디를 진행하면서 프로젝트 환경 세팅부터 CRUD, 배포, API 문서 작성, 그리고 회원가입 및 로그인 기능까지 백엔드 개발의 한 사이클을 경험할 수 있었다.
가장 중요한 건 계속해서 미루던 Git 사용법도 익힐 수 있었다는 점이다.
혼자서 공부할 땐 할 수 없었던 Pull Request부터 코드 리뷰를 어떻게 하는지도 배웠다.
기술적인 공부 뿐만 아니라 함께 참여하는 사람들과 취업에 대한 이야기도 많이 나누었고, 다양한 고민과 피드백을 통해 내 고민도 함께 해결되었다.
학업, 개인적인 공부, 그리고 스터디를 병행하는 것은 생각보다 시간이 많이 부족하고 힘들었다.
그래서 꾸준히 하는 것이라곤 용두사미밖에 없던 나는 "대충 넘어가도 되지 않을까?", "오늘 한 번쯤은 빠져도 되지 않을까?" 라는 생각을 계속했다.
하지만 돈 때문일까.. 바뀌고자 하는 마음 때문일까... 출석률 100%를 찍었다!!
이유가 뭐든간에 끝까지 성실히 해냈다는 것에 뿌듯하다.
과제는 한 번 진짜 까먹고 제출을 안했다...
이번 스터디에서 repository 계층을 구현할 때 JpaRepository 인터페이스를 사용하지 않고, 직접 JPQL을 작성하였다.
JpaRepository 인터페이스를 사용하면 편리하겠지만, 어떻게 동작하는지 공부하고 싶었기 때문이다.
덕분에 JPA의 기본적인 기능과 쿼리를 충분히 연습할 기회가 되었다.
스터디를 시작하기 전에 멘토님께서 취업, 자기계발에 대한 좋은 말씀을 공유해주셔서 감사했다. 프로젝트 진행도 좋았지만, 개인적으로 이 부분이 방향을 잡는데 도움이 돼서 굉장히 만족스러웠다.
학업과 개인 공부를 병행하면서 스터디를 진행하다보니 체력적인 한계로 쉬는 것을 제외하고도 물리적으로 시간이 부족하다고 느꼈다.
그래서 좋은 코드와 미션을 모두 진행하겠다는 욕심은 내려놓고, 느리더라도 차근차근 진행하였고, 코드는 좋지 않지만 정상적으로 돌아간다는 것에 의의를 두었다.
Git은 사용할수록 어려운 것 같다.
미션을 진행하다가 실수로 PR에 푸시하면 안되는 코드를 푸시해서 되돌려야 했는데, 검색하였더니 방법이 있었지만 너무 어려웠던 기억이 남는다.
결국 PR을 닫고 다시 열어서 해결했다...
JWT를 사용한 로그인 기능을 구현하는 미션이 나왔다.
JWT는 생소해서 우선 구글링과 유튜브를 통해 개념을 잡았지만, 어떻게 구현해야 할지는 여전히 감이 안잡혔다.
멘토님께서 하신 말씀 중 하나인 "우선 예제를 따라 쳐보고, 동작하면 그때 공부해보자."를 떠올려 무작정 예제를 따라 쳤다.
하지만 어째서인지 분명 따라 쳤는데 나만 동작이 안됐다..
그렇다고 지금 스프링 시큐리티에 대한 개념을 천천히 공부하는 것은 힘들어서 시큐리티를 사용하지 않고 다시 구현했다.
끝내 로그인하여 토큰을 반환하는 단계까지 구현에 성공했지만, 결국 시큐리티를 사용해야 한다는 사실을 알았고, 이를 계기로 스프링 시큐리티에 대해서 공부해보려고 한다.
4주간의 생각보다 많이 짧았던 스터디가 끝나서 아쉬운 기분이 든다.
백엔드 개발의 전반적인 사이클을 경험하면서 많은 것을 배울 수 있었고, 멘토님들의 친절한 설명을 통해서 내가 가지고 있던 고민들을 해소할 수 있는 좋은 시간이었다.
앞으로 어떻게 공부할지 방향도 잡혔으니 마음 놓고 달릴 수 있을 것 같다!