코드 샘플과 인터뷰? [닫은]


23

답변을 통해 누군가가 인터뷰 과정 외부에서 코딩 된 포트폴리오 또는 코드 샘플을 사용하여 후보자를 판단하지 않을 것이라고 주장한 곳에서 여러 가지 질문을 보았습니다. 다른 사람이 작성한 코드입니다. 나는 이것에 놀랐다.

내가 보는 방식으로 누군가가 들어 와서 간단한 문제를 해결하도록 요청하면 내가 배울 수있는 것이 거의 없습니다. 저는 구직을 원하는 Google과 같은 회사에서 일하지 않으며 누군가의 시간을 요구할 수 있습니다. 그러나 취미로 작성된 상당한 코드가 나에게 많은 것을 말해 줄 수 있습니다.

그렇습니다. 표절의 가능성이 있지만 코드에 대해 한 시간 동안 긴 토론을하려면 잘 훈련을 받아야합니다. 그리고 그러한 경우에, 그들은 3 개월의 집행 유예를 통과하기 위해 매우 빠른 학습자가되어야합니다 (이유와 통지없이 그들을 제거 할 수 있습니다). 그들이 충분히 빠르고 공정하게 좋은 프로그래머가된다면, 나는 속은 사람이지만, 여전히 좋은 프로그래머가 있습니다.

결국, 우리 회사에 대한 비용과 표절 후보자에 대한 혜택은 매우 적습니다.

이것은 다른 산업에 대해 생각하게했습니다. 예술가, 사진가, 디자이너는 모두 포트폴리오를 사용하며 아무도 표절에 대해 너무 걱정하지 않습니다. 작가는 자신의 시간에 쓴 챕터를 기반으로 책에 대한 자금을 지원받을 것입니다. 인터뷰에서 건축가에게 와서 집의 디자인 사양을 그리도록 요구하지 않을 것입니다.

그렇다면 우리를 어떻게 차별화시킬까요? 인터넷과 같이 일상적으로 사용하는 도구에 액세스하지 않고 컴퓨터 앞에 누군가를 배치하여 데이터 병합 또는 계승 계산기를 작성하는 것이 왜 그렇게 중요한가? 코드 포트폴리오의 개념에 어떤 문제가 있습니까?

나는 아직 나를 태우지 않은 큰 실수를 저지르는 경우를 대비하여 진정으로 알고 싶습니다.

답변:


14

포트폴리오에 대한 저의 반대 의견은 인터넷에서 코드를 복사하거나 개발자 팀이 작성한 코드를 작업으로 전달하는 사람이 회사를 속이는 위험과 아무 관련이 없습니다. 올바르게 지적했듯이 개발자가 처음부터 팩토리얼 계산기를 코딩하여 가능한 한 일반적으로 1 시간 동안 익숙한 프로젝트에 대해 이야기하도록함으로써 최소한 많은 것을 배울 수 있습니다.

포트폴리오에 대한 저의 반대는 포트폴리오를 요구하면 많은 재능있는 개발자들이 고려할 필요가 없다는 것입니다. 나는 예술 가나 사진 작가와는 달리 내가 만든 코드에 대한 저작권을 보유하지 않습니다. 코드는 고용주 및 / 또는 고용주와 계약을 맺은 회사의 소유입니다. 흥미로운 "코드를 작성했습니다. 내 시간에 코딩하는 경우 일반적으로 직장에서 부수적 인 프로젝트로 진행되어 내 인생을 더 쉽게 만들거나 포트폴리오에 표시 할 수없는 버그가 있습니다. 다양한 포럼에 수많은 게시물이 있지만 대부분 설계 상 상대적으로 얕습니다. 비슷한 위치에있는 상당히 많은 개발자가 있습니다. 흥미로운 코드는 다른 사람이 소유하고 있습니다. 만약 너라면'

모든 응시자들이 최소한 처음부터 무언가를 코딩하도록 요구되는 기술 인터뷰는 최소한 레벨 경기장을 제공합니다. 당신이 전화 화면을 수행하는 합리적인 일을하고 후보자를 합리적인 목록으로 좁힐 수 있다고 가정하면, 후보자에게는 8 시간의 노력이 필요하다는 것을 해결하는 데 문제가 있습니다. 저작권 문제가없는 일관된 장난감 앱 포트폴리오를 만드는 것보다


1
+1 좋은 답변입니다. 후속 질문 : 코드 샘플을 요청하면 설명하는 후보자가 내 선택의 문제가 아닌 자신의 문제를 해결하는 데 8 시간을 소비하지 않도록 선택할 수 있습니까? 나는 그것을 많이 존중할 것입니다.
pdr

3
특정 프로젝트 오일러 문제와 같이 일반적이고 고안된 문제는 후보자가 자신의 문제를 생각해내는 것보다 더 나은 결과를 얻고 후보자를 더 배려해야합니다. 잘 정의 된 중지 지점이 있기 때문에 응시자에게 친절합니다. UI를 연마하거나 "하나 이상의 기능"을 추가하는 데 시간을 소비 할 압력을받는 사람은 아무도 없습니다. 유사한 문제를 해결할 때 후보를 비교하는 것이 훨씬 쉽기 때문에 더 좋습니다. 그렇지 않으면 누가 가장 멋진 아이디어를 얻었는지 또는 시각적으로 가장 좋은 사람이 영향을받지 않습니다.
저스틴 동굴

물론 코드 샘플을 보유하는 것이 클라이언트 측 웹 개발자에게는 더 합리적인 기대이지만 필자가 경험 한 최고의 인터뷰 형식은 내가 작성한 코드를보고보고 좋아하는 것에 대한 생각을 나누는 것으로 구성되었습니다. 나는 더 잘했습니다 ... 그리고 인터뷰 개발자가 작성하고 똑같이하는 코드를보고 있습니다. 총격전 스타일 인터뷰, IMO보다 양 당사자에게 더 많은 가치가 있습니다. Google의 허위 부정적 접근 방식은 내가 그들을 위해 일하고 싶지 않은 이유입니다. 어색하고 우아하고 낭비입니다. 그들의 JavaScript처럼.
Erik Reppen 2016 년

6

우선, 우리는 예술가가 아닌 엔지니어입니다. 우리는 팀에서 일하기 때문에 실제 작업 경험에서 "우리의"코드는 종종 팀워크의 결과입니다. 왜냐하면 실제 작업이 일반적으로 수행되는 방식이기 때문입니다. 독점 소유권을 주장 할 수있는 전문 코드는 많지 않습니다.

둘째, 내 가상 포트폴리오의 대부분의 코드는 기밀이기 때문에 다른 사람에게 보여줄 수없는 코드입니다. 개인 애완 동물 프로젝트를 위해 만든 코드는 반드시 모든 기술과 일반적인 작업 동작을 반영하지는 않습니다.


4

소프트웨어 실무자로서 많은 시간을 인터뷰했습니다. 퀴즈와 장난감 프로그래밍 과제가 귀중한 대역폭을 낭비한다고 생각하는 시점에 도달했습니다. 퀴즈와 장난감 프로그래밍 과제는 면접관이 아는 것을 테스트하는 역할 만합니다. 응시자가 알고있는 것을 측정하는 정확한 방법은 아닙니다. 내 경력의이 시점에서, 나는 인터뷰가 끝날 때 자신의 시험을 관리 할 기회가 주어 졌을 때만 이런 종류의 말도 안되는 것을 받아들입니다.

소프트웨어 실무자의 능력을 평가하는 가장 좋은 방법은 침착하고 안심할 수있는 목소리로 대화하는 것입니다. 후보자에게 자신의 현재 위치가 무엇을 수반하는지 토론하도록 요청하십시오. 응시자가 관심 분야를 제시하면 해당 분야에 대해 자세히 설명해달라고 요청하십시오. 여기서 목표는 후보자가 경비를 버리도록하는 것입니다. 어떤 코칭도 "소프트 터치"심문 후보를 준비 할 수 없습니다. 조만간 올가미는 인터뷰를 통해 자신의 방식으로 BS를 시도하는 후보자의 목을 꽉 조일 것입니다.


2

지원자를위한 코드 샘플을 요청하며 인터뷰 중에 참조됩니다. 그러나 나는 보통 인터뷰 중에 수행 된 화이트 보드 코딩에 더 많은 가중치를 부여합니다.

내가하는 모든 개발자 인터뷰에는 간단한 문제에 대한 솔루션을 구현하기 위해 화이트 보드를 방문하는 것이 포함됩니다. 그러나 규칙이 있습니다.

신청자는 구현을 통해 대화를해야합니다.

  • 그들이 어떻게 문제에 접근하는지 측정 할 수 있습니다.
  • 의사 소통이 얼마나 잘되는지 알 수 있습니다.
  • 나는 분명한 목표로 얼마나 빠른지 측정 할 수 있습니다.

구현이 모두 비슷한 세 가지 문제가 있으며 작성한 코드를 재사용하거나 리팩터링 할 수 있음을 알립니다.

  • 그들이 더 큰 그림을보기 위해 뒤로 당겨질 수 있는지 알 수 있습니다.
  • 그들이 구현하고 리팩토링하는지 또는 일반화로 넘어갈 수 있는지 알 수 있습니다.
  • 나는 그들의 생각이 얼마나 잘 정돈되어 있는지 더 확고한 아이디어를 얻을 수 있습니다.

이 모든 면담의 요점은 지원자들의 능력과 그들이 직업과 어떻게 어울릴 수 있는지에 대한 좋은 아이디어를 얻으려고 노력하는 것입니다. 내 경험에서 인터뷰의 "실제적인"부분은 그 점에서 상당히 도움이되었습니다. 또한 프로그램 방법에 대해 더 많이 알고 있기 때문에 샘플 코드를 평가하는 데 도움이됩니다.


1

코드 샘플은 후보자를 제거하는 매우 효율적인 방법입니다. 5-10 분 안에 코드 샘플을 판단 할 수 있지만 전화 화면도 15 분이 걸리고 일정이 필요합니다. 내 경험에 더미의 하단).

코드 샘플에 대한 주요 반대 의견은 두 가지이며, 쉽게 극복 할 수 있다고 생각합니다.

  • 코드 샘플이 필요하면 일부 재능있는 개발자에게 인공 장벽이 생깁니다.

분명히 이것은 사실입니다. 응용 프로그램 또는 채용 프로세스의 모든 장벽은 잠재적으로 바람직한 후보를 제거 할 수 있습니다. 여기서 중요한 것은 청중을 아는 것입니다. 한 번의 개회에 이력서가 1000 개 있으면 효율성을 높이는 데 부정적인 부정을 줄 수 있습니다. 이력서가 다섯 개인 경우 선별 과정에서 약간의 비효율을 줄 수 있습니다.

그러나 대부분의 사람들이 그리워한다고 생각하는 것은 인터뷰와 채용이 기본적으로 " 이 사람을 고용 하지 않는 이유를 찾는"게임 이라는 것입니다. 괜찮은 직업에는 많은 유자격 지원자가 있습니다. 마지막 순위는 대개 길을 따라 적기를 설정하지 않은 것입니다. 사람들이 가장 잘 보거나 비공식적이지만 쉽게 구할 수는 있지만, 당신이 편한 10 명의 다른 후보자들을 만나게되므로 고용에 큰 도움이되지 않습니다. 그것은 결정에 더 가까이 가지 않습니다.

검토, 선별, 인터뷰 등의 방식으로 수집 한 모든 소문은 잠재적으로 결정을 내릴 수 있습니다. 고용되지 않은 트리거의 민감도와 현재 (및 잠재적 인 미래) 전망과 균형을 맞춰야합니다. 레거시 코드, 관료주의 및 열악한 급여가 많은 지루한 산업에 종사하는 경우 트리거는 Google보다 덜 민감해야합니다. 그렇지 않으면 다른 사람을 고용하지 않을 위험이 있습니다.

개인적으로 가장 쉬운 타협은 요청 했지만 요구 하지는 않았다는 것을 알았습니다.코드 샘플. 하나를 얻으면 후보를 평가할 추가 데이터 포인트 일뿐입니다. 마찬가지로, 과거에 후보자와 일한 지인이 있다면, 지인의 의견에 약간의 무게를 두겠습니다. 내가 아는 사람과 함께 일하지 않았다고해서 후보자를 실격시킬 수는 없다. 이는 단지 그들을 평가하는 내 직업이 조금 더 어렵다는 것을 의미한다. (면접에 응시하면 코딩 연습이 포함될 것이다). 당신의 표본이 나쁘거나 (나의 아는 사람이 당신에게 나쁜 입을 가지고 있다면), 그것은 거의 고용이 아닙니다. 샘플을 제공하는 사람은 이력서 스택 및 샘플의 품질과 수량에 따라 정보가없는 것보다 더 많은 정보가 더 좋거나 나쁠 수 있습니다.

  • 샘플은 쉽게 위조됩니다

그래 이력서도 있지만 우리는 여전히 이력을 수집합니다. 왜? 세 가지 주요 이유-이력서 또는 샘플이 불량하면 고용이 쉽지 않으며 이력서 또는 샘플을 가짜로 잡는 것은 고용이 용이하지 않으며 인터뷰에서 좋은 대화 주제입니다. 후보를 더 빨리 알아낼 수있을수록 모두에게 더 좋습니다.

좋은 샘플을 포착하지 않고 표절 할 정도로 똑똑하다면 지능적으로 이야기하고 인터뷰를 통과하십시오. 특히 심사를 통과 한 방법에 대해서는 문제가 없습니다. 여기에는 윤리적 인 문제가있을 수 있지만 실제로는 내 전문 분야가 아니므로 인터뷰 중에 도덕적 성격을 평가할 수있는 방법이 없습니다. 나에게는 상사와 같이 심사 과정을 거치지 않은 사람을 호의적으로 인터뷰하도록 요청하는 것과 거의 동일합니다. 인터뷰 단계에 들어가면 인터뷰 중에 나오는 훨씬 더 많은 정보가 있기 때문에 실제로 어떻게 도착 했는지 는 중요하지 않습니다 .

TL; DR- 코드 샘플은 훌륭한 스크리닝 도구이지만 필요한지 여부를 신중하게 고려해야합니다. 스크리닝이 지나면 샘플보다 인터뷰의 가중치를 높입니다.

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