이 클래스에서는 개발팀의 현황을 간단히 진단해볼 수 있는 단 12가지 원칙을 살펴봅니다.
목표는 정해졌고 개발을 마쳐야 하는 기일도 정해진 시점, 개발 진척 속도를 높여야 하는데 현황을 제대로 진단하지 못한다면 그것만큼 곤란한 일은 없을 겁니다. 그래서 이 클래스를 준비했습니다.
개발을 완료하려면 중간에 생산성을 점검하는 것이 필수입니다. 그러나 회사 혹은 서비스 특성에 따라 사용하는 기술이나 도구, 의사소통 방식까지도 모두 천차만별이죠. 결국 다양한 모든 상황에 일률적으로 맞출 수는 없지만, 적어도 현황을 진단할 때 공통으로 살펴보고 점검해야 하는 부분은 존재합니다. 이 클래스에서는 바로 이 부분을 함께 배워볼 거예요.
점검 용도로 마땅한 체크리스트가 없어서 예전의 점검 도구가 여전히 참고용으로 쓰인다는 점에 착안하여, 『조엘 온 소프트웨어』의 역자이신 박재호 님과 함께 조엘 온 소프트웨어에서 제공했던 12가지 항목을 현대 버전으로 재해석하고 살펴봅니다.
부디 이 콘텐츠가 복잡한 개발 과정을 진단하고 보완하는 귀중한 실마리가 되기를 바랍니다.
소프트웨어 기술은 지난 20년 간 빠르게 발전했고 아주 복잡해졌죠. 개발 생산성도 높아졌지만, 이해하고 실천해야 할 내용도 그만큼 많아졌습니다. 그 과정에서 개발팀의 현황을 파악하기 위한 지표가 반드시 필요하지만, 예전이나 지금이나 그 기저에 깔린 아이디어는 비슷합니다. 그래서 이 클래스를 준비했습니다.
물론 이것은 개발팀을 평가하기 위해 완벽히 이론적이거나 정량적인 척도로 만들어진 것은 아닙니다. 다만, 업계에서 일반적으로 통용되는 경험적인 법칙을 정리해 놓은 것이며, 그렇기에 현재 상황을 빠르게 평가하고 보완점을 찾아내는 출발점으로 사용하기 아주 적합하죠.
이 클래스는 팀 관리자에게는 필요한 지원 자원 내역을 확인할 수 있는 지표가, 팀원에게는 팀 프로세스를 검토하고 보완하는 기준점이, 취업 준비생에게는 면접 과정에서 회사의 수준을 평가하고 입사 후에 일어날 업무에 대비할 수 있는 힌트가 되어 줄 거예요.
복잡한 개발환경에서 팀을 이끄는 리더
개발 과정에서 일어나는 반복적인 실수를 개선하고 싶은 개발자
팀을 이끄는 리더가 되고 싶은 개발자
우리 조직의 개발 생산성 저하에 가장 큰 영향을 미치는 요소를 파악할 수 있어요.
우리 조직의 개발 생산성 보완을 위해 적절한 도구를 선택할 수 있어요.
우리 조직의 개발 복잡도가 높아진 이유를 논리적으로 설명하여 커뮤니케이션할 수 있어요.
1 | 01. 깃과 같은 현대적인 DVCS와 협업을 위한 중앙 저장소를 안전하게 유지하고 있습니까? | 14:12 |
2 | 02. CI/CD 파이프라인을 구성해서 코드 커밋부터 배포에 이르기까지 전자동화 된 환경을 구축하고 있습니까? | 17:18 |
3 | 03. 매일 특정 시점 · 주기로 커밋할 때마다 자동으로 빌드를 진행하고 단위 테스트까지 수행하는 환경을 구축하고 있습니까? | 13:41 |
4 | 04. 버그 데이터베이스와 소스 코드 관리 시스템을 연동해서 운영하고 있습니까? | 18:00 |
5 | 05. 코드 커밋에 앞서 자동으로 버그를 찾을 수 있는 단위 테스트를 현행화 하여 돌리고 있습니까? | 12:45 |
6 | 06. 일정과 할 일을 공유해서 일목요연하게 확인할 수 있는 협업 관리 시스템을 구축해서 사용하고 있습니까? | 12:42 |
7 | 07. 개발에 필요한 아키텍처와 설계 명세서를 공유 · 수정할 수 있는 문서 관리 시스템을 구축해서 사용하고 있습니까? | 13:53 |
8 | 08. 프로그래머에게 사무실이나 집 등 장소에 무관하게 개발이 가능한 환경을 제공하고 있습니까? | 14:23 |
9 | 09. 표준화된 개발 환경을 구축하여 반나절만에 신입사원이 코드를 빌드하고 단위 테스트를 시행할 수 있습니까? | 15:19 |
10 | 10. 개발자가 단위 테스트를 수행하고, QA는 통합 테스트(E2E)를 수행하고 있습니까? | 18:44 |
11 | 11. 신입지원자를 위해 자동화된 코딩 테스트 뿐만 아니라 화이트보드를 활용한 현장 테스트를 진행하고 있습니까? | 13:05 |
12 | 12. UI는 물론이고 UX 테스트까지 진행하고, A/B 테스트 등으로 사용자의 직접적인 반응을 확인하고 있습니까? | 18:31 |
팀 개발을 위한 Git, GitHub 시작하기(개정판)
정호영 , 진유림
가야트리 모한