2025년 3월 회고
시스템 안정화와 팀 리딩, 커뮤니케이션에 집중했던 3월을 돌아본다. k8s 성능 튜닝, ADR 작성 등 기술적, 조직적으로 새로 시도한 것들과 그 과정에서 느낀 아쉬움을 정리한다. 또한, 한 달간 매일 기록했던 '토막글'들을 통해 기술, 조직, 성장에 대한 다양한 배움의 흔적을 공유한다.
시스템 안정화와 팀 리딩, 커뮤니케이션에 집중했던 3월을 돌아본다. k8s 성능 튜닝, ADR 작성 등 기술적, 조직적으로 새로 시도한 것들과 그 과정에서 느낀 아쉬움을 정리한다. 또한, 한 달간 매일 기록했던 '토막글'들을 통해 기술, 조직, 성장에 대한 다양한 배움의 흔적을 공유한다.
LLM 파인튜닝이 항상 정답은 아님을 이야기하며, 프롬프트 엔지니어링이나 RAG와 같은 더 간단한 방법을 먼저 시도해야 함을 강조한다. 파인튜닝이 필요한 경우, LoRA와 QLoRA 같은 PEFT 기법의 원리를 설명하고, 양질의 데이터셋 준비, 평가 기준 수립, 그리고 과적합을 피하며 성능을 평가하는 전체 과정을 알아본다.
성장은 있었지만 뚜렷한 성과는 없었던 2025년 2월을 회고한다. Terraform과 EKS 등 인프라 기술을 익히며 개인적으로는 성장했지만, 아쉬운 비즈니스 결과에 대한 반성과 함께 3월의 목표를 다잡는다. 기술적, 비기술적으로 배운 점들을 상세히 정리하며 다음 달의 꾸준한 기록을 다짐한다.
리더가 가진 권력이라는 왕관의 무게를 어떻게 견딜 수 있을까? '세컨드 펭귄' 책을 바탕으로, 올바른 권력 행사를 위한 두 가지 기둥인 '자기 통제감'과 '성장 마인드셋'의 중요성을 알아본다. 나아가 스트레스 내성을 기르고 더 큰 동기를 부여하는 '공헌 중심의 가치관'에 대해 이야기한다.
좋은 문제 해결의 시작은 '문제 정의'에 있음을 우주 펜 일화로 설명한다. '현재 상태'와 '원하는 상태' 사이의 갭으로 문제를 정의하고, MECE 원칙에 기반한 이슈 트리로 근본 원인을 파고드는 구조적 사고법을 알아본다. 가설 도출만큼이나 중요한 가설 검증과 회고의 필요성을 강조한다.
Java의 G1 Garbage Collector가 어떻게 큰 객체를 특별하게 다루는지 알아본다. CMS GC의 한계를 짚어보고, G1 GC가 Region 단위로 힙을 관리하는 방식과 Region의 절반을 넘는 'Humongous 객체'가 왜 메모리 단편화와 성능 문제를 일으킬 수 있는지 설명한다.
지난 3년간의 안주를 깨고 '성장하는 한 해'를 만들기로 결심한 2025년 1월을 돌아본다. KPT(Keep, Problem, Try) 형식으로 일기 쓰기, 오픈소스 분석, 새로운 기술 습득 등 잘한 점과 아쉬웠던 점을 정리하고, 다음 달을 위한 구체적인 개선 방향을 모색한다.

LLMOps 플랫폼 오픈소스인 Dify를 확장성 있게 셀프 호스팅하기 위해 소스코드를 분석한다. 폴더 구조 파악, 로컬 실행, API 코드 분석 등의 과정을 거치며 Dify의 전체 아키텍처를 이해하고, 오픈소스 프로젝트를 효과적으로 파악하는 노하우를 공유한다.

소프트웨어 엔지니어로서의 성장의 한계를 느끼고, '조직을 이끄는 삶'이라는 새로운 길을 모색한다. 비전 정의부터 실행까지 조직을 이끄는 6단계의 구체적인 방법을 제시하고, 결국 이 모든 과정은 조직의 실행력과 장기적인 동기부여를 이끌어내는 능력으로 귀결된다는 점을 이야기한다.
비즈니스에서 빠른 결정이 항상 옳은지, 제프 베조스의 '1-Way/2-Way Decision' 개념을 통해 알아본다. 되돌릴 수 없는 결정과 있는 결정을 구분하는 프레임워크를 제시하고, 특히 중요한 1-Way Decision의 성공 확률을 높이기 위해 외부의 신뢰할 수 있는 제3자의 피드백을 구하는 것이 왜 중요한지 설명한다.