코딩하는 오징어
2024년 회고록 본문
2024년도 언제 왔었냐는 듯이 지나갔다. 한 해를 마무리 할 때마다 조금씩 겁이 나는 것 같다. 다음 해에는 내가 더 잘 할 수 있을지, 커져가는 책임들을 내가 다 짊어 질 수 있을지.. 2024년은 AI 열풍의 시대였다. 엔비디아 주가가 연초대비 1000%가까이 올랐고, 많은 빅테크 기업들이 AI 연구 개발에 뛰어들었으며, 사람들은 AGI(Artificial General Intelligence), ASI(Artificial Super Intelligence) 용어들을 찾아보기 시작했다. gpt와 claude 제품들을 구독하는 사람들이 많아졌고, 구글링만 하던 시절이 저물어 간다는 말도 지인들과 농담 반, 진담 반으로 이야기했다. gpt가 많은 모범 답안을 제시해주고 있지만, 필자는 아직까지 100% 신뢰하지는 못하는 것 같다. gpt를 주요 검색엔진으로 사용하고 있지 않고 있고, gpt를 쓰더라도 해당 내용을 꼭 한번 더 검증하게 되는..
발 빠르게 바뀌던 소프트웨어 바닥도 조금은 숨을 돌리고 있는 건지, 필자가 소프트웨어를 시작 했을 때와는 사뭇 다른 템포로 발전하고 있다. (그게 아니라면 내가 트랜드에 뒤쳐진 것 일지도..) 여러 아키텍쳐가 쏟아져나오고, 여러 기술들이 기존 기술들을 대체하던 시절에는 쫓아가기 바빴다. 필자는 좋은 시기에 개발을 시작한 것 같다. 혼란스러운 에도시기에 모든 것을 경험한 것은 큰 자산이다. 캐시 저장소는 redis가 메인이 되었고, 메시징 큐 시스템도 고민도 없이 kafka를 채택하고 있다. 많은 서버 application들이 컨테이너 기반으로 실행되고 있고, 컨테이너 관리 도구로 쿠버네티스를 채택하고 있다. cloud provider의 도움을 받는다면 GKE나 EKS 제품을 이용하면 쿠버네티스 클러스터를 쉽게 운영해볼 수도 있다. 요즘은 새로운 제품보다는 기존 제품이 고도화되는 방향으로 흘러가고 있다는 생각이 든다.
[6년 6개월]
2018년 7월에 입사해서 일을 시작한지 어느덧 6년 6개월이라는 시간이 흘렀다. 꽤 오랜 시간 업계에서 백엔드 개발을 해왔고, 여러 시스템들을 다루어 보았다. 인복이 있었던 덕분에 좋은 분들을 많이 만났고, 그 분들 덕분에 남들보다 더 많은 경험들을 했다. 현재 다니는 회사에서는 면접관으로서 인터뷰를 하고 있는 아이러니한 상황까지 펼쳐졌다. 같이 취업 준비를 하던 형님들과 동생들도 어느 덧 시니어의 고민을 하고 있고, 기술 이야기가 주를 이루었던 자리들이 이제는 좋은 동료는 뭘까에대해 고민하며 좋은 조직에 대해 고민을 하고 있다. 사람들과 더 많은 커뮤니케이션이 필요한 직무를 맡게 되었고, 다양한 의견을 존중해야하지만 어떤 순간에는 강단있는 모습이 필요했다. 고민을 해보지 않았던 부분들을 고민할 때가 되니 뭔가 어설픈 해를 보낸 것 같다. 맡아야 할 책임이 점점 늘어가는 것이 재밌기도 하지만, 한편으로는 조금 두렵다.
[두 마리 토끼]
꽤 고집스럽고 고지식하게 살아왔던 터라 뭔가를 제대로 하려면 선택과 집중이 필요하다고 생각했다. 어떤 분야에서 무언가를 일구고 싶다면 내가 즐기는 무언가는 포기해야한다고 그게 정답이라고 생각했다. 한 가지에 집중하면 옆을 잘 보지 못하는 성격 탓에 나에게는 딱히 어려운 과정은 아니었다. 나의 강점이자 남들보다 좋은 재능이라고 생각한다. 하지만 신의 은총은 없듯이 이것이 만능이 아니라는 것을 알게 된 1년이었다. 선택과 집중이 필요한 시기가 있다는 것에는 여전히 같은 생각이다. 하지만 평생 선택과 집중을 따지며 살 수는 없다는 것과 두 마리 토끼를 잡는 것도 능력이고, 내가 넘어야할 산이라는 점을 체감했다. 새로 맞이하는 해에는 일도, 곁에 있는 사람도 챙길 수 있는 사람이 되고 싶다.
[앞으로 채워야 할 역량]
병렬로 실행되는 환경에서 처리해야하는 동시성 문제, 분산 시스템에서의 트랜잭션 처리, 비동기 메시징 시스템에서 필요한 순서 보장 및 failover, 로깅 시스템, alert 시스템, metric 수집 및 visualizing, 클린 코드, 데이터 모델링, DB 조회 성능을 위한 index 설계, 파티셔닝과 샤딩 등 모두 어려운 문제들이다. 이런 문제들은 소프트웨어 업계의 공유 문화 덕분에 참고할만한 좋은 자료들을 많이 봐왔고, 운이 좋게도 관련 경험들도 다양하게 해 볼 수 있었다. 아직 부족한 점이 많아 해당 내용들을 복기해야하지만, 이러한 내용들을 모두 아우르는 것이 시스템 디자인이라고 생각한다. 주니어 시절에는 코드 자체에 매달렸었다. 클린 코드, 객체지향 프로그래밍, TDD 등 코드를 작성하는 연습을 주로 했던 것 같다. 코드를 어떻게 작성하냐도 매우 중요하지만 사실 그건 디폴트이다. 코드를 잘 작성한다는 것은 엔터프라이즈 소프트웨어에서 작은 일부일 뿐이고, 시스템을 어떻게 디자인하냐에 따라 비즈니스의 확장성과 소프트웨어의 내구성이 달라진다고 생각된다. 사용자의 요청이 네트워크를 타고 어떤 흐름으로 application으로 인입되어 코드가 실행되는지, 해당 코드는 어떤 시스템들의 도움을 받아 결과를 도출하는지를 잘 설계해야한다. 앞으로는 이런 역량을 키우기 위해 발품을 팔아볼 예정이다.
여러모로 혼란스러운 연말이었다. 안좋은 사건들이 여럿 발생하여 많은 사람들이 어수선한 분위기 속에서 연말을 맞이하며 2024년을 보내준 것 같다. 여러면에서 많은 것을 배우고 느낀 2024년이었다. 내가 행복한 순간들은 어떤 순간이고, 내가 슬픈 건 어떤 순간인지 알게되었다. 사람은 똑같은 일상 속에서는 성숙해질 수 없다고 생각한다. 그런면에서 2024년은 나에게 사람으로서 성숙해질 수 있는 시간들이었고, 내 인생의 우선순위가 무엇인지 깨닫게 해주었다. 2023년의 회고록 내용처럼 살아보려했고, 그렇게 살았던 것 같다. 적절한 시기에 필요한 경험들이 다가와 나를 다독여주기도, 혼을 내주기도 하는 것을 보니 나는 운이 좋은 사람이다. 2025년에는 기분좋은 작은 일상들이 많았으면 좋겠다.
'My Diary' 카테고리의 다른 글
2023년 회고록 (4) | 2023.12.29 |
---|---|
2022년 회고록 (2) | 2023.01.29 |
2021 회고 및 2022 새해 목표 (0) | 2022.01.03 |
2021년 목표 정리 (0) | 2021.02.07 |
2020년 회고록 (3) | 2021.01.03 |