누가 새로운 프로그래머를 훈련시켜야합니까? 주니어 또는 시니어 프로그래머? [닫은]


15

우리 팀에서는 최고급 프로그래머가 종종 새로운 주니어 프로그래머를 훈련 / 멘토링하도록 요구합니다. 그러나이 같은 선임 프로그래머들은 실제적이고 중요한 일을 대량으로 수행하는 사람들입니다.

나는 높은 적성을 보여주고있는 주니어 프로그래머가 새로운 프로그래머를 그들의 날개 아래로 데려가는 것이 합리적이라고 내 매니저에게 말하려고 노력했다. 우선, 상급 개발자가보다 중요한 이니셔티브를 수행 할 수있게됩니다 (멘토링이 중요하지 않음). 다음으로, 주니어 프로그래머는 자신의 직무에 대해 약간의 자부심을 갖게되어 그러한 책임을 찾고 교습에서 무언가를 배울 수있게됩니다. 마지막으로, 선임 개발자가 후배보다 훨씬 많은 비용을 지불하므로 회사 비용을 절약 할 수 있습니다.

내 상사는 설득력이 없었기 때문에 처음부터이 팀에서 일한 방식이기 때문이다. 어떤 종류의 훈련 / 멘토링이 의무적이라는 결정이 내려 졌다고 가정한다면, 누구든지 나에게 더 나은 논증을 제공하거나 내가 왜 틀린지 말해 줄 수 있습니까? 당신의 팀은 무엇을합니까?

** 우리는 모두 선배가 반드시 역량을 나타내는 것은 아니므로 "고급 프로그래머"라고 가정하면 "최고 프로그래머"를 의미한다고 동의 할 수 있습니다.


1
이 질문을 "최고 프로그래머 대 중급 프로그래머 대 중급 프로그래머"라고 말했으면 좋겠습니다. 그래도 좋은 답변입니다.
smp7d

당신은 당신이 알고 그것을 편집 할 수 있습니다 ...
ChrisF

하, 이미 대답 한 사람들에게는 공평하지 않을 것입니다.
smp7d

나는 당신이 제목에 대해 이야기하고 있다고 생각했습니다 ...
ChrisF

그들이 항상 그렇게한다면, 일을하는 올바른 방법이어야합니다.
SoylentGray

답변:


11

나는 이전 회사에서 이런 상황을 겪었습니다. 단지 소수에 불과한 선임 개발자들은 점점 더 많은 주니어 개발자들에게 할당 된 다른 작업을 수행 할 수없는 수준까지 멘토링하고있었습니다. 얼마 지나지 않아 수석 개발자가 관리자와 함께 작업을 시작했으며, 주니어와 수석 사이의 어딘가에있는 개발자는 멘토 역할을하지만 어려운 문제에 대해서는 수석 개발자에게 문의 할 수 있습니다.

꽤 잘 작동했습니다. 그 이전에는 일부 선임 개발자가 직장에서 도전받지 않았기 때문에 새로운 일자리를 찾기 시작했습니다. 그 후, 그들은 새로운 기능을 수행하고 작업을 수행 할 수있었습니다. 수석 개발자는 상황에 대해 어떻게 생각하십니까?

제가보기에, 고위직이란 도메인의 전문성, 이메일 바닥 글의 제목 또는 근무 시간에 관한 것이 아닙니다. 또한 주니어 개발자를 돕고 안내하는 사고 방식입니다. 그리고 그렇게 선임되지 않은 멘토링을하는 것보다 팀에서 더 많은 선임 개발자를 얻는 더 좋은 방법은 무엇입니까?


2
이것은 현재 상황과 매우 흡사합니다.
smp7d

21

모든 최고 프로그래머가 최고 교사는 아닙니다. 나는 설명 할 수 있고 회사의 '환경'(기술적 인 것뿐만 아니라 연락처와 같은 조직적인 것)에 대한 개요를 가진 사람에 의해 훈련하는 것이 좋습니다.


확실히 사실이지만 올바른 질문은 "기술적으로 훌륭한 노인들이 더 많은지지와 경험이 적은 것을 가르치려고합니까?"일 수 있습니다. 나는 그들이 직업의 중요한 부분을 놓치고 있다고 생각합니다. 아무도 스스로 선배가 된 사람은 없다고 생각합니다.
zeroDivider 2018 년

7

나는 이미 말한 것들 중 일부를 반복하고 있지만 두 가지 견해가 있습니다.

비즈니스 : 비즈니스로서 생산성과 위험을 줄이려고합니다. 선임 개발자는 많은 작업을 수행하지만 시스템에 대한 지식을 이전하여 위험을 낮추기를 원합니다. 이 선배들에게 덜 중요한 일을 할 시간을 주어야하기 때문에 생산성에는 큰 영향을 미치지 않습니다 (주니어 개발자 교육). 시스템 외에도, 주니어 개발자들이 아직 알지 못하거나 이해하지 못하는 많은 분야가 있습니다.

존중 : 윙 아래에서 새로운 개발자를 고용하는 주니어는 일종의 맹인과 같은 종류입니다. 주니어는 아직 다른 사람들을 가르치는 모든 책임을 가지고 있지 않습니다. 또한 존중이 없을 수 있기 때문에 해결되지 않을 수 있습니다. 숙련 된 기술과 초보자의 기술이 그리 멀지 않기 때문에 하급 개발자에 대한 존중이 의문입니다. 문제를 함께 해결하는 것은 다른 이야기입니다. 초보 개발자 나 초보자까지 가르치는 것에 대해서는 의문의 여지가 없습니다. 우리는 두 사람이나 팀에서 존중이 부족할 때 재난이 기다리고 있음을 알고 있습니다 ...


6

이것을 다른 각도에서보십시오. 프로그래머들에게 어떤 종류의 기술과 지식을 전수하고 싶습니까? 선임 프로그래머가 실제 작업을 대부분 수행하는 경우 누가 어떤 시스템을 알고 있는지에 대해 약간의 격리를 유지하지 않습니까? 후배들에게 백업을 할 수 있도록 하급생들에게 시스템을 알도록하는 것은 잠재적으로 수년간 쌓아온 축적 된 지식에 대한 상급 지식이 여기에서 가장 중요하다는 점에서 취해야 할 논리적 인 방향입니다. 후배를 멘토링하는 선배들은 제 마음 속에 일종의 자연스러운 형성처럼 보입니다.

다른 주니어 프로그래머를 멘토링하는 주니어 프로그래머는 제 생각에 맞지 않습니다. 두 명의 주니어 프로그래머를 함께 사용하면 어떤 의미가있을 수 있습니다. 두 사람이 한 작업에 대해 함께 작업하도록함으로써 한 사람의 아이디어 만이 아니라 유용하게 사용될 수있을뿐만 아니라 팀이 서로 협력 할 수있는보다 협력적인 환경을 조성 할 수 있습니다. 환경에 따라이 작업을 수행하는 것이 의미가 있거나 그렇지 않을 수도 있습니다.


4

팀의 선임 프로그래머가 후배보다 더 많은 거래를 습득하지 못하고 팀 내에서 더 길거나 더 높은 사회적 / 정치적 지위를 가지고 있다면 실제로 큰 차이를 만들지 않습니다. 누가-누구든지-새로운 이민자를 멘토링합니다. 어쨌든 그들은 모두 평범한 수준의 평범함을 향해 끌려 갈 것입니다 ... :-(

선배 인 OTOH가 진정한 의미에서 실제로 마스터 프로그래머 (적어도 눈에 띄게 더 가까운)라면 큰 차이를 만들 수 있습니다. 주니어는 블록의 새로운 아이에게 최선이 아닌 관행을 쉽게 가르 칠 수 있습니다. 그리고 모범 사례를 배우는 것보다 차선책이나 나쁜 접근법을 나중에 배우는 것이 훨씬 더 어렵습니다 .

즉, 주니어가 재능을 가지고 있고 특정 도구, 기술 또는 영역과 관련하여 자신이하고있는 일을 알고 있다는 사실을 확실하게 입증했다면 실제로 해당 영역에서 유용한 트레이너 가 될 수 있습니다. .

그러나 특정 관점에서 볼 때 멘토링 / 훈련의 전체 요점은 선임자들이 어려운 과제 중 일부를 다른 사람에게 위임하여 실제로 힘든 일에 집중할 수 있도록하는 것입니다. 이런 일이 일어나기 위해서는 실제로 그러한 과제와 기술을 동료들에게 먼저 가르치고 잘 가르쳐서 과제를 한 번에 올바르게 인수해야합니다.


4

간단한 대답 : 훈련을하는 사람은 훈련을하고 싶은 사람도 훈련을 잘하는 사람이어야합니다.

어떤 사람들은 훈련과 멘토링을 즐깁니다. 어떤 사람들은 그것을 싫어합니다. 당신은 사람들이 미워하는 일을 원하지 않습니다. 그것은 그들에게 나쁘고, 훈련받는 사람에게는 나쁘고, 아마도 전체 팀에게는 나쁠 것입니다. 아무것도 추가하지 않습니다. 한편, 사람들이 자신이 좋아하는 일을하게하는 것은 그들과 팀에게 유익하며, 연수생이 약간의 열정을 가질 수 있기를 바랍니다.

마찬가지로 어떤 사람들은 훈련을 잘하고 어떤 사람들은 그렇지 않습니다. 어떤 사람들은 다른 사람들이 어떻게 행동하는지 이해하는 데 도움이되는 일종의 인간 상호 작용이나 지능이 있습니다. 트레이너는 훈련생이 이해할 수있는 방식으로 지식을 전달할 수 있어야합니다. 훌륭한 트레이너는 이것을 할 수 있으며, 연수생은 사람들이 배우는 다양한 방식으로 사물을 '이해', 사물을 '보거나', '할'것을 좋아한다는 것을 배울 수 있습니다. 나쁜 트레이너는 연습 연습 연설을 전달할 수없고 융통성이 없으며, 훈련생이 특유의 학습 방식을 따라 잡지 않으면 좌절 할 것입니다.

나는 당신이 훈련생들이 최고의 훈련을 받기를 원한다고 가정합니다-철저하지만 효율적입니다. '최고의 프로그래머'가 훈련을 원한다면 그렇게해야합니다. '주니어 프로그래머'가 결정을 내린다면 그들도 기회를 가져야한다. 그것은 몇 사람이 훈련 프로그램에 참여하도록 다치게하지 않습니다 - 당신이 결정할 수 방법 원하는 훈련을하고, 누구는 좋은 교육에서.

나는 당신이 훈련에서 나가기를 원하는 수석 프로그래머인지 (비판-당신이 더 중요한 일을하거나 사랑하지 않는) 프로그래머인지 또는 주니어 프로그래머인지 확실하지 않습니다. 그것에 들어가고 싶다. 그러나 어느 쪽이든, 당신은 당신이 즐기는 것을하려고 노력하고 있습니다-그리고 우리 모두가 즐기는 일을하고 싶지 않습니까? 행복한 직원은 더 나은 업무 환경과 더 나은 결과물로 이어집니다.


3

내가 일한 대부분의 회사에서 주니어 프로그래머는 3 년 미만의 경험을 가진 사람이었습니다. 멘토링 경험이있는 숙련 된 프로그래머로서 특정 주제에 대한 훈련을 위해 주니어 프로그래머에게 새로운 프로그래머를 추천하는 숙련 된 프로그래머로서 기쁘지만 모든 멘토링 책임을 여전히 멘토링 감독이 필요한 사람에게 위임하기보다는 통제력을 유지하고 싶습니다 그들 자신.


2

비즈니스 규칙 및 디자인 지침과 같은 것이 상급 프로그래머가 주니어 개발자 또는 새로 고용 된 상급 / 전문가 개발자 또는 계약자에게 전달할 수있는 가장 중요한 것임을 알게되었습니다. 이 핵심 정보가 저장되어 있거나 설명되지 않은 경우 문제가 발생합니다. 아마도 이것은 관리자가 실제 프로그래밍 지식보다 더 걱정하는 것입니다.

프로그래밍 지식 자체에 관해서는 모든 수준에서 그룹 전체에 가장 잘 전달됩니다. 숙련 된 프로그래머조차도 특히 복잡한 개발 프레임 워크에서 새로운 것을 배우게됩니다. 이 공유는 점심과 학습 세션에서와 같이 공식적이거나 시간이 허락 할 때 비공식적 인 토론을 통해 이루어질 수 있습니다.


1

저는 멘토가 조직의 최고 프로그래머보다 한두 단계 아래에있는 것을 선호합니다.

그에 대한 몇 가지 좋은 이유를 제시했지만, 특히 중요하다고 생각하는 것이 하나 더 지적 될 것입니다. 교수는 최고의 학습 방법 중 하나입니다. 큰. 이 중 하나 개 특히 중요한 부분은 단지에 학습 뿐만 일을하지만, 좋은 작업을 할 관절 당신이 무슨 일을하는지 그 이유를. 나는 왜 특정한 방식으로 무언가를하는 이유를 잘 설명하기 위해 앉아서 1) 내 자신의 이해가 상당히 향상되고 2) 종종 내 작업을 개선하기에 충분한 상황을 재평가합니다.

비록 그들이하는 것이 더 어려울 수 있지만, 이것은 동료에 비해 사회적 기술이 다소 부족한 프로그래머에게 특히 도움이 될 수 있습니다. 순수한 코딩에서 멘토링과 같은 더 많은 사회적 측면으로 그들의 안락 지대에서 조금 벗어나면 멘토링하는 사람들만큼 도움이 될 수 있습니다. 하지만 그렇게하려면, 누가 짝을 지을 것인지에 대해 특히주의해야합니다. 잘못된 페어링은 두 사람 모두에게 상처를 줄 수 있습니다.


0

멘토 들이 자원 봉사 를 할 때 가장 잘 작동한다고 생각합니다 . 이 주변에는 공식적인 멘토링 절차가 없습니다. 때때로 우리의 관리자는 특정한 것을 염두에두고 있지만 다른 사람들은 "누군가 새 사람을위한 프로젝트에 대해 좋은 아이디어를 가지고 있습니까?"와 같이 말합니다. 최고의 아이디어를 가진 사람은 멘토링을합니다.

결국 새로운 채용은 학습 곡선 시간을 감당할 수 있고 프로젝트에 가장 익숙한 사람이 멘토링하는 프로젝트에 투입됩니다. 10 개월 또는 10 년 동안 여기에 있었던 사람 일 수도 있습니다. 때때로 사람들은 멘토에게 약간의 멘토링을하게되지만, 새로운 사람들은 여전히 ​​새로운 사람들의 어려움과 그들이 극복 한 방법을 기억한다는 이점이 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.