새로운 코드로 새로운 팀을 관리하기위한 팁 / 트릭


9

당신이 가장 선임 개발자이고 팀의 다른 대부분이 몇 년 후 주니어 인 새 팀에서 어떻게 자신을 처리합니까? 팀보다 앞서서하는 일은 당신을 포함한 다른 누구도 전에 그들의 경력에서 성취 한 것이 아닙니다.

경영진은 전체 팀의 생산성을 높이고 선임 개발자로서 책임을 져야합니다.

이런 상황에서 나올 때 어떤 팁이 있습니까? 분명히 팀 전체가 배우는 데 시간이 필요하고 팀의 새로운 것을 잊지 말자. 그러나 마감일도 앞당겨집니다 ...


pm.stackexchange.com에 있어야 함
JBRWilkinson

5
@JBRWilkinson 동의하지 않습니다. 이것은 마감 기한이 짧은 주니어 개발자의 기술 리더가되는 것입니다. 주니어 개발자의 프로젝트를 관리하는 방법에 대해서는 동의하지만 기술 리더가되는 것은 PM과 다릅니다.
maple_shaft

답변:


13

프로젝트 마감 시간이나 참신함이 훌륭한 엔지니어링 실무를 방해하지 않도록하십시오. 소프트웨어 저장소를 설정하고, 코딩 스타일에 동의하고, 테스트 스위트를 사용하는 등의 작업을 수행해야합니다. 열심히 일하고 그들 앞에서 과제를 배우십시오.

경영진은 귀하의 배경과 경험으로 인해 양질의 소프트웨어를 구축하는 데 필요한 도구가 제공되었다고 판단하기 때문에 책임을 맡았습니다. 이 작업이 지금 어려워 보이기 때문에 갑자기 기술을 잊지 마십시오.


팀의 모든 사람이 할당 할 모든 작업을 평가할 수있는 기회를 가지도록하여 마감 시한을 약간 매입하십시오. 팀이 아직 줄을 배우고 있기 때문에 견적을 경과 시간으로 전환 할 때 하루에 5 시간 이상 사람을 투입하지 마십시오. 마감일을 지키지 못하면 경영진에게 최대한 빨리 알려야합니다.
Dawood 이븐 카림

1
@David-5 시간 동안 어떻게 운동 했습니까 (실제로 나쁜 수치는 아니지만 어떻게 알 수 있습니까?) 그러한 프로젝트를 추정하는 것은 쓰레기 촬영이며 관리자에게 말합니다.
mattnz

3
나는 대부분의 사람들이 하루에 약 6 시간에서 6.5 시간 동안 생산적이라고 생각합니다. 몇몇은 이것보다 더 많은 것을 관리하지만 이것이 좋은 평균이라고 생각합니다. 그러나 팀이 새로 생겼으므로 하루에 적어도 한 시간은 학습에 소비됩니다. 그리고 나는 추정을 믿습니다. 모두가 능숙하지는 않지만 작업에 걸리는 시간을 모르는 채 뛰어 들고 프로그래밍하는 것보다 낫습니다.
Dawood ibn Kareem

계획된 시간을보기 전에 팀 구성원이 예상치를 개발하도록하여 구매 계획을 크게 초과하지 않으면 구매에 도움이됩니다. 다른 견적을보기 전에 견적을 받으면 견적에 치우 치지 않아도됩니다.
BillThor

@BillThor : 확실히 당신은 그 사람이 그것을 추정하기 위해 일을하도록하고 그의 수치를 출발점으로 사용합니다. 나는 방금 직업을 추정하고 "우리는 그것의 1/3 일 것"이라고 들었습니다. 왜 그들이 얼마나 오래 걸 렸는지 알면서도 귀찮게 했습니까?
mattnz

7

먼저, 첫 번째 코드 라인에서 소스 코드 제어 시스템 을 사용하십시오. 코드를 자주 확인하는 습관을들이십시오.

둘째, 테스트 전략을 결정하십시오 . 물론 이는 단위 테스트를 의미하지만 수용 테스트를 자동화하는 방법도 고려해야합니다.

셋째, 코드가 정기적으로 작성되고 정기적으로 테스트되도록 지속적인 통합 서버 를 설정하십시오.

일단 당신이 그것을 가지고, 팀으로 간단한 코딩 표준을 설정하십시오 . 모든 사람이 쉽게 코드를 읽을 수 있기를 원합니다. 표준이 무엇인지는 중요하지 않습니다. 탭으로 들여 쓰기, 공백으로 들여 쓰기, 같은 줄에 중괄호 등을 넣습니다. 그들이 무엇인지는 중요하지 않으며 모든 사람이 일관되게 적용해야합니다.

이 팀은 주로 주니어 개발자이므로 코드를 자주 검토 하여 시스템에 너무 많은 기술적 부채를 추가하지 않도록하십시오.

마지막으로 SCRUM 사용을 고려하십시오 . 그렇다면 코치를 고용하거나 훈련을 받으십시오. 당신이 한 번도 해보지 않은 일을하고 있기 때문에 현실적인 마감일을 정하는 것은 불가능합니다. SCRUM을 사용하면 경영진이 매일 수행하는 작업에 대한 가시성을 확보하여 진행 상황을 확인할 수 있습니다. SCRUM은 마감일이 분명히 주어 졌으므로 마감일을 맞출 수없는 경우 적어도 완성 된 스토리를 점진적으로 제공하고 있다는 것을 보증합니다. 전혀 작동하지 않는 시스템.


2
버전 관리 및 코드 검토 초기 및 빈도 : +1
jmq

2
나는 소스 컨트롤이 너무 필요해서 팀 구성과 상관없이 무엇이든 상관없이 프로세스가 이루어져야한다고 생각합니다.
maple_shaft

6

@ chrisaycock의 답변 외에도 ... 멘토링 / 훈련 등을 위해 할당해야하는 시간을 과소 평가하지 마십시오. 리드로서 세부 사항을 포기하고 팀을 신뢰하는 법을 배워야합니다. 당신의 임무는 경영진이 이목을 끌 때 인 에이 블러,로드 블록 리무버가되고 방해물을 실행하는 것입니다. "정상"팀에서는 약 7 또는 8시에 리드가 더 이상 프로그램을하지 않습니다. 4 (아마도 더 적음), 프로젝트의 프로그래밍 리소스가 아닙니다.


멘토링 및 교육 시간 할당에 +1 효과적인 기술 리더는 주니어 개발자의 생산성을 높여줍니다.
maple_shaft

"프로젝트의 프로그래밍 리소스가 아닙니다." 그의 경영진이 같은 느낌인지 궁금합니다. 프로젝트의 "영웅"프로그래머가되지 않기를 바랍니다.
jmq

저는 OP가 단순히 가장 수석 개발자였으며 ​​특별한 직책이나 의무가 없었습니다 (즉, "기술 책임자"또는 "건축가"가 아님). 이 경우 그는 확실히 개발 리소스이며 아마도 가장 생산적인 리소스 일 것으로 예상됩니다.
TMN

@TMN : 한 숙련 된 / 경험이있는 사람과 다른 모든 숙련 된 사람이있는 팀에서 발생하는 현실을 반영하고있었습니다. 경험이 많은 사람이 코드를 작성하면 가장 생산성이 높을 것이며 코드 작성이 예상됩니다. TEAM은 그렇지 않은 경우 가장 생산적입니다. 깨달 지 않은 조직에서 관리자는 개별 성과를 측정하므로 최고 직원이 최선을 다하는 것이 좋지 않은 것처럼 보입니다. 그는 주니어를 건조하게하고 자신을 멋지게 보이게하는 것이 좋습니다.
mattnz

1

두 영역의 커뮤니케이션에 중점을 둡니다.

이 작업을 수행하는 것은 쉽지 않으며이 작업이 어려운 이유 중 하나입니다. 마감 시한을 맞추는 것이 절단 기능을 의미한다면 그 이상으로 진행하십시오. 이 모든 것을 피하려고하는 것은 마감일을 만들기위한 빠른 코드입니다. 그것은 오래 가지 못할 코드베이스의 시작과 질식하는 기술적 부채의 시작입니다.

2) 팀 간 의사 소통. Bryan 및 기타 권장 사항과 같은 공식적인 관행을 설정하십시오. 매일 스크럼 외에 일주일 한 번 팀으로 정기적으로 만나십시오 . 가장 중요한 도구 인 을 (를) 듣고 존중하고 신뢰 하십시오. 도움에 집중하십시오. 모든 비용에 대해 부정적인 비판을 피하십시오. 필요할 때 긍정적 비평과 격려를 사용하십시오. 예를 들어 "좋아요, 고려하고 싶은 것이 X라면, 우리가 필요로하지 않는 것이 아니라 X를 대신해야합니다"


0

내가 한 것은 유능한 사람들을 식별하고 나누고 정복하는 것입니다. 상위 2 ~ 3 위를 차지하고 선장으로 만듭니다. 그런 다음 다른 팀은 선장을 따라 작은 팀으로 균등하게 분할됩니다.

나는 선장들에게 프로그램을하기 위해 청크 나 모듈을 준다.

선장은 초보자들에게 더 작은 프로그래밍이나 연구 과제를 제공하면서 그들이 무엇을하고 있는지 설명하면서 수행하는 동안 멘토링이 발생하도록합니다.

나는 모든 사람이 같은 열린 공간에 있도록 방을 정리하려고 노력하지만 각 팀마다 고유의 컴퓨터 서클이 있습니다. 나는 모든 사람과 거리를두고 있기 때문에 일이 빨리 움직입니다.

이것은 지금까지 약 10-20 명의 프로그래머에게 효과적입니다. 작은 그룹은 한 그룹에있는 것이 더 좋으며 더 큰 작업은하지 않았습니다.


Divide & Conquer에는 함정이 있습니다. 팀 전체가 직면하는 비슷한 문제에 대해 모든 하위 팀이 바퀴를 재발 명하는 것으로 나타났습니다.
NWS

당신이 별도의 건물에 있다면 예, 그래서 나는 열린 공간에 모든 사람들을 유지하고 정기적으로 걸어보십시오. 내가하는 일은 핵심 API 서명을 작성하고 팀이 모두 연결되도록 설정하는 것입니다.
Jason Sebring 2016 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.