2022 맞이 2021 회고

12월 즈음 부터 여기저기서 다른 개발자 분들의 회고를 보았다.

다른 분들의 글들을 보면서 과연 나는 2021년에 무엇을 했는가를 생각하게 되었고..

생각만 하다가 나도 글로 남기면 좋을 것 같아 이렇게 글을 작성하게 되었다.

회고를 글로 쓰면 좋을 것 같았던 것 ^^..

  • 자기반성
  • 자아비판
  • 내가 왜그랬을까 후회

첫 회고를 쓰니 간단히 이력을 작성해보자면,

2020년 2월 1일에 현재 회사에 입사했고,

2022년 현재 2년이 1개월 남은,1년 11개월차 백엔드개발자 이다.

입사해서 2개의 프로젝트를 진행하였는데, 하나는 작년에 끝났고 남은 하나는 현재 진행형이다.

과분하게도 좋은 팀장님과 좋은 팀원분들을 만나 꽃밭에서 개발을 경험하고 있다 ^__^

2021년에 나는 무엇을 했는가?

무엇을 ‘했다’ 라고 생각하면 많은데.. 끝낸건 없는 것 같다..

그래도 ‘한 것’에 대해 칭찬과 후회와 반성을 해보자면..

구독 서비스 사이드 프로젝트

친구와 2021년 5월쯔음 부터 시작한 사이드 프로젝트를 그래도 프로토(?), 기본 구조까지는 개발 하였다.

처음에는 호기롭게 도전했지만 점점 손을 놓게 되었다. 찬찬히 왜 손을 놓게 되었는지 생각해 보았는데..

프론트가 정말 재미 없었다.

Next.js와 TypeScript를 사용하여 프론트를 개발했었는데, 생각했던 것 보다 손이 너무 많이 갔다.

만들어야할 기능은 많고.. 막상 만들면 규모가 커지게 되고… 어영부영 하다보니 시간에 맞춰 필요 기능만 개발하게 되고, 디자인 제대로 못하고.. 이게 반복되다보니 뭔가 질리는(?) 느낌이 들었다.

사실 원래 어떤 일을 하면 빠르게 질리긴 한다… 이런점도 고쳐야지..

무튼, 개발을 하면서 즐거웠으면 좋겠는데 프론트를 개발하다 보면 하나도 즐겁지가 않았다. 그래서 1차 질림.

백엔드는 사실 공부하면서 이것저것 도입해 보고 싶은게 많았지만 이것도 제대로 못했던 것 같다.

그냥 빠르게 api만 만들어서 프론트 개발하는 느낌..? 그래서 2차 질림..

이런 상황이다보니 프로젝트에 대한 애정도도 떨어지게 되고.. 친구에게 미안하지만 22년 1월 2일에 친구에게 그만 두겠다는 말을 전했다. 진짜 미안했다…..

잘한 점 : 일단 프로젝트를 시작한 것

못한 점: 시작만 하고 작심삼일 끝마무리를 못한 점. 그리고 잘한 점을 뺀 모든 것..

개인 공부

회사에서 인프런과 패스트 캠프 강의를 구매해 주었지만, 제대로 완강한건 김영한님의 HTTP 강의밖에 없다..

나머지는 듣다 말다…..

책도 소오올직히 2021년엔 토비의 스프링 1권 완독을 목표로 했었지만.. 이것도……

다른책도 1/10 수준밖에 읽지 않았다… (그냥 안읽었단 소리)

그래도 한게 있다면, 회사 프로젝트를 진행할 때 사용했던 기능을 나름대로 github에 정리했다는 것이다! (칭찬 +1)

초기에는 블로그에 글을 조금씩 쓰기도 했었지만 블로그는 뭔가 부담스러웠다.

나름대로 github에 md 파일로 정리하여 올려보았는데, 생각보다 괜찮은 것 같아, 따로 또 뭔가 일을 벌리지 않는이상 계속 git에만 글을 남길 예정이다!

이 회고도 물론 git에!

회사 업무

2021년은 정말 다양한 경험을 했던 한 해였다.

물론, 입사한지 1년 갓 넘긴 개발자는 무엇을 하든 경험이었겠지만..

1. 멀티모듈

사실, 멀티모듈은 내가 했다기 보다는 팀장님이 다 해놓으신걸 보고 아 이런식이구나, 보는것에 만족했다.

그리고 다시 멀티모듈에 관한 우형 세미나를 보며 우리 프로젝트에서 좋았던 점과 아쉬웠던 점을 생각해 보았었다.

좋았던 점은, 의료데이터 + 환자데이터 + 기타 등등등 멀티모듈로 구성이 되어있어 도메인별로 구분이 확실하게 가서 개발하기 편했다.

확실히 전에는 하나의 패키지에 모든 도메인이 집약되어있어 필요한 파일 찾는데 한세월이 걸렸었는데,

지금은 필요한 모듈만 열면 되니 깔끔했다 (알잘딱깔센!) 또한, 공통모듈을 빼서 전체 모듈에 사용했던 것이 좋았다.

매번 모듈마다 새로 만들 필요 없이 의존성을 추가하여 사용하고, 만약 다른 프로젝트를 진행하더라도 그대로 복붙해오면.. 너무 편할것 같다 ^^

아쉬웠던 점은, 초기에는 멀티모듈에 대한 생각이나 인식이 없어 막개발을 했었고 (나만), 그걸 리팩토링 하지 않았다는 점이다(이것도 나만..)

중간중간에 공통적인 기능들(ex 리스트나 테이블 Response들)은 어찌저찌 리팩토링 했지만… 대부분의 코드는 그대로인 것이 보였다.

연말에 문서작업을 하면서 지금까지 짰던 코드들을 보게 되었는데.. 정말 다른 팀원분들 보기 창피해 죽는줄 알았다..^^..

하나더 생각해 보자면 다음 프로젝트에서는 도메인 모듈과 api 모듈을 나눠 개발해 보면 좋겠다는 생각을 조금 해봤다.

개발을 하면서 항상 서비스에 대해 고민을 많이 했었는데, 서비스를 좀더 명확하고 확실한 구분으로 나누면 좋을 것 같다는 생각..?

마지막 genomic 부분을 개발 할 때에는 나름 내가 생각한대로 나눠서 개발을 해봤는데, 확실히 도메인 모듈과 api 모듈, 분석 모듈이 나눠 있었다면 좀더 명확한 멀티 모듈 서비스가 되었지 않았을까 생각을 해보았다.

이거에 대한 단점은 서비스 클래스들이 많아지고.. 뭐.. 등등 이런 저런 문제들이 생기지만.. 일단은 다음프로젝트를 위해 MSA와 멀티모듈을 공부해야겠다.

2. bulk insert

사실이건 2020년 12월에 했던 부분이지만, 삭제는 2021년에 했으므로..

VEP 툴을 이용해 유전 데이터 분석을 돌리고 결과를 저장하는 부분을 맡았었다. 이 과정에 대한 것도 따로 git에 정리해 올려놓긴 했다!

인간의 유전 데이터 3만줄을 분석하여 20개 정도의 테이블에 나눠서 저장을 하였는데, 어우 90명 돌릴때마다 몇시간씩 걸리니 정말 죽을 맛이었고..

거의 2020년 12월 한달 내내 VEP와 싸웠던 것 같다.

그러다가 JdbcTemplate의 batchUpdate를 사용하여 시간을 획기적으로 줄일 수 있었던..! 감격스런..! 그런 일이 있었다.

그리고 삭제했다…

테이블도 삭제.. 도메인도 삭제.. repository, service 다 삭제삭제… 정말 마음이 아픈.. 좋은 경험만 남은 추억…

함께해서 더러웠고 다신 보지 말자 VEP…

3. webFlux

사실 webFlux가 아니라 webClient를 사용하기 위해 webFlux 의존성을 추가한 것이었는데, 진짜 좋은 경험인 것 같다.

사실 어떤 프로젝트에 reactive가 적합한지 잘 모르겠고, 아직은 공부할 마음이 없어.. 아직은(!!) 자세히 공부하지 않을 거지만..

최근 webFlux를 이용한 reactive 프로젝트를 사용하는 기업들이 많아진다고 하니, 맛보기나마 공부할 수 있어서 정말 좋았다.

4. ELK

올해 가장 애착(?)을 갖고 봤던 것이라면, ELK이다!

인간의 유전자는 왜이렇게 많고 복잡한 것일까.. DB에서 데이터를 가져오는데 너무 오래 걸려 ELK를 도입하게 되었다.

결과적으로 시간도 많이 단축되고, 나도 공부할 수 있어서 좋았다.

아쉬웠던 점은 es의 마스터 노드의 최소 사양은 3개라고 하는데, 서버 1대로 운영하였던 부분…? 만약 3개로 마스터 노드를 꾸린다면

얼마나 더 빨라질까!….. 여러모로 ELK로 해보고 싶은게 많아졌다!!!

5. 서버 만져보기

올해 개발 베타 서버와 클라우드 서버에 nginx, was, db, jenkins 등등등 구축을 경험해 보았다.

역시 서버는 너무 무섭다. 명령어 하나 칠때마다 손에 땀이 주륵주륵 나고…. 심지어 회고를 쓰는 오늘 회사에 큰 사고를 쳤다…..

회사에서 사용하는 데이터들을 다 날릴 뻔 했다…… 진짜.. 눈물날뻔.. … 팀장님 진짜 죄송하고 감사합니다…

서버를 만질때는 항상 정신 똑바로 차리고!!!!! 눈 크게 뜨고!!!!! 앞으로는 사고 치지 말아야지..

무튼.. 서버를 만져보면서 어떤 방식으로 배포가 되고, 어떻게 알림이 오는지 그런 경험을 할 수 있어 귀중한 기회였다.

다음에 혹시 기회가 된다면 좀더 좋은 방향으로 스크립트나.. 이런 것을 구성해 보고싶다.

운동

3월인가? 부터 필라테스를 시작하였다. 그리고 7월부터 시작한 재택으로 거의 나가지 않았다 ㅎㅎㅎ..

올해는 주 2~3회 나가는 것을 목표료.. 3월까지 다이어트도 빡세게 해야지!

2022년는 이렇게 살아야겠다!

의지박약, 작심삼일은 내 고질병인거같다. 매년 새해마다 고쳐야지 고쳐야지 생각만 하는데….

올해는 진짜 고쳐야지! 내년 30살의 나에게 의지 개쩌는(^^) 29살의 한 해를 선물해 주고싶다.

1. 공부

공부는 할게 많지만.. 많이 하면 또 질려서 안하게 될거 같으니 목표는 딱 2개만 잡으려고한다.

  1. 3월까지 MSA, 멀티모듈, 클린코드 관련 강의 듣기 -> 적용하기
  2. 알고리즘 공부 꾸준히 하기

2. 업무

업무때 나만의 룰을 적용해보겠다고 다짐했다.

  1. Service 부분 코드 작성시 무조건 테스트 코드 작성!
  2. Controller, Service, Repository 항상 고민하고, Dto 도 고민하고 만들기 -> 관련 정리 문서 만들기

3. 운동

운동 꾸준히! 식단도 꾸준히!

다른거 다 안바라고, 이 세가지만 완벽하게 이루는 2022년이 되었으면 한다.

덧,

  • 항상 고민이 많은 1년이었던 것 같다.

    입사 후 첫 1년은 그래, 신입이니까 이정도로 만족해야지 이렇게 생각했었다면, 그 다음 해 2021년은 나는 어디까지 할 수 있을까? 가 계속 걸렸다.

    주어진 업무를 잘 소화하고, 팀원들과 잘 소통하며 지내는 것이 다가 아니라는 생각을 요즘 문득 하게되었다.

    다른 주니어 분들의 회고를 보면 진짜 능력있으신 분들은 벌써 파트리더도 하고, 다양한 개발도 해보며 실력을 쌓는데 나는 항상 제자리 걸음 같은 느낌..!

    이건 무엇보다 ‘나’의 문제가 크다. MBTI 핑계를 대자면… 나같은 ISFJ들은 정해진 틀에서 벗어나는 걸 싫어한다고 하는데, 내가 딱 그거다.

    그래서 뭔가 시도해보려 하지않고, 시키는 일 열심히 하고.. 딱 거기까지..?

    시키는 일을 넘어 +a를 해야 더 좋은 팀원이고, 더 좋은 개발자겠지..??

  • 모 팀원분이 지금 하고 있는 업무에서 자신이 내세울만한 부분을 하나 깊게 파는 것이 좋다고 하셨었다.

    그말이 계속 생각나, 나는 관연 어떤 부분을 깊게 파야 오래 살아남을 수 있나.. 이런 것도 생각해 보았다. 아무래도 JPA나 ELK가 흥미로운데..

    뭔가 머리가 복잡하니 1월에는 이런걸 충분히 고민하는 시간을 가져야겠다..!

  • 한번 쭉 회고를 해보니 1년단위는 좀 긴것 같다. 다들 그래서 분기별로 회고를 하나보다.. 나도 월별이든, 분기별이든 주기적인 회고를 도전해 봐야겠다.

이상 나만 읽는 2022년에 쓰는 2021년 회고 끝.

2022년 1월 3일

아무도 읽지 않는 것 같아 쓰자면… 팀장님 항상 진짜 너무 감사하고 또 감사합니다.. 우리 팀원분들도 너무 좋아여 짱짱!! 우리 팀원들 짱이다 첫 회사에서 이런게 좋은 팀장님과 팀원분들을 만나서 너무 좋다 진짜 맨날 일하는데 꽃밭이다 짱짱