개발문화

9

혼자가 아니라 같이 잘해야

4명의 개발자가 맡고 있는 제품 프로젝트가 있습니다. 정기 패치를 위하여 3개월 가량을 준비하고 진행하였습니다. 기존의 방식대로 프로젝트 시작 시점에 4명이 필요한 기능 추가와 버그들을 서로 나누고 프로젝트를 시작했습니다. 문제는 3명이 잘 완수를 하였는데, 1명은 일정이 지연되었습니다. 이 경우를 두고 팀웍에 대한 이야기를 자주 하고 있습니다. 각자 일을 나눠서 본인의 일만 한다고 하면 굳이 우리가 회사에 모여서 일을 할 필요가 있을까요? 그저 한 사람이 일을 나누고 나머지는 딱 맡겨진 일만 완수하는 일이라면 한 팀이 무슨 의미가 있을까요?  그러기에 애자일이 필요하다는 얘기도 덧붙입니다. 한사람 한사람이 본인의 맡은 일을 잘 하는 정도를 넘어서 한 팀으로 함께할 때 더 시너지가 나는 팀이 필요하다는 ..

Joshua/직장 2025.01.06 Joshua95

개발자에게 좋은 소통이란

요즘 다른 팀과의 개발 협업이 필요하여 개발자간 인터페이스 협의를 하고 있습니다. 기존의 인터페이스를 전면 변경하는 것이어서, 외부에는 아무런 영향이 없지만 내부는 대폭 변경이 되어야 하는 상황입니다. 문제는 다른 팀이 우선 설계를 하고 우리팀은 설계된 인터페이스대로 지원을 해 주는 것인데 여기에서 계속 삐걱되는 소리가 들립니다. 결국은 양팀 개발자간의 이견이 좁혀지지 않아서 팀장에게 도움 요청이 올라옵니다. 저쪽 설계는 어떻고, 그렇게 되면 우리는 문제가 되니 이렇게 바꾸어야 된다. 그런데 저 팀이 우리 의견을 무시한다. 이런 류의 갈등이지요. 회사의 업무를 하다보면 커뮤니케이션을 잘해야 한다는 얘기를 자주 하게 됩니다. 다른 사람과의 소통을 잘해야 한다는 것인데, 그 의미는 사람마다 제각각 이해하곤 ..

Joshua/직장 2024.12.14 1 Joshua95

개발의 품질

한 팀원이 개발 일정 막바지에 펑크를 냈습니다. 1주도 안 남은 상태에서 일정 내 개발을 못 끝내겠다고 한 것이지요. 개발 일정이 마침 조정되어서 유관부서와의 조율까지는 없었지만, 통합 테스트 기간에도 개발을 해야 하는 상황이 벌어졌습니다. 이 일이 왜 이렇게 벌어진 것인지 면담하며 같이 회고를 해 보았습니다. 개발 초기 업무를 나누며 막내인 개발자에게 업무가 나름 적당히 할당되었습니다. 선배 개발자들이 보기에는 적당한 개발량이었는데, 막내가 진행을 하다보니 일이 커졌습니다. 더 완벽하게 개발하고 싶은 욕심이 들었던 것이지요. 기존 코드도 리팩터링 하고 싶어지고, 이번 추가 개발도 더 그럴듯하게 설계를 하고 싶어졌지요. 그러다 보니 개발의 시간이 더 많이 들어가게 되었고, 급기야 기한 내에 못 마치는 상..

Joshua/직장 2024.12.14 Joshua95

개발문화 만들기 - 도서관

어느 개발팀이든 개발 도서들이 많습니다. 우리 회사도 팀별로 도서 구입비가 주어지고, 필요한 사람은 팀의 도서 구입비를 이용해서 개발 서적을 살 수가 있습니다. 대체로 구매한 도서는 개인이 소지하고 나중에 알아서 폐기하게 됩니다. 이미 진행 중인 제도이긴 하지만 팀내 담당자를 지정하여 도서 구매를 대행해 주고, 목록을 정리할 수 있도록 정비하였습니다. 온라인 문서상으로만 존재하는 팀내 도서관을 만들었지요. 기존에는 개인 구매 후 개인이 소지하고 공유되지 않던 것을 팀원끼리 같이 공유하자는 취지입니다.팀원들에게 공유했던 도서관의 취지는 아래와 같습니다. - 구매 전에 팀내 보유 도서인지 확인하고 빌려보기 - 이전 구매한 사람에게 도서평 물어보고 관련 지식 날로먹기 - 이미 완독한 사람에게 팀내 세미나 요청..

Joshua/직장 2023.12.02 Joshua95

개발문화 만들기 - 교육

개발팀의 분위기를 만들어 간다는 것은 지루하고 더딘 시간을 거쳐갑니다. 팀을 위해서 개인이 희생하는 것을 바라지는 않습니다. 개인이 성장하여 그 효과로 팀이 발전했으면 좋겠다고 피력하고 있습니다. 혼자서 모든 것을 희생하고 과몰입하여 업무를 잘 해내는 그림을 이제는 머리에서 없애달라고 말이지요. 본인 스스로 열심히 성장하려고 노력하고, 그렇게 성장한 본인이 우리팀에 기여하는 그림을 그려달라고 얘기하고 있습니다. 이 그림을 그리다보면, 당연히 관심을 가지는 것이 개발자들의 교육입니다. 마침 회사에서 양질의 온라인 교육들이 제공되고 있습니다. 근래에는 인프런까지 지원이 되면서 다양한 기술 교육을 접할 수 있게 되었습니다. 우리팀도 이 교육을 잘 활용하고 있습니다. 팀내 교육 담당자를 두어서, 서로 이수한 교..

Joshua/직장 2023.11.26 1 Joshua95

개발문화 만들기 - 외부세미나

어느 업무나 마찬가지겠지만, 개발자로 업무를 하다보면 어느 순간 지치게 됩니다. 무언가 새롭게 만들고 멋지게 보여주며 런칭하는 시점을 지나고 나면, 금새 유지보수의 나날들이 기다리고 있습니다. 끊임없이 생겨나는 이슈와 반복되는 패치들에 시달리게 되지요. 그리고 그 범위에서 정체되는 듯한 느낌을 받습니다. 우리팀도 예외는 아닙니다. 그나마 신규 제품을 개발하던 시점에 있었던 사람들은 새롭게 만들어봤다는 경험이 있어서 그나마 낫습니다. 그러나 대다수는 이미 출시된 제품의 유지보수 기간에 입사하게 되면서 남이 만든 코드를 들여다보며 조심스레 수정을 해야 하는 상황에 놓이게 됩니다. 천천히 지쳐가게 되지요. 이를 완화해 보고자, 팀장이 되고 나서 강조하고 있는 것 중의 하나가 외부 세미나 참석입니다. 스스로 지..

Joshua/직장 2023.11.20 Joshua95

개발문화 만들기 - 1:1미팅

매니저 트랙으로 변경한 후, 여러 개발 관리 책들을 살피다보면 항상 중요시 되는 것이 1:1미팅입니다. "1:1 미팅은 무조건 해야 된다.", "사람 가장 중요하다.", "모든 것보다 면담이 우선순위를 높여야 한다."는 조언이었지요. 팀장이 되고 첫해는 정신 없는 와중에 팀원들과 분기당 1회를 면담하겠다고 얘기를 했었습니다. 그런데, 20명을 훌쩍 넘는 팀원들을 분기당 1회 면담하는 것도 여간 힘겨운게 아니었습니다. 게다가 당시는 코로나 상황이라 모니터만으로 면담을 하려니 더욱 그 시간을 주저하게 되었습니다. 결국 분기 1회 약속은 반기 1회로 정정하였습니다. 회사에서 정식 진행되는 상반기, 하반기 평가 면담 정도만 하는 걸로 타협했습니다. 이미 매니저를 하고 있는 친구에게 면담의 어려움을 호소하였더니,..

Joshua/직장 2023.08.12 Joshua95