상세 컨텐츠

본문 제목

2021년 회고

Log.Develop/Retrospection

by bluayer 2021. 12. 30. 22:45

본문

서론

먼저 2021년을 돌아보기 전에, 2020년 회고를 다시 여러 번 읽어봤습니다.

읽다보니 2020년보다 2021년에 훨씬 다양한 경험을 하고 더 성장한 것 같아 뿌듯한 마음이 들었습니다.

물론 모든 새해 계획이 그렇듯, 계획되어 있던 부분들과는 다르게 진행된 것들도 있습니다.

2022년을 돌아봤을 때 "2021년보다 나아졌군!"이라고 생각할 수 있도록 2021년 회고를 적어보고자 합니다.

 


 

복무 시작

첫 프로젝트부터 지금까지

물론 2020년 12월 말부터 지금 회사에서 산업기능요원으로 복무를 시작하게 되었지만,

본격적인 업무는 올해부터 하게 되었습니다.

처음에는 기존 프로젝트에 참여하여 유지보수하는 작업을 담당하게 되었고

5월에 훈련소를 갔다오고 나서 기존 프로젝트를 새롭게 리팩토링하는 작업을 진행하게 되었습니다.

"데이터를 굉장히 많이 다루는 시스템에 참여하고 싶다."라는 생각으로 지금 회사에 오게 되었는데

진행했던 프로젝트가 흥미롭다고 하긴 어려운 주제였지만 지금 생각해보니 어쩌다보니 제 목표를 이루게 되었네요 :)

 

데이터를 수집, 추출, 정제하고 적재하는 일종의 ETL 파이프라인을 만드는 프로젝트였는데

하루에 150만건이 넘는 요청을 처리를 할 수 있는 처리량에 대한 고민이나,

약 800개 이상의 컨테이너가 작동하는 시스템을 설계하는 과정도 흥미로웠습니다.

그리고 서비스가 클수록 복잡성에 대한 설계가 정교하지 않다면 문제가 동시 다발적으로 일어날 수 있다는 점도 깨달을 수 있었습니다.

생각보다 개발 환경에서 발견되지 않은 문제이지만 운영 환경에서만 발생하는 문제가 많았고,

이런 문제를 만날 때마다 해결하는 과정이 고통스러웠습니다.

포스트모르템을 통해서 같은 문제가 발생하지 않도록 대응하는 것을 최우선으로 두었지만 더 좋은 방법이 없나 고민하게 되었습니다.

 

개인적으로는 아예 복잡성을 제거하는 방향으로 설계하고 정 어쩔 수 없을 때에만 복잡성을 다루는 게 맞다는 생각을 가지게 되었습니다.

(진심으로 전 세계의 MSA 설계자, 운영자 분들을 존경하게 되었습니다..)

Fancy한 방법은 "Always" 좋은 해결책이 될 수 없고, 상황에 따라 방법을 잘 선택할 줄 아는 것도 능력이라는 걸 알 수 있었습니다.

 

수습기간을 제외하고 거의 9~10개월에 가까운 기간동안 첫 프로젝트에 매달리게 되었는데,

첫 시작에는 고통스러웠지만 꽤 만족스러운 결과물과 함께 해당 프로젝트를 마칠 수 있었습니다.

안정화 작업이 끝나고 나서 현재는 개인화된 콘텐츠를 자동으로 만들어 마케팅을 할 수 있는 프로젝트에 참여하고 있습니다.

개인적으로 굉장히 흥미로운 주제라고 생각하고 있고, 지금 진행하고 있는 프로젝트가 끝날 때쯤 복무가 끝날 것 같습니다.

 

귀여운 캐릭터들

 

Node 그리고 Spring

제 주변 분들은 모두 알고 있겠지만 이제까지 대부분의 프로젝트를 Node.js + TypeScript로 진행해왔습니다.

하지만 회사에서 프로젝트를 진행하면서 Performance Tuning이 필요한 경험을 꽤 많이 하게 되었고,

특히 좀 큰 사이즈의 데이터를 다루기 시작하면 폭발하기 시작하는 오류를 감당하기 어려웠습니다.. 🥲

(무거운 작업이 오면 성능이 팍 떨어져버리는.. 슬픈 상황을 마주했습니다...)

이런 경험 외에도 대부분을 분산 서비스로 만들기 시작하면서 여러 클라우드 관련 라이브러리들이 필요하게 되었습니다.

그래서 "괜찮은 방법이 없나?" 싶어서 찾아보기 시작했던 게 Spring, 그리고 Spring Boot였습니다.

 

많은 분들이 Spring이 꼭 최선은 아니다. Java가 정말 해답은 아니다. 등등 다양한 이야기를 해주셨는데,

개인적으로는 제가 Node를 작업하면서 고민했던 의존성 관리, IoC라던지

여러 이슈들을 간편한 설정으로 해결하고 있는 점이 인상 깊었습니다.

(물론 Nest.js도 이런 부분을 잘 해주고 있지만, 많은 노하우 바탕인 Spring Boot는 진입 장벽이 정말 낮다는 생각이 들었습니다.)

 

당연히 자연스럽게 작년에 이어 올해는 더 깊게 Spring과 Spring Boot를 공부하게 되었습니다.

현재 회사에서 진행하고 있는 프로젝트도 Spring Boot, Spring Webflux로 진행되고 있는데요,

개인적으로 시간을 들여서 공부하고 있던 내용들을 현업에서 사용해볼 수 있다는 점이 굉장히 만족스럽습니다.

프로젝트를 진행하면서 log4j로 인한 보안 이슈를 제외하고는 아직 크게 불만족스러운 부분을 발견하지 못했습니다.
(사실 이 보안 이슈가 굉장히 크리티컬하긴 합니다만.. 크흠)

올해는 현업에서 Spring Cloud도 이용하여 개발 및 운영을 해보면서 더 다양한 경험을 쌓는 것이 목표입니다.

 

크흠...

 

Side Projects

열심히 작업해서 런칭 후 지금까지 운영을 무려 9개월 정도 하고 있는 프로젝트도 있고,

아직까지 작업을 하고 있는 프로젝트도, 런칭은 했지만 운영은 하지 못한 프로젝트도 있습니다.

올 해 진행했던 사이드 프로젝트들은 제 Playground였다고 말할 수 있습니다.

올해 모든 사이드 프로젝트는 Spring Boot 혹은 Spring Webflux로 진행되었고 Kotlin을 이용한 프로젝트도 있었습니다.

 

영향이 적은 사이드 프로젝트에서 시도해보고 싶은 기술을 시도해보고 경험을 쌓은 다음,

장단점을 파악해서 다시 현업으로 들고 가는 그런 사이클의 반복이었습니다.

말 그대로 놀이터처럼 잘 즐기고 배울 수 있는 좋은 환경을 제공해줬습니다.

 

또한 리드나 매니저 역할을 해볼 수 있는 좋은 기회이기도 했습니다.

여태까지 살아오면서 팀플을 하거나 프로젝트 진행을 하면서 이런 능력들이 부족하다고 느낀 적이 없었는데,

정말 극심하게 능력의 부재를 느낄 수 있었습니다.

열심히 커뮤니케이션하려는 노력을 기울였음에도 불구하고, 예상치 못한 상황이 너무 많았습니다.

정말 슬펐습니다... 😥

 

덕분에 스스로 많이 부족하다는 걸 느낄 수 있었고 개인적으로 공부도 많이 했습니다.

물론 공부를 한다고 해서 10%라도 나아지지는 않았지만...

리드나 매니저 분들의 고충을 10분의 1이라도 이해할 수 있었고, 더 열심히 커뮤니케이션해야 겠다고 생각했습니다.

사랑합니다 리드님들, PM님들 ♥️

 

현재까지 작업하고 있는 사이드 프로젝트, 쿠키파킹 😉

 


 

일 이야기는 이제 그만.

운동

운동을 정말 열심히 하기 시작했습니다.

등산, 스쿼시를 거쳐 8월부터 클라이밍을 시작했는데 아주 푹 빠져서 살고 있습니다.

(저번 주 목요일부터 오늘까지 클라이밍만 3~4번 갈 정도니...)

그 외에도 클라이밍을 잘 하기 위해서 PT도 시작했습니다.

건강한 개발자가 되기 위해 한 걸음, 한 걸음 나아가고 있습니다 :)

 

무릎을 꿇은 개발자 클라이머 😂

 

독서

개발을 진심으로 하기 전까지만 해도 꽤 독서를 좋아했었는데

어느 순간부터 개발 서적이 아니면 책 취급도 안 하고 있는 제 자신을 발견하게 되었습니다.

그래서 책을 읽기 시작했는데, 인상 깊었던 책들은 다음과 같습니다.

  • 베니스에서의 죽음, 토마스 만
  • 수레바퀴 아래서, 헤르만 헤세
  • 싯다르타, 헤르만 헤세
  • 노인과 바다, 헤밍웨이
  • 소년이 온다, 한강
  • 월든, 헨리 데이빗 소로우
  • 시민의 불복종, 헨리 데이빗 소로우
  • 인간실격, 다자이 오사무

원래 작가에 빠지면 그 작가 책을 냅다 읽는 편이라 인상깊은 책도 같은 작가인 경우가 많습니다.

이외에도 꽤 많은 책들을 읽었지만 적기 귀찮으니 생략...!

 

스터디와 동아리

스터디는 Kubernetes in Action을 다 읽은 게 제일 인상 깊었고,

동아리 활동에서는 다른 무엇보다 사람을 얻어간 게 큰 소득이 아닐까 싶습니다.

정말 좋은 사람들을 많이 만났고, 꽤 오랜 시간 좋은 동료로 함께 할 사람들을 만나서 기뻤습니다.

 


 

블로그에 관해서

블로그 포스팅 횟수가 하반기에 꽤 줄었는데 그 이유는 꽤 많은 개발자 분들과 이런 대화를 하게 되었기 때문입니다.

 

Q. ㅇㅇ 님, 블로그 왜 안 하세요?

A. 저는 한국 블로그 글은 보통 잘 안 읽는데요, 원인은 설명 안 해주고 결과 혹은 해결책만 이야기해주는 경우가 많아요.

글을 쓴 분들도 원인을 크게 신경쓰시지 않는 경우가 많고, 잘못된 정보를 전달하는 경우도 꽤 있었어요.

혹시나 제 글이 널리 알려졌는데 잘못된 정보를 전파했다면 다른 분들한테 죄송할 것 같아요.

 

스스로 쓴 글들을 돌아보면서 잘못된 정보를 전달한 부분은 없었나 싶어지기도 했고,

가치있는 글을 썼는지, 책임감을 가지고 썼는지에 대한 고민을 하게 되었습니다.

그 결과 조금 더 신중하게 글을 써야겠다는 생각을 하게 되었습니다.

 

앞으로는 더 신중하고 책임감 있는 모습으로, 잘못된 정보를 전달하지 않도록 글을 쓸 예정입니다.

 


 

2022년에는,

(무탈하게) 소집 해제

큰일 없이 지금 하고 있는 회사 프로젝트를 즐기면서 소집해제를 하는 것이 목표입니다.

올해처럼 회사일을 통해 성장할 수 있었으면 좋겠습니다.

소집 해제까지 11개월... 가즈아!!

 

영어 공부

영어 공부를 하고 싶다는 마음이 굴뚝같이 커졌습니다.

특히 영어 회화 쪽을 좀 더 하고 싶어서 Ringle 같은 서비스를 알아보고 있습니다.

시간이 좀 더 흐르면 해외에 직접 가서 일하고 싶은 마음이 있기 때문에 영어 공부를 시작할 예정입니다.

 

운동 계속 하기

건강한 개발자 되기는 아직 끝나지 않았습니다.

Keep Going!

관련글 더보기

댓글 영역