2022 Retrospective
어김 없이 한 해가 모두 지나갔다. 나의 2022년은 어떠 했는지 회고 글을 통해 돌이켜보자.
작년 나의 목표
우선 2021년 회고 글에 적었던 2022년 목표들을 잘 이뤘는지 살펴보자.
1일 1커밋 - 실패
정말 쉬운 일이 아니다. 몇 번 의미 없는 커밋을 하는 경우도 있었지만, 최대한 정직하게 커밋을 하려고 노력했다. 2023년 목표로 다시 도전해 볼 생각이다. 너무 부담은 갖지 않고, 꾸준히 공부할 수 있도록 동기를 부여하는 지표로만 삼을 생각이다.
오픈 소스 기여하기(contribute) - 실패
오픈 소스에 기여하는 일은 앞으로도 쉽지 않을 것 같다. 프로젝트에서 사용하거나 공부하면서 궁금한 내용들을 레포지토리 이슈에 올리긴 했었는데, 직접 코드에 기여하는 것은 쉽지 않았다. 관심 있는 레포지토리의 이슈들을 꾸준히 살펴보는 습관을 갖는게 생각보다 어려웠다. 장기 프로젝트나 운영 업무를 통해 장기간 지속적으로 사용하게 된다면 기회가 있지 않을까 싶다. 실패했지만, 2023년 목표로는 삼지 않을 생각이다.
StackOverflow Reputation 올리기 - 성공
스택 오버플로우(StackOverflow)에서 높은 명성을 쌓진 못 했지만, 몇 개의 뱃지들과 468 포인트의 명성을 획득했다. 스택 오버플로우는 내가 도움을 얻기도 하지만, 쉽게 다른 개발자들에게 도움을 줄 수 있는 채널인 것 같다. 공부하면서 궁금한 내용들을 질문으로 올리고, 내가 해결했던 문제들에 대한 질문들을 만나면 성의껏 알려주었다. 스택 오버플로우는 생각보다 다른 개발자들에게 도움을 줄 수 있는 보람찬 활동을 할 수 있는 공간인 것 같다. 올해도 내가 아는 지식들을 공유하고, 모르는 것들은 배울 수 있도록 열심히 활동해 볼 생각이다.
사이드 프로젝트 완성 후 블로그에 전시하기 - 실패
몇 가지 아이디어가 있었지만, 시작하지 않았다. 사이드 프로젝트보다는 공부하고, 블로그에 글을 포스팅하는 데 대부분의 시간을 보냈다. 블로그에 글을 쓰는 것이 더 즐겁다보니 사이드 프로젝트엔 자연스럽게 손이 가지 않았던 것 같다. 나에겐 블로그 포스팅을 우선 순위에서 밀어낼만큼 사이드 프로젝트를 위한 좋은 아이디어나 확실한 동기가 필요하다는 생각이 든다.
책 완독하기 - 성공
다음 책들을 읽으려고 다짐을 했었고, 출퇴근 길에 오며 가며 모두 읽었다.
- 익스트림 프로그래밍
- 클린 코드
- 클린 아키텍처
- 클린 소프트웨어
- 테스트 주도 개발
- 도메인 주도 설계
이 외에도 더 많은 책들을 읽었다. 개발 관련된 서적이 아니더라도 추천 받은 책들을 위주로 읽었다.
- 시간을 정복한 남자 류비세프
- 린 스타트업
- 단위 테스트
- 객체 지향의 사실과 오해
- 오브젝트
- 이펙티브 자바
- 개발자가 반드시 알아야 할 자바 성능 튜닝 이야기
- GRIT
내가 멀리 볼 수 있었던 것은 거인들의 어깨 위에 올라서 있었기 때문이다.
아이작 뉴턴이 했던 유명한 말이다. 개발자 커리어를 시작한 주니어 시절부터 책을 많이 읽지 않았던 것이 후회가 될 정도로 책에서 정말 많은 것들을 배우고 있다. 조금 더 빨리 이 책들을 만났다면 지금의 나는 더 넓은 시야를 가지고 멀리 볼 수 있는 사람이 될 수 있었을 거라는 생각에 아쉬움이 크다. 내 경험이 떠오르는 공감되는 사례들, 번뜩이는 인사이트를 주는 문장들, 어디선가 들어 봤지만 잊고 지냈던 개념들, 인터넷 상에선 얻기 힘든상세하고 구체적인 지식들이 책 속에 있었다.
너무나 아쉬운 것은 읽었던 지식들은 휘발된다는 사실이다. 한번 읽은 것으론 내 것이 되지 않는다. 지금 누군가 내게 읽었던 책들에 대해 질문한다면, 지금의 나는 자신 있게 설명하지 못 할 것이다. 올해 목표는 읽었던 책들을 몇 번씩 읽어 보고, 내용을 요약하고, 책의 소감을 블로그에 남기는 것이다. 아직은 Extreme Programming Explained 밖에 쓰지 못 했다.
귀여운 주아 공주
2022년 4월 귀여운 공주님이 태어났다. 이름은 강주아. 분유 60ml도 한번에 못 마시던 게 엊그제 같은데 지금은 이도 나고 걸을려고 일어서는 연습도 한다. 이유식도 먹고, 자기 주장도 강하게 표현한다. 아직 “아빠”라는 말은 못 하지만, “엄마”는 엄청 잘한다. 아빠가 엄마만큼 많은 사랑을 딸에게 주지 못한 탓이겠지. 앞으로 더 잘 해야겠다. 딸에게 아낌없는 사랑을 주고, 건강하게 키워주는 와이프에게 항상 고마울 따름이다. 나는 한번 몰입하면 다른 것들을 신경쓰지 못하는 편인데, 내가 일에 집중할 수 있도록 많은 것들을 신경 써주는 와이프를 만난 나는 행운아이다.
아침 7시면 어김 없이 눈을 떠서 더 자고 싶은 아빠와 엄마를 보채는 딸.
새로운 집으로 이사
23년엔 전세 연장이 끝나서 이사를 해야만 했다. 이사 때문에 머리가 많이 아팠는데, 운이 좋게 집 문제가 잘 해결됐다. 경기도 쪽으로 이사를 오게 되었다. 30년 넘게 서울에서만 살다가 처음 경기권으로 나오면서 출퇴근이 큰 걱정이었지만, 생각보다 출퇴근은 다닐만했다. 신축 아파트여서 집이 깨끗한 점과 북한산 풍경이 좋다는 게 최고 장점이다. 년말 마지막 한 주는 회사 전 직원들이 모두 휴가를 가는데, 마침 이사와 맞물리면서 짐 정리를 열심히 했다. 불필요한 짐들을 정리하면서 한 해를 마무리 했는데 정말 개운했다. 23년 한 해를 산뜻하게 시작할 수 있을 것만 같은 기분이 든다.
집에 냉장고 장을 설치했는데 정말 마음에 든다.
일의 보람
개발은 정말 재밌다. 나는 항상 금새 질려하는 편인데, 개발자로 일하면서 항상 새로운 것들을 마주하고, 모르는 것들을 배워나가다 보니 아직까지 즐겁다. 이렇게 즐거움에 빠져 무언가에 몰입했던 건 카오스라는 게임 이후로 처음이다. 나는 일에 빠져 사는 편이다. 일을 하는 것이 공부가 되고, 배운 내용들을 블로그에 정리하는게 지금 나의 취미니까.
현재 진행 중인 프로젝트는 비즈니스 도메인이 특이하다. 주식, 선물, 옵션 등의 거래를 다루는 어플리케이션인데, 글로벌 서비스여서 신경 쓸 부분이 더 많다. 그래서 이 프로젝트는 나에겐 더할 나위 없는 행운이 되었다. 나는 비즈니스 도메인에 관심이 많다. 돈을 벌어주는 비즈니스를 효율적으로 할 수 있도록 돕는 것이 소프트웨어의 본질이니 비즈니스 도메인이 중심에 있어야 한다고 생각한다. 나는 도메인에 적합하다면 무슨 기술을 사용해도 좋다. 모든 것을 해결할 수 있는 완벽한 기술은 없고, 상황에 맞는 적절한 기술들만 있기 때문이다. 새로운 것을 배우는 일은 늘 즐거우니 필요하다면 공부하면 된다.
이 프로젝트를 시작하기 전엔 걱정스러운 부분들이 많았다. 레거시 시스템만 언뜻 봤을 땐 정말 막막했다.
프로젝트 기간 동안 저 많은 기능들 중 할 수 있는게 얼만큼일까?
경험상 이 곳의 프로젝트는 항상 블로커들이 많은 편인데, 그런 것들을 얼마나 빠르게 파헤쳐낼 수 있을까?
프로젝트를 시작하니 함께 일하는 고객사 팀원분들께서 문제들을 함께 해결해 주시고, 능동적으로 참여해주셔서 프로젝트가 원활히 진행됐다. 고객사 팀원분께 이런 피드백을 받았다.
우리도 처음엔 16주동안 어디까지 할 수 있을지, 분석만 하다가 끝나는 건 아닐지 걱정스러웠다. 하지만 VMWare와 함께 일하면서 더 많은 것들을 할 수 있다는 생각이 들었고, 지금 이 서비스를 기반으로 큰 그림을 그리고 있다. 다음 프로젝트도 연이어 바로 진행하고 싶다.
뿌듯했다. 걱정은 기대로 바꼈고, 불신은 신뢰로 바뀌었다. 레거시의 작은 부분을 커버하기 위해 시작한 프로젝트가 레거시를 대체할 수 있는 서비스를 꿈꾸게 하였다. 함께 일하는 분들에게 꿈을 심어 주었다니 정말 멋진 일이 아닐 수 없다. 이런 보람은 내가 더 치열하게 일할 수 있는 원동력이 되어준다.
블로그
22년에 120개의 글을 작성했다. 한 달에 10개씩 꾸준히 쓴 수준이다. 매달 10개씩 쓰진 못 했고, 한가한 달에 글들을 많이 썼다. 프로젝트가 끝난 직후 여유 시간이 있을 때 프로젝트 경험을 정리한 내용들이 많았다.
22년 내 블로그 글들에 대해 다음과 같은 피드백들을 받았다.
완전 면접 문제 같네요.
아는 지인이 준현님 블로그가 면접 준비에 도움이 많이 되었다고 하네요.
이런 지식은 면접에서만 쓰이지 않나요?
지금 운영하는 블로그 초창기 글들의 주제는 내가 사용했던 기술들에 대한 공부, 면접에서 받았던 질문들이었다. 그러다 이직 준비를 안하게 되면서 프로젝트에 관련된 기술 스택이나 만났던 문제들에 대한 내용들을 위주로 정리하고 있다. 그럼에도 저런 피드백들을 받다보니 자연스럽게 이런 생각이 들었다.
결국 모두 현장에서 필요한 지식이다.
내가 겪은 경험들은 모두 어디선가 필요한 지식들이다. 회사 면접은 자신들이 사용하는 기술이나 민감한 문제들, 비즈니스에 관련된 내용들을 질문할 뿐이다. 비즈니스가 달라서 묻지 않을 뿐 내가 배우고, 겪은 경험들은 모두 가치있다. 이전 프로젝트의 레거시 코드들을 많이 만지면서 삽질했던 경험들이 지금 프로젝트에서도 많은 도움이 되고 있다.
최근 Spring Boot 프로젝트를 WAR 파일로 패키징하여 톰캣에 배포하는 내용에 관련된 글의 조회 수가 부쩍 높아졌다. 도커, K8S 같은 배포 환경이 나옴에도 불구하고, 아직까지도 예전 배포 방식을 유지하는 곳이 있다는 말이다. 신기술도 중요하지만, 모든 것들이 한번에 대체되진 않는다. 레거시 시스템을 지탱하는 오랜된 코드들로부터 빠르게 인사이트를 뽑아낼 수 있는 경험과 지식을 쌓는 일도 개발자에겐 숙제이다. 앞으로도 꾸준히 내 경험들과 지식들을 정리해 나갈 생각이다.
애널리틱스
작년 이맘때 애널리틱스 결과와 비교해보았다.
- 작년 하루에 방문자 200명 정도에서 현재는 900명 정도까지 올랐다.
- 30일 누적 사용자 수가 1만명 수준이다.
서치콘솔
서치 콘솔 결과를 비교해 봤다.
- 작년 하루 500회 조회 수에서 현재는 1700회 수준까지 올랐다.
- 가장 인기 많은 콘텐츠에 변동이 생겼다.
- 가장 인기가 많은 콘텐츠는 React 개발 서버 CORS 해결 방법과 관련된 내용이다.
- 서핏이라는 커리어 플랫폼을 통해 유입되는 사용자 수가 꽤 늘었다.
- 내가 올린 글들이 종종 서핏에 올라가는데 그 날은 유독 방문자 수가 높다.
앞으로
23년 목표는 무엇이 좋을지 생각해봤다. 22년처럼 실패가 많으면 곤란하기 때문에 지킬 수 있는 목표들을 정하고 싶었다. 나 스스로를 객관적으로 돌이켜봤을 때 관심을 가지고, 꾸준히 할 수 있는 것들이 무엇일지 생각해봤다. 책을 읽음으로써 정말 많은 것들을 배우게 된다는 사실을 깨달은 탓인지 23년은 책과의 싸움일 것 같다.
- 1일 1커밋
- StackOverflow 명성 쌓기
- 이전에 작성한 포스트 최신화 및 내용 다듬기
- 읽었던 책 다시 읽고, 요약과 독후감 작성하기(한 달에 한권)
- 새로운 책 읽기
- 자바 최적화
- 모던 자바 인 액션
- 코틀린 인 액션
- Real MySQL part 1 and 2
- 데이터 중심 어플리케이션 설계
- 이벤트 기반 마이크로서비스 구축
- 모던 자바스크립트 Deep Dive
- 실용주의 프로그래머
- 실리콘 밸리의 팀장들
최근에 바이 바이(bye bye)를 배운 주아에게 2022년 작별 인사를 부탁해봤다.
댓글남기기