엔지니어링 위키 2024/01 ~
개발 문화 제안 경험
서론
안녕하세요, 1.25인분을 목표하는 백엔드 개발자 박시창입니다.
장애 이슈들이 쌓이면서 도메인별로 이슈가 있었던 기능들을 종합하고 회고해보는 문서가 쌓였습니다.
하지만 정리되지 않은 문서들은 팀원분들의 능률을 낮추고 개발시에도 염두에 두지 못해서 이슈가 생겼습니다. 이에 대해 저년차로써 한 엔지니어링 위키를 회고하려고 합니다.
기존의 문제점
레거시 코드베이스에서 기능 개발이 된지 오래인 기능들에 대해서는 히스토리를 파악하기가 굉장히 힘이 듭니다. (퇴사자의 경우 더더욱) 또한, 장애이슈들이 개발자들과 엔지니어분들에게 공유가 되고 실제로 이해가 되고 토론이 되는 자리가 없어서 해결 과정을 팀원의 일부분만 이해하는 상황이 벌어졌습니다.
이 때문에, 동시 다발적으로 일어난 이슈들에 대해서는 서로 무엇이 문제인지 모르는 문제가 생겼습니다.
그리고, 새로 입사한 분들의 온보딩이 그에 맞춰 계속 복잡해지고 있음을 느꼈습니다.
해결 방안 도출
승인을 받아야하는 업무로 보여서 해당 업무를 팀장님과 시니어분들께 먼저 공유드렸습니다. 긍정적인 피드백 이후에 샘플로 회의를 잡고 보여드리면서 정리하는 과정이 어떻게 자동화가 되고 무엇을 중점적으로 정리할지 포인트를 정했습니다.
다음과 같은 포인트들을 기반으로 위키를 구성했습니다.
기능에 대한 논의
장애에 대한 논의
관련된 기능 종합 문서들 및 장애 해결 문서들
해당 문서를 엔지니어분들께 공유 드리고 긍정적인 피드백을 받을 수 있었습니다.
이렇게 개발문화를 바꿔나가면서 팀으로써 코드베이스의 문제점을 조금 더 빨리 알 수 있고 이슈에 대해서 공개적으로 공유하는 자리를 만들어나갈 수있습니다. 엔지니어분들의 의문에 대해서도 빠른 응답과 레퍼런스를 드릴 수 있어서 새로오신 경력분들의 온보딩에도 도움을 드릴 수 있는 시스템을 만들었습니다.
결론
별개로, 팀으로써 위키를 보시면서 문제점을 파악하고 `레거시 코드베이스를 벗어나야한다`는 문제의식을 모두 가지고 있었으면 했습니다.
점심에도 기술적인 이야기와 문제점에 대한 방안을 이야기하는 시간을 가지면서 강제로 멘토링을 받게 되었습니다.
해당 프로젝트를 초석으로 삼아 어느 부분이 구조적인 리팩토링이 필요하고 왜 해당 코드베이스가 잘못 써졌는지에 대해서 반면교사 할 수 있는 기회가 되었습니다.
프로젝트를 주도하면서 리팩토링을위한 신뢰자본을 얻어냈습니다. 이 덕분에, 제일 시급한 레거시코어 코드베이스 부터 리팩토링을 시니어분과 함께 리팩토링을 담당하게 되었습니다.
Last updated