프로젝트 또는 코드를 측정하기 위해 The Joel Test를 사용할 수 있지만 프로그래머가 얼마나 좋은지 측정하고 필터링 할 수있는 간단한 표준 테스트 (Joel Test와 같은)가 있습니까?
내 계획은이 테스트를 먼저 빠른 필터로 사용하여 더 자세한 테스트를 진행하는 것입니다.
프로젝트 또는 코드를 측정하기 위해 The Joel Test를 사용할 수 있지만 프로그래머가 얼마나 좋은지 측정하고 필터링 할 수있는 간단한 표준 테스트 (Joel Test와 같은)가 있습니까?
내 계획은이 테스트를 먼저 빠른 필터로 사용하여 더 자세한 테스트를 진행하는 것입니다.
답변:
있다 프로그래머 역량 매트릭스 .
Joel 테스트와 마찬가지로 모호한 가이드 일뿐입니다. 프로그래머를 올바르게 평가하는 유일한 방법은 그들과 함께 일한 좋은 프로그래머에게 물어 보는 것입니다.
나는 Joel 테스트를 돌리겠다.
그들은 소스 컨트롤을 사용 했습니까?
그들은 한 단계 빌드를 자동화하는 방법을 알고 있습니까?
...
특별히 적용 할 수없는 유일한 것은 테스터 질문입니다. 이것으로 바뀌는 다른 것들이 우리가 그것을 처리하는 방법입니다. 이는 과거의 질문에서 어떻게 처리했는지입니다 (이것은 우리가 일정을 최신 상태로 유지하는 방법을 어떻게 처리 했습니까?) .
편집하다:
기본적으로 Joel 테스트에서 무료로 물건을 얻지 못하므로 그것을 달성 할 수있는 사람들을 고용해야합니다. 그런 일을 할 수있는 능력을 확립하려고합니다.
Joel 테스트는 장소가 프로그래머에게 좋은 근무 조건을 가지고 있는지 신속하게 판단하기위한 비공식 기준선 점검입니다. 10 점 만점에도 불구하고 6 개월 동안 파산하게 될 지옥의 구멍이 될 수 있습니다. 낮은 점수는 옳지 않은 것을 나타내며 훌륭한 인터뷰 질문을합니다 ( "현재 소스 제어를 사용하고 있지 않습니다; 앞으로 그렇게 할 계획이 있습니까?"). 당신은 낮은 Joel 점수에도 불구하고 직업을 받아 들일 것입니다.
Joel 테스트는 '표준'테스트도 아닙니다. Joel Spolsky가 자신의 블로그에 게시 한 점검 목록 일뿐입니다.
프로그래머의 품질을 '측정'하는 한, 불행히도, 훌륭한 프로그래머의 정말 중요한 기술과 자질은 정량화하기 어렵거나 불가능하므로 철저한 인간 평가를 대체 할 수는 없습니다. 아주 간단한 프로그래밍 작업을 사용하여 완벽하게 단서가없는 후보자를 쉽게 제거 할 수 있습니다. 이상적으로는 재귀, 트리 구조 또는 포인터 (이를 '얻지'않는 프로그래머는 많이 사용되지 않을 것임)와 관련이 있습니다. 이 테스트를 통과 한 사람들은 수동으로 기술을 평가해야합니다. 작성한 코드 읽기, 작성한 드라이브 응용 프로그램 테스트, 더 많은 프로그래밍 작업 (설계 및 구현), 작업 확인, 대화,보고 있는지 확인해야합니다. 전문적인 토론을 촉발시킬 수 있습니다. 전문가 / 언어 전문가를 찾고 있다면
("You're not currently using source control; are there any plans to do so in the future?"), and the answers might be such that you'd accept the job despite a low Joel score.
그건 그렇고 당신은 그 일을 받아들이는 실수를 범했을 것입니다. 결국 모든 개발자는이 배우는 Plans to do so in the future
바로 인터뷰가 당신을 속이는 말을 뭔가하지만 때문에 끔찍한 관리의 조치를 취할 결코. 우리는 몇 번이나 영향을 Oh, we are moving towards Agile...
받았으며 또 다른 미세 관리 폭포 상점으로 밝혀졌습니다.
네:
여가 시간에 프로그램을하십니까?
내 경험에 비추어 볼 때,이 단일 질문은 프로그래머가 얼마나 좋은지를 나타냅니다. 그들이 그것을 즐긴다면; 그들이 일을하는 것에 대한 열정이 있다면, 그들은 잘 할 것입니다.
솔직히 많은 9-5 개의 일자리에는 많은 코딩이 필요하지 않습니다 . 새로운 프로그램을 설계하고 설계가 어떻게 작동 / 실패 하는지를 살펴 보는 수명주기를 거칠게 반복하지 않아도됩니다. 반복이 없으면 프로그래머가 핵심 프로그램 설계 기술을 습득하는 데 필요한 관행은 아닙니다.
그리고 그들은 많은 학습을 포함하지 않습니다. 집에서 일을 해킹하는 프로그래머조차도 대기업의 제약없이 새롭고 흥미로운 솔루션을 모색 할 것입니다.
Joel 테스트만큼 자세한 내용은 아니지만 피즈 버즈 프로그램을 작성하도록 요청하면 코드를 작성할 수 있는지 확인할 수 있습니다.
http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.html 및 http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers- who-grok-coding /
그것은 개인의 소프트웨어 공학 성숙도에 대해 말하지는 않지만 더 나빠질 것입니다.
소스 컨트롤을 사용하십니까?
네,하지만
한 번에 빌드 할 수 있습니까?
당신은 매일 빌드합니까?
버그 데이터베이스가 있습니까?
예, 그러나 구성하지 않았으며 관리하지 않고 간단히 사용합니다.
새 코드를 작성하기 전에 버그를 수정합니까?
최신 일정이 있습니까?
아니, 그건 내 일이 아니야
사양이 있습니까?
사양을 얻은 다음 분석하여 관련 문서를 생성합니다.
프로그래머에게는 조용한 근무 조건이 있습니까?
돈으로 살 수있는 최고의 도구를 사용하십니까?
당신은 최고의 도구가 무엇인지 모르며, 그렇게 생각한다면, 항상 당신의 요점을 주장 할 누군가가있을 것입니다.
테스터가 있습니까?
예. 사실, 그렇습니다. 그들은 그리 좋지는 않지만 질문에는 없었습니다.
인터뷰 중에 새로운 후보자가 코드를 작성합니까?
그렇습니다 그리고 그들은 실패합니다. 그렇습니다. 이것이 무엇을 말합니까?
복도 유용성 테스트를합니까?
아니요,하지만 더 나은 일을하면 어떨까요?
결론적으로:
이것은 진창이 아니지만, 내가 제공 한 답변을 기반으로 어떤 종류의 개발자라고 생각하는지 듣고 싶습니다. 이것은 희망적으로 내 요점을 증명할 것입니다.
How do you know whether I pull changes before pushing?
글쎄, 어떤 소스 컨트롤을 사용하고 있는지 모르겠지만 적어도 SVN에서는 아직 변경하지 않은 변경 사항이있는 폴더에 커밋하려고하면 업데이트를 실행할 때까지 커밋이 실패합니다.