기술적 인 재능이 있으면 성공적인 개발자가 되기에는 충분하지 않습니까? [닫은]


18

" 스택 오버플로에서 높은 평판이 좋은 직업을 얻는 데 도움이 될 것입니까? " 라는 훌륭한 질문에 대해 많은 논의가있었습니다 . 나는 즉시 기본적으로 " 아니오 " 라고 말한 JoshK에 동의 했지만, Joel 그를 설득시키는 많은 설득력있는 사실을 발견했습니다.

제 질문은 개발자에게 어떤 기술 (기술적 재능이 아닌 것)이 필요합니까? 직업을 구하거나 유지 하기 위해 .

천재가되는 것만으로는 충분하지 않다고 생각합니다. 나는 내가 일한 여러 회사에서 많은 기술 천재를 만났다. 그러나 슬프게도 많은 경우에, 그들은 몇 달 후에 해고되거나 상아탑에 넣었다 (주로 다른 개발자의 내부 반란 때문에). 내가 이해 한 결과로 많은 사람들이 개인적인 고통을 겪었습니다.

이것이 제가 기술직에 대한 비 기술적 질문을 좋아하는 이유입니다. 후보자가 다른 사람 (기술이 아닌 직원 포함)과 어떻게 상호 작용하는지, 원하는 결과를 위해 일할 경우 사업에 대해 얼마나 고려해야 할지를 알고 싶습니다.

개발자에게 필요한 것이 무엇인지 알고 싶습니다. 중요한 이유 는 무엇입니까 (결국 누군가 코드를 작성하도록 고용하지 않습니까? 왜 자기 주장을 주장하고 싶습니까?) . 이상적으로, 나는 당신이 당신의 답변을 지원하기 위해 인터뷰 하는 동안 당신이 물어볼 예제 질문을 제시하고 싶습니다 .


우리 회사는 주민들을위한 상아 급여를받은 상아탑이 있습니다. (
Dr Hannibal Lecter

보기는 상아탑 꼭대기에서 훌륭합니다 :)

높은 명성으로 StackOverflow 경력에 대한 프로필을 작성하라는 초대를 받았습니다. 채용 담당자가 시애틀로 이전하라는 제안을 받았습니다. :-)
kevin cline

답변:


22

훌륭한 의사 소통 능력.

동료가 뇌를 직접 읽을 수없는 경우 자신의 생각을 말할 수 있어야합니다. 구두와 서면 모두 바람직하다.


편집합니다 방법은 면접 시간에 그들을 볼 수 있습니다 X를 수행하는 자신이 좋아하는 프레임 워크가 무엇인지를 물어, 그리고 그 때 X를 사용할 수있는 프로젝트에 대한 작업을 할 필요가 있다고하지만, 사용 기술에 대한 정치적 결정이다 Y (확실히 오래되었으며 X가 해결하는 몇 가지 제한 사항이 있습니다).

이것이 정치적 결정이 왜 틀린지에 대한 논쟁으로 끝나는 경우, 당신은이 사람이 실용적 결정을 잘 못하고 있음을 강력하게 나타냅니다.


고도의 기술적 인 일에 대해 비 기술적 인 사람 (예 : 관리 또는 고객)과 의사 소통하는 방법에 대한 자세한 내용을 추가 하시겠습니까? 나는 현재 "Geek Can Speak Can"이라는 주제에 관한 훌륭한 책을 읽고 있습니다.

THEIR 사고 방식으로 생각할 수 있다면 본질적으로 질문 일뿐입니다. 한때 "우리는 뜨개질 레시피를 작성합니다"라는 소프트웨어 개발을 설명하는 것이 할머니의 사고 방식에 잘 맞는다는 것을 알게되었습니다.

3
저는 항상 영어를 잘 구사하고 쓰기 및 구두 의사 소통 기술을 익힐 시간이 더 필요한 학생들을 선호합니다. 다른 한편으로, 인생이 트위터 위에 배치 된 또 다른 애플리케이션 인 것처럼 말하거나 글을 쓰면 문을 보여줄 때 정중하게 최선을 다할 것입니다.
Adam Crossland

@Pierre,이 책은 온라인으로 사용할 수 있습니까? Safari에서 찾을 수 없습니다.

1
@ Pierre303 "The Nerd Handbook"이 흥미로울 것입니다. randsinrepose.com/archives/2007/11/11/the_nerd_handbook.html . 저자는 매우 흥미로운 블로그를 가지고 있습니다.

15

팀워크 / 커뮤니케이션 :

  • 해결책이나 문제를 설명 할 수 있도록
  • 기분이 나 빠지지 않고 다른 사람들과 함께 일할 수있는 것

이러한 기술이 없으면 팀에서 일할 수 없으며, 그렇게 할 수 없다면 회사가 필요하지 않습니다 (그리고 거의 모든 팀워크가 자연스럽게 필요합니다). 다른 사람들과 함께 일하지 않는 프로젝트에는 여전히 프리랜서가되어 작업 할 수 있지만 여전히 다른 회사의 사람들과 의사 소통해야합니다.

학습을 위해서라도 웹과 같이 많은 다른 사람들과 의사 소통을 할 수 없다면, 실생활과 사회 (직종이 무엇이든)에서 더 잘 할 수 없을 수도 있습니다.

편집> 인터뷰에서 팀워크 / 사회화 / 통신은 정말 쉽게 확인할 수 있습니다. 가장 쉬운 방법 일 수 있습니다. 기술이 아닌 몇 가지 질문, 대답하기 쉬운 질문 또는 후보자가 어떤 것에 대해 어떻게 생각하는지 또는 도메인이나 다른 영역에서 후보자가 좋아하거나 싫어하는 것에 대한 질문 만하면됩니다. 대화하게 해 당신은 볼 수.


15

Persistance는 많이 언급되지 않은 기술입니다. 그리고 그것은 기술입니다-당신이 끝을 볼 수 없어도 문제를 통해 일할 수있는 능력입니다. 많은 사람들이 이것을하지 않습니다. 그것들은 운동량에만 작용하거나, 최소한의 노력을 기울입니다. 불행히도, 사람과 대화하여이 특성을 가지고 있는지 알 수있는 방법은 없습니다. 그 사람과 함께 일한 다른 사람들과 대화 할 수 있어야합니다. 참조가이를 수행 할 수 있지만 해당 옵션을 항상 사용할 수있는 것은 아닙니다.


지속성 의견 +1-높은 SO 담당자가 지속성과 상관 관계가 있는지 궁금합니다.
Gary Rowe

@ 게리-세미콜론이나 뭔가 빠진 초보자 질문이 아니라 해결해야 할 몇 가지 질문에 대한 답변으로 얻은 경우 가능하다고 생각합니다. ;)
Michael K

12

이것들은 기술보다 더 많은 특성이지만, 나는 이것이 성공적인 개발자가 될 수있는 누군가에게서 여전히 가치가 있다고 제안합니다.

다양성 은 내가 거기에 넣은 또 다른 특성입니다. 때때로 개발자는 비즈니스 분석가, 설계자 또는 테스터와 같은 순수한 개발 이외의 역할을 수행해야 할 수도 있습니다. 코드를 디자인하거나 작성하는 것 이외의 작업을 수행하는 프로젝트에서 다양한 부분을 가지고 있다는 것을 알고 있으며 다른 곳에서 볼 수 있어야합니다. 모든 사람이 다른 역할을 맡을 수는 없습니다. 과거에 개발자가 다른 역할을 수행해야했던 상황과 그 결과를 묻습니다.

겸손 은 내가 요구 사항으로 생각할 수있는 또 다른 것입니다. 자아는 어떤 곳에서 많은 문제를 일으킬 수 있으며, 모든 사람이 자신보다 더 나은 사람이있을 수 있다는 것을 모든 사람이 받아 들일 수는 없습니다. 다른 사람이 더 나은 아이디어를 가지고 있다면, 그렇게하는 것이되도록하십시오. 개발자 코드를 비판하고 그들이 얼마나 잘 스스로 교정 할 수 있는지 확인하도록 요청하는 개발자 코드 샘플이있을 수 있습니다.

교만 은 거기에 내려 놓을 또 다른 것입니다. 이것은 이전의 품질과 다소 대조적이지만 누군가 자신의 작업에 자부심이 없다면 어떤 종류의 품질이라고 생각하십니까? 아마 많은 개발자들이 완벽 할 수 있기 때문에 만족스럽지 않은 것은 여기서 약간 다릅니다. 그들이 과거에 어떤 프로젝트를 가장 자랑스럽게 생각합니까?

자기 동기 부여 도 중요한 기술이 될 것입니다. 무엇이 그들을 운전합니까? 그들은 이것을 얼마나 잘 설명 할 수 있습니까? "사무실 공간" 에는 Peter Gibbons의 다음 줄이 있습니다.

여덟, 밥. 즉, 실수를 할 때 8 명의 다른 사람들이 오게됩니다. 그것은 나의 유일한 진정한 동기가 번거롭지 않아야한다는 것입니다. 하지만 밥은 누군가 해고 당하지 않도록 열심히 일할 것입니다.

그것은 많은 개발자들과 비 개발자들이 관련이 있다고 생각하는 것입니다. 왜 일을합니까? 이것은 좋은 질문이 될 수 있지만, 때로는 미리 준비된 답변이 발견 될 수 있기 때문에 응답에서 진실성과 진정성을 찾아보십시오.

호기심 은 마지막으로 추가 할 것입니다. 무언가가 어떻게 작동하는지, 새로운 기술을 배우고 자신의 안락 지대를 벗어나려는 욕구는 성공적인 개발자에게서 찾을 수있는 또 다른 지표입니다. 어떤 사람이 개발에 들어가는 방법에 대한 짧은 이야기는이 특성을 보는 방법 일 수도 있지만, 다른 사람은 보지 않은 것에 대해 물어보고 그들이 "탐색하기에 흥미로울 수 있습니다"또는 " 오, 다시는 아니야. "


고마워요, 이미 몇 가지 훌륭한 답변이 있지만, 당신이 내가 찾고있는 답변이었습니다. 더 많은 사람들이 더 나은 프로그래머가되기 위해 더 많은 기술을 개발할 수 있기를 바랍니다. (오늘은 더 이상

7

1) 커뮤니케이션은 아마도 소프트웨어 엔지니어링 유형을 포함하여 모든 사람에게 가장 중요한 기술 일 것입니다. 이러한 의사 소통 기술은 동료를 대할 때와 마찬가지로 관리자 및 고객을 대할 때도 중요합니다.

2) 팀워크는 첫 번째 기술에 크게 의존하는 약간 다른 기술입니다. 본질적으로, 내가 고용하려고하는 사람이 팀 전체에 도움이되는지, 아니면 잠재적으로 고용하고있는 성격상의 갈등이 있는지를 결정해야합니다. 아무도 미래를 예측할 수는 없지만 인터뷰에서 경고 표시를 무시할 수는 없습니다.

인터뷰 과정에서 사용하는 한 가지 전술은 그 사람에게 더 어려운 기술적 인 문제 (상담 할 수있는)와 그 해결 방법을 설명하도록 요청하는 것입니다. 그들이 추론 과정과 문제를 어떻게 발견했는지 이야기하면서 잠재적으로 복잡한 것들에 대해 얼마나 잘 의사 소통 할 수 있는지 더 잘 알 수 있습니다. 그들이 그 과정에서 추가적인 도움을 구한다면, 나는 그것을 플러스로 본다. 우리 중 누구도 완벽한 기술자는 아닙니다. 그들이 선택한 문제로 인해 한 번만 발생한 성격 충돌이 발생하면 조금 더 깊이 통과하거나 조사 할 수 있습니다.

여러면에서 면접 과정은 소개팅을하는 것과 같습니다. 두 사람 모두 최선을 다해 상대방과 더 많은 시간을 보내고 싶은지 알아 내려고 노력하고 있습니다. 대화처럼 대화를 더 많이 전달할수록 면담자가 더 편안해집니다. 결과적으로 그들이 잘 맞는지 더 잘 볼 수 있습니다.


6

개별 개발자보다 팀에 더 적합 할 수있는 품질이지만 "훌륭한 엔지니어 배송"이라는 말 뒤에는 많은 것이 있다고 생각합니다.

대부분의 사람들을 대상으로 한 인터뷰에서 시연하기 어려운 것이지만, 예를 들어 실질적인 오픈 소스 응용 프로그램, 라이브러리 또는 프레임 워크를 작성하여 제공 한 후보를 인터뷰 할 경우 추가 사항에 대해 설득력있게 이야기 할 수 있습니다. 실제로 사소한 프로젝트를 마치려면 시간이 필요합니다. 나는 그 사람에게 경쟁에 대한 다리를 주어야 할 것입니다.

반대로, 잠재적 인 후보자가 그의 Github 계정으로 나를 가리켜 서 반 완료, 버그, 소홀히하거나 문서화가 잘 안된 프로젝트로 가득 찬 것을 본다면 그의 후보를 무시할만한 충분한 이유가있을 것입니다.

한 남자가 영화에서 한 번 말했다시피, "커피는 더 가깝습니다."


4

의사 소통과 팀워크 기술이 중요하지만 고객의 요구 사항을 이해하고 비즈니스 영역 지식을 습득 할 수있는 것도 제 경험에서 매우 중요했습니다.


2

나는 의사 소통이 가장 중요하다는 데 동의하지만, 다른 엔지니어에게 그의 프로세스 사용을 보여주지 않는 훌륭한 코더에서 실패를 경험했습니다. 나는 그의 과정을 복제하고 다른 사람들에게 보여 주었지만 그의 도움 없이는 그것을 보여줄 수있었습니다. 그는 가르치지 않았기 때문에 해고당했습니다.


1

충분하지 않습니다.

상식. 문제 해결. 기술 전체에 대한 관심. 올바른 일을하는 태도. 고집. 팀 플레이 / 커뮤니케이션.

각 스킬을 1-5로 평가하십시오. 분이 3 이상이고 평균 20+ 이상인 경우. 개발자로서 좋은 인생을 보낼 것입니다. 25+는 성공적인 개발자가 될 것입니다. 10 세 미만이며 소프트웨어 개발 경력에 대해 진지하게 생각해야합니다.

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