본문 바로가기

한화시스템 Beyond SW Camp/회고19

한화시스템 Beyond SW Camp 12기_19주차 회고 (2025.03.31~2025.04.04) 한화시스템 Beyond SW Camp 12기 19주차가 끝났다.이번 주는 최종 프로젝트를 체계적으로 수행하기 위해 요구사항 정의서, ERD, WBS, 화면설계서등을 작성하고 프론트 개발도 들어가기 시작했다. 우리 조의 프로젝트 주제가 ‘영업 관리 시스템’이다 보니 실제 영업 관리에 얼마나 도움이 될 수 있을지를 고민하면서 기능들이 점점 많아졌다. 점점 기능이 많이 늘어나다보니 멘토링 진행 도중에 이걸 당장 중간 발표때 발표를 할 수 있을 만큼의 프론트 개발이 완료되어있을지 4월말까지 백엔드 개발을 완료 후 배포까지 이뤄질 수 있을지 의문이였다. 그래서 과감하게 기존에 다른 곳에서 이미 운영중인 서비스와 매우 흡사한 부분의 화면을 많이 줄이고 우리 조의 색깔을 나타내는 부분에 더 집중하기로 했다. 처음부터.. 2025. 4. 7.
한화시스템 Beyond SW Camp 12기_18주차 회고 (2025.03.24~2025.03.28) 한화시스템 Beyond SW Camp 12기 18주차가 끝났다.이번 주는 데브옵스 프로젝트를 끝내고 최종 프로젝트에 들어가게 되었다. 최종 프로젝트는 4인 1조로 우리 조는 영업 관리 프로젝트를 맡게 되었다. 조 구성은 내가 내가 친하지 않은 사람들과 조가 될 줄 알았는데 다 친한 사람들로만 구성이 됐다. 아직 안친한 사람들과도 같은 조를 하며 친해져보고 싶기도 했는데 오히려 친한 사람들과 되니 의견도 더 편하게 내고 모르는 내용을 편하게 물어볼 수 있어서 괜찮은 거 같다. 목요일, 금요일에 멘토님과도 2번 만났는데 되게 활발하셔서 좋았다. 멘토님 피드백으로 프로젝트 내용을 살짝 바꾸긴 했는데 그 덕분에 우리가 하려는 프로젝트의 색깔이 이전보다 더 드러나는 것 같다. 프로젝트 일정 관리를 위해 WBS도 .. 2025. 3. 31.
한화시스템 Beyond SW Camp 12기_17주차 회고 (2025.03.17~2025.03.21) 한화시스템 Beyond SW Camp 12기 17주차가 끝났다.이번 주는 Jenkins와 CircleCI에 대해 배웠다. Jenkins를 써서 build, push, 배포까지 무중단 배포로 되는게 너무 신기했었다. 몇 개의 설정과 스크립트만으로 자동으로 빌드와 배포가 진행된다는 점이 인상적이었다. 특히 Blue-Green 배포 방식과 Canary 배포 방식에 대해 배웠는데 내가 직접 무중단 배포를 할 수 있다는 사실이 신기했다. CircleCI는 설정이 비교적 간단하고 GitHub과의 연동도 편리하다는 점이 있었지만 직접 스크립트를 작성하거나 .circleci/config.yml 파일을 수정하는 과정이 쉽지만은 않았다. 다음주면 진행할 데브옵스 프로젝트에서 CI/CD 파이프라인을 직접 구축해야하는데 배포.. 2025. 3. 24.
한화시스템 Beyond SW Camp 12기_16주차 회고 (2025.03.10~2025.03.14) 한화시스템 Beyond SW Camp 12기 16주차가 끝났다.이번 주는 Docker와 Kubernetes에 대해서 배웠다. Docker 수업은 그렇게 어렵다고 생각하지는 않았다. 오히려 기존에 계속 가상 컴퓨터를 만들어서 ip 할당하고 이런 부분이 귀찮고 시간도 많이 걸렸는데 Docker라는 것을 쓰니까 여러 대의 서버도 금방 구성을 할 수 있고 만약에 docker-compose.yml 파일을 공유하면 개발 환경이든 배포 환경이든 동일한 설정을 빠르게 적용할 수 있어서 협업할 때 유용할 것이라 생각했다. 특히, 가상 컴퓨터에 백엔드나 프론트엔드 서버를 배포할 때 변경사항이 있으면 매번 jar 파일 같은 거를 다시 서버에 올려야 변경사항이 적용됐는데 IntelliJ에서 도커를 사용할 때 설정만으로 그런 .. 2025. 3. 17.
한화시스템 Beyond SW Camp 12기_15주차 회고 (2025.03.04~2025.03.07) 한화시스템 Beyond SW Camp 12기 15주차가 끝났다.이번 주는 MSA 수업이 끝남과 동시에 백엔드 프로젝트를 진행하였다. 백엔드 프로젝트에서 신경쓸 게 한 두가지가 아니였었다. 데이터베이스 프로젝트 이후로는 구성해놨던 테이블 구조를 따로 바꾼적이 없었는데 백엔드 프로젝트를 하다보니 데이터베이스 테이블 구조가 효율적이지 않다고 생각도 들었다. 그리고 프로젝트를 하다가 가장 중요하다고 느낀 것은 여러 사람이 같이 개발을 하다 보면 각자 맡은 부분에 대한 이해도가 다를 수 있기 때문에 API 명세서를 명확하고 체계적으로 작성하는 것이 정말 중요하다고 느꼈다. 특히, API의 요청과 응답 형식, 파라미터 값, 예외 처리 등을 자세히 설명하는 것이 중요하다고 생각이 들었다. 막상 프로젝트가 마무리 되어.. 2025. 3. 10.
한화시스템 Beyond SW Camp 12기_14주차 회고 (2025.02.24~2025.02.28) 한화시스템 Beyond SW Camp 12기 14주차가 끝났다.이번 주는 Sping Boot 수업이 끝났고 MSA에 대해서도 배웠다. Spring Boot 수업에서는 중요한 개념 중 하나인 동시성 제어와 N+1 문제 해결 방법을 배우면서 이를 실제 프로젝트에도 적용해보았다. N+1 문제를 해결하는 과정에서 단순히 fetch join이나 EntityGraph 등을 활용하는 것만이 아니라 연관 관계의 주인이 아닌 테이블에서 쿼리를 실행할 경우 예상과 달리 연관된 테이블들이 즉시 로딩 방식으로 동작하는 것을 발견했다. 처음에는 하나의 쿼리만 실행될 것이라고 생각했는데 실제로는 추가적인 쿼리들이 자동으로 실행되는 것을 확인할 수 있었다. 이 문제를 해결하기 위해 엔티티를 지연 로딩으로 실행하라고 명시적으로 애노.. 2025. 3. 3.