1. 레거시 코드와 첫 만남: 레거시 코드에서 느낀 한계개발자라면 누구나 한 번쯤 레거시 코드라는 지옥을 경험해본 적이 있을 것이다. 회사에서 TF 프로젝트를 진행하며 나 역시 레거시 코드의 한계를 체감했다. 프로젝트 속도를 높이기 위해 기존의 C 기반 코드와 GCC 컴파일러로 작업을 시작했는데, 처음부터 메모리 누수 문제가 상당했다. Valgrind로 누수를 추적하고, 수많은 테스트 코드 작성 끝에 간신히 해결할 수 있었다. 처음에는 이 프로젝트를 JNI 인터페이스로 Java 라이브러리와 회사의 기반 라이브러리를 연결하는 모듈로 개발해 JAR 파일을 배포하는 방식으로 진행했다. 이후 리눅스 기반에서 개발한 코드를 윈도우 환경으로 포팅하여 엔지니어들이 쉽게 테스트할 수 있도록 하면서 프로젝트는 성공적으로..