이제 나는 매일 회고를 작성하는 것이 아닌 한주의 회고를 작성하기로 결정했다. 주간 어떤 고민과 생각을 작성하는 것보다는, 기술적인 내용을 작성하는 것이 좋겠다고 생각을 했다. 왜냐하면 기술블로그를 목표로 하는 블로그가 점점 개발 일기 중심의 블로그가 되어가고 있었기 때문이다. 그리고 TIL은 다른 사람들에게 도움이 되는 글이 되지 못한다는 생각이 들었다.
하지만 스스로 하는 회고를 그만두고 싶지는 않았다. 회고를 글로 작성하면서, 보다 내 생각을 정리 할 수 있었고, 다른사람은 몰라도 내가 다시보면 재밌었다.(나 왜이런고민한거냐? 바본가.. 하는 그런 재미..) 그래서 나는 생각을 기존의 회고는 WIL 을 통해 정리하고, 주중에는 공부한 내용이 정리가 완료되면 해당 내용을 포스팅하기로 정하였다.
그리하여 이번 11월 1주차의 주요 이슈들은 다음과 같았다.
- 기술면접(?)와 같은 커피챗
- Payment 도메인 개발 시작
- 환경에 따른 Application.yml 분리 및 각 환경 세팅 설정
- 클라우드 아키텍처 및 클라우드 배포 공부를 위한 강의 구매
기술면접(?)와 같은 커피챗
이번주 중 가장 핵심은 기술면접과 같은 커피챗을 이야기 할 수 있을 것 같다. 사실 기술면접보다는 개발관련된 이야기를 다른 개발자와 할 수 있던 자리였다. 내 질문을 위주로한 이야기들이었지만, 관심 있는 기업에서의 고민과 이슈에 대한 이야기는 흥미로웠다. 특히 스타트업에서의 개발에 대한 궁금증은 많았기에(물론 이곳이 정답은 아니겠지만 말이다.) 아주 재밌었고 시간도 순식간에 흘러간 자리였다.
하지만, 이번 시간동안 더 많은 이야기를 해보지 못한 것이 너무 아쉽다. 다른 질문들을 많이 준비해갔는데 관련된 질문들을 다 하지 못해 아쉽고, 또 내게 질문리스트를 만들어주신 것에 대해서 이야기를 못나눠본 것이 아쉽다.
그래도 나중에 더 이야기해보자 이야기해주셔서 아쉬움을 뒤로한 채, 다음을 기약하게 되었다.(다음이 있을까...?)
Payment 도메인 개발 시작
Feature/payment domain by KEEMSY · Pull Request #59 · KEEMSY/shoes-ordering-system
작업 내용 Payment-Domain-Core 계층 개발 주요 기능 Payment 도매인 내 필요한 Entity, Event, Value Object, Exception 및 DomainService 를 추가했습니다. Entities: Payment(AggregateRoot), CreditEntry, CreditHistory Value Objects...
github.com
드디어(?) Payment 도메인을 개발하기 시작했다. 관련해서 고민을 하는 것에 대한 두려움 + 면접 준비 때문에 이제서야 Payment 를 이제서야 시작했다. 근데 고민과는 다르게 생각보다 순조롭게 진행중이다.
현재 작업이 완료된 것은 Domain 계층의 Core 계층을 완료하였고, 현재는 Application 계층을 구현하고 있다. 아마도 다음주 개발에 집중한다면 Domain 계층을 완료하고, DataAccess(영속성계층) 개발도 완료할 수 있을 듯하다. 가능하다면 최대한 빨리 이를 완료하고서 전체 흐름을 나타내는 것을 보이도록 해야겠다.
최근 다른 강의플랫폼에서 결제도메인과 관련된 강의 홍보 알고리즘이 많이 보이는데 돈만 있다면 다 사서 공부해보고싶다. 해당 내용이 실무에 적용이 될 수도 아닐수도 있지만, 다양한 내용을 접해보고 싶다는 욕구가 큰 것 같다.
환경에 따른 Application.yml 분리 및 각 환경 세팅 설정
application.yml 을 프로필로 나누어 관리한다. · Issue #57 · KEEMSY/shoes-ordering-system
설명 개발환경을 구분지어 실행 될 수 있도록 application.yml 설정을 분리한다. local, container 환경으로 구분 짓는다. container 환경의 경우, 정상 작동 확인을 위해 docker-compose 에 사용되는 yml 을 수정
github.com
Infra/57 manage application yml profiles(application.yml 을 프로필로 나누어 관리한다. #57) by KEEMSY · Pull Request
작업내용 application 실행 환경 별 다른 설정 지정 다른 설정값이 필요한 개발환경 Local, Container 환경에 대하여 다른 설정 값을 지정하도록 설정했습니다. 관련 issue: #57 주요 기능 application.yml 내 pro
github.com
Payment 를 작업하기 이전에 작업이었던 application.yml 을 분리하는 작업을 진행했다. 해당 작업의 필요성은 개발 환경에 따라 다른 환경 설정 값을 필요로 하는 개발 특성상 반드시 필요했다.
하지만, 나는 로컬에서만 개발을 진행했기 때문에 이 작업의 우선순위는 높지 않았다. Docker Container 를 활용하여 로컬에서 개발하는 환경을 구축함으로써, 로컬에서 가동 가능한 환경을 세팅하는 것만 해둔 상태였다. 이러던 와중 면접과 다른 개발자분들과 이야기를 할 수 있는 자리에서 다들 실제 배포를 해보았는가? 라는 이야기를 많이 하신 것을 보아, 내가 비록 비용으로 인한 부담때문에 배포를 못했지만, 실제 배포를 할 수 있다는 것을 증명할 필요가 있겠구나 생각을 하게 되었다.
그리하여, 로컬에서 개발하는 환경(local)과 실제 배포를 한다면 이뤄질 환경(container) 를 구분짓는 작업을 우선적으로 진행했다. 해당 작업은 크게 어렵지 않았는데, 내 실수(오타)로 인한 문제 및 기존에는 문제없던 부분에서 갑자기(?) 발생한 문제를 해결하는 것이 어려웠다.
그리고 모든 테스트를 검증하는 일은, 실제 컨테이너 환경을 구동해야 알 수 있었으므로, 설정 값이 변경되고, 실제 테스트를 진행하는데 많은 시간이 사용되었던 것이 약간(?) 어려웠던 것 같다.
근데 정말 오타로인한 설정 값이 나눠지지 않던문제는 다시생각하도 허무하다. 도저히 원인을 알 수 없을 땐, 다른 내용을 참고하기보다는 내가 작성한 코드를 차분하게 쭉 읽어볼 필요가 있는 듯하다.
클라우드 아키텍처 및 클라우드 배포 공부를 위한 강의 구매
원래는 강의보다는 책을 구매하려고 했었다. 책을 구매하기 전에 혹시 관련된 강의는 없을까? 하는 마음에 유데미에 들어가보니, 관련된 강의를 찾을 수 있었고, 무엇보다 가격이 12,000원으로 책의 가격(29,000)보다 훨씬 저렴했다. 그래서 원래 관심있던 소프트웨어 아키텍처 패턴에 관한 내용과 추가적으로 근래에 컨테이너 관리를 위해 k8s에 관심이 많이 생겼는데, 관련된 강의를 함께 구매해보았다.
아직 강의를 모두 보지는 못했지만, 평소 궁금했던 내용들에 대해서 간단하게 다루고 있어서, 해당 주제에 대한 입문으로는 좋은 자료가 될 듯 하다. 이번 공부를 계기로 좀 더 소프트웨어 아키텍처에 대한 이해와 이를 잘 반영하기 위한 기술을 공부하는 기회가 되었으면 한다.
이제 다가오는 11월 2주차에는 원티드에서 진행하는 백엔드 프리온보딩 프로그램이 시작된다. 주제는 시스템 디자인: 신입(주니어)개발자를 위한 백엔드 아키텍처 설계 이다. 내가 관심있는 아키텍처에 대한 이야기를 다루면서, 취업에 대한 지원을 받을 수 있다하여 지원하게 되었다. 이 과정을 잘 마무리하고서 다음 단계로 한걸을 더 나아갈 수 있도록 최선을 다할 계획이다.
이 뿐만아니라, 어서 Payment 도메인을 마무리하고, 계속된 기술면접 준비와 독서와 강의를 통해 현재에 머무르지 않고 꾸준하게 한걸음 한걸을 성장해 나갈 수 있도록 노력해야겠다.
'회고 > WIL' 카테고리의 다른 글
[ WIL ] 12-1 (0) | 2023.12.01 |
---|---|
[ WIL ]11월 2주차 회고 (0) | 2023.11.10 |
WIL 10-3~4 소스코드 분석, 수습평가 API 작성 (0) | 2022.10.22 |
WIL 10-2 DB 스키마 분석, 소스코드 작성 준비, Django ORM (0) | 2022.10.09 |
WIL 10-1 리눅스 공부, CS 공부, 정보처리 기사 공부, DB 스키마 분석 (0) | 2022.10.03 |