“품질 높은 프로젝트는 어떻게 만들어질까?”
F-Lab : 상위 1% 개발자들의 멘토링
개발자로 일하다 보면 프로젝트를 완성하는 것도 중요하지만, 오랫동안 잘 작동하고 유지보수하기 쉬운 코드와 구조를 만드는 것이 더욱 중요하다는 걸 점점 더 실감하게 됩니다.
하지만 실제로 프로젝트의 ‘품질’을 유지한다는 건 생각보다 복잡하고 어렵죠.
각자 처한 상황과 팀 환경에 따라 신경 써야 할 우선순위도 달라지기 마련이고요.
그래서 이번에는 F-Lab 멘토님들께 이렇게 질문을 드려봤습니다.
“프로젝트의 품질을 유지하기 위해 가장 중요하게 여기는 것은 무엇인가요?”
멘토님들께서 경험을 통해 체득한 기준과 습관, 협업 방식까지 솔직하게 답변해 주셨어요.
한 가지 방식이 정답은 아닐 수 있지만, 세 분의 이야기를 따라가다 보면 ‘이건 꼭 기억해야겠다’는 기준이나 태도를 발견할 수 있을 거예요.
지금부터 함께 확인해보시죠!
“프로젝트의 품질을 유지하기 위해 가장 중요하게 여기는 것은 무엇인가요?”
네이버/하이퍼커넥트 출신 백엔드 개발자 멘토님
현재 요구사항과 미래에 어떤 일이 벌어질지 예측하는게 정말 중요한 것 같아요.
그래야 적절한 설계를 해서 생산에 들어가는 리소스와 유지보수에 들어가는 리소스의 총합을 최대한 줄일 수 있거든요.
성능 문제가 발생하지 않게 평소 갈고 닦은 지식을 기반으로 잘 체크하는 것도 중요하고요.
카카오, 11번가 출신 멘토님
가장 어려운 질문인데요. 프로젝트 품질은 개발자만의 노력으로 되지는 않습니다.
이 품질에는 안정성, 요구사항에 대한 이해도 및 완성도, 향후 시스템에 대한 유지보수 및 관리, 추가로 발생되는 요구사항에 대해 개발되는 프로세스들이 정립이 되어야 프로젝트의 품질을 높이며 유지할수 있습니다.
이를 위해서는 기획자, 개발자, 설계자, 요구사항 요청한자, 프로젝트에 대한 책임자, 프로젝트를 통핸 시스템을 사용하는 실무자 들의 명확한 의견과 소통이 따라야 합니다.
또한 모든것은 기록이 되어야 합니다.
구두로 전해지는 말들은 언제든지 왜곡이 되고 잊기에 항상 기록이 해야합니다.
또한 어떤 이슈가 발생을 하면 같이 해결하도록해야 하며, 내일이 아닌데 라는 마인드는 절대로 좋지 않습니다. 그리고 명확하게 결정을 내려야 합니다.
우리가 프로젝트 개발 시에 모든 것을 정책으로 정하고, 모든 예외 사항을 다 파악할 수 없습니다.
그렇기에 프로젝트 품질을 높이고 유지하기 위해서는 일의 관련자들과의 의사소통 및 기록, 절차, 명확한 의사결정이 아주 중요합니다.
우아한형제들 출신 멘토님
좋은 개발 문화와 그것을 지키기 위한 노력입니다.
프로젝트는 혼자 하는게 아니기때문에 여럿이 지켜나갈 수 있는 문화 혹은 시스템이 필요합니다. 사실 좀 더 디테일하게는 가독성이 가장 우선이라고 생각하는데요
이 가독성을 지키기 위해서는 팀 내부의 컨벤션이나 주기적인 코드리뷰 등을 통해 서로 스타일을 섞어 나갈 필요가 있다고 생각합니다.
서로 서로 피드백을 주고 받고 그것에 있어 감정이 상하지 않을 만큼의 라포를 형성하고 그것을 통해 히스토리는 전파되고 새로운 의견을 받아들이면서 팀의 스타일을 유지하는 것이 곧 프로젝트의 품질을 유지하는 방법이라고 생각합니다.
세 분의 멘토님은 각기 다른 환경과 경험 속에서 ‘프로젝트의 품질’을 지키기 위해 무엇이 중요한지를 조금씩 다른 언어로 설명해주셨어요.
- 어떤 분은 예측 가능한 설계와 기술적인 대비를 강조했고,
- 어떤 분은 협업자 간의 명확한 소통과 책임감을,
- 또 다른 분은 지속 가능한 개발 문화를 함께 만들어가는 노력을 이야기해주셨죠.
결국 프로젝트의 품질을 유지한다는 건 단순히 ‘코드를 잘 짜는 것’ 그 이상이라는 걸 다시금 느끼게 됩니다.
더 잘 소통하고, 더 잘 기록하고, 더 잘 피드백하며 함께 만들어가는 것, 그 모든 과정이 품질을 만드는 일의 일부겠지요.
당신은 지금 하고 있는 프로젝트에서
어떤 요소가 가장 중요하다고 느껴지시나요?
앞으로도 함께 고민해볼 질문들을 이어갈게요.
다음 이야기에서 또 만나요!
이 컨텐츠는 F-Lab의 고유 자산으로 상업적인 목적의 복사 및 배포를 금합니다.