Senior dev에 대한 기술 상세 인터뷰 질문의 요점은 무엇입니까? [닫은]


10

Senior plus와 같은 더 높은 수준의 프로그래머 타이틀을 얻기 위해 내부 프로모션 인터뷰를 받았습니다. 그리고 나는 다른 기술을 사용하는 약 7 명의 사람들과 인터뷰를했으며, 같은 기술을 저와 함께 사용하는 사람들 (.Net)은 JIT, GC 작동 방식과 같이 Google을 통해 실제로 쉽게 찾을 수있는 매우 상세한 기술 질문을하는 경향이 있습니다. , List와 Array의 차이점, 추상 클래스와 인터페이스, 델리게이트 및 이벤트, 파일 업로드 등을 처리 할 때 클래스 이름은 무엇입니까? 프로젝트에서 내 디자인 아이디어 중 하나에 대한 질문은 하나뿐입니다. 간단한 토론. 그러나 대부분의 다른 디자인 선택에 대해서는 관심이없는 것 같습니다.

나는 아직 결과를 얻지 못했고 이번 주 늦게 될 것이지만 여기 내 관심사가 있습니다.

나는 개인적으로 수석 프로그래머로 일할 때 주로 문제를 해결하고, 그것을 해결할 수있는 방법이 있지만 모든 세부 사항을 기억할 수는 없다는 것을 알아야합니다. 그래서 우리가 그 상세한 참조를 해야하는 이유입니다 MSDN과 같은 문서.

주니어에서 중급 레벨과 같은이 영역에 대한 경험이 많지 않다는 것을 알게된다면 괜찮습니다.하지만 더 높은 레벨의 남자와 인터뷰하는 경향이 있다면,이 남자의 논리적 사고가 어떻게 그리고 얼마나 좋은지에 더 집중해야하지 않습니까? 문제를 해결하고 있습니까? 모두가 당신이 모든 세부적인 작은 포인트 기술을 알고 있다면 당신은 Senior +라고 생각합니다. 그리고 인터뷰 질문지를 확인함으로써 더 많은 종류의 질문이 있다는 것을 알았습니다.

5 일 동안 면접 질문 목록 책을 살펴보면 그 사람들을 쉽게 기분 좋게 만들 수 있지만 실제로 의미가 있습니까? 이런 종류의 인터뷰는 쉽게 문제를 해결할 수있는 방법을 모르는 사람들이 더 많은 월급을 받는다는 것을 기억하는 데 도움이됩니다.

그렇다면 왜 이런 일이 세상에서 일어나고 있습니까? 문제 해결 기술을 유발하고 디자인 기술을 측정하기가 어렵습니까? 나는이 회사에 몇 년 동안 근무했으며 다른 회사와의 인터뷰는 거의 없었으므로 모든 회사가 같은 일을하는 것이 궁금합니다.

아니면 이것이 실제로 내 자신의 문제입니까? MS와 인터넷 없이도 일할 수 있도록 MSDN의 모든 것을 기억하기 위해 더 열심히 노력해야합니까?

편집하다

직무에 대한 Frank의 우려에 관한 나의 상황을 더 잘 설명하십시오. 미안하지만 그 배경을 명확하게하지 못했습니다.

실제로 작업의 작업 변경이 없을 것입니다. 개인적으로 코드 검토, 멘토 회원, BA의 의사 검토 및 기술 의견 제공, 새로운 프로젝트의 설계 아키텍처 등의 선배로 이미 수행 한 작업은 여전히 ​​내 직책입니다. 선배없이 머물면서 급여 명세서를 반영하여 인터뷰를 이끌어달라고 요청했습니다. Saas 회사는 사람들이 제품이 아직 살아있는 한 하나의 프로젝트에 머물러 있기 때문에 사람들은 현재 제품을 기반으로 더 많은 새로운 기능을 설계하고 라이브 서버의 기술 난이도를 수정하며 설계 / 코드 검토 / 멘토링을해야합니다 멤버 기술에 기반한 상위 레벨의 타이틀은 Architect이며 Technical Expert와 유사한 직무는 없습니다. 또한 기술 전문가 역할을 수행하려는 경우 사용하는 기술에 대해 자세히 알고 있어야합니다. 미안하지만 그 배경을 명확하게하지 못했습니다.


8
일반적으로 말하면, 수석 역할에 관한 사소한 또는 기술적 사소한 문제에 대한 질문은 인터뷰 과정과 그룹에 대한 위험 신호라고 생각합니다. 내부 프로모션을 찾고 있다면 이것이 사실이라고 말하고 싶습니다. 모든 회사가 이와 같은 것은 아닙니다. 그렇지 않은 회사를 찾을 것입니다.
Erik Dietrich

소중한 의견에 감사합니다 Erik, 네 미래에 대해 신중하게 생각할 때가 왔다고 생각합니다
Simon Wang

답변:


15

수석 엔지니어이자 엔지니어를 고용 한 사람은 인터뷰 과정에서 개념 정보가 완전히 누락 된 것 같습니다.

수석 엔지니어가 최종 결과를 시각화하고 올바른 기술을 선택하고 올바른 데이터베이스 및 프로세스를 설계하고 필요할 때 다른 엔지니어에게 세부 사항을 위임 할 수 있기를 바랍니다. Google은 항상 옆에 있으므로 귀에 꽂은 SD 카드의 크기가 아니라 결과를 제공하는 능력에 중점을 둡니다. (lol).

잘 작동하기를 바랍니다.


답변이 늦어서 죄송합니다. 문제가없는 것 같습니다.
Simon Wang

10

귀하의 경우 Senior +의 업무에 어떤 일이 포함되는지는 확실하지 않습니다. 직위가 아닌 직무가 무엇인지 아는 것이 훨씬 더 중요하다는 것을 항상 명심하십시오. 하면서 수석 작업 제목의 앞을 당신이 실제로 당신의 일에서 할 일에 대해 어떤 방식 TELL 아무것도하지 않는 재무 결과에 영향을 줄 수 있습니다. 그러나 시니어 레벨 "개발자"에는 두 가지 유형이 있습니다.

시스템 아키텍트

그러한 입장에 대해 인터뷰를했다면 실제로 무언가가 잘못되었습니다. Gahooa는 그러한 인터뷰가 후보자에 대한 큰 그림 사고에 중점을 두어야한다는 데 동의합니다.

그러나 이것에 대한 악의적 인 견해도 있습니다. 매일의 작업에서 당신은 항상 그 작은 세부 사항에 압도 당할 것이며 이러한 사소한 혼란에도 불구하고 큰 그림을 추적하는 것은 당신의 책임입니다. 응시자가 작은 세부 사항으로 자신을 잃을 수 없는지 테스트하려는 경우 한 가지 방법은 그 세부 사항에서 그를 싱크하려고 할 수 있습니다. 계획된 아키텍처 위치가 큰 그림에 관한 것임을 상기시키지 않으면 테스트에 실패했을 수 있습니다. 의심의 여지가 있지만, 이런 종류의 인터뷰는 확실히 우호적 인 측면에 있지 않기 때문입니다.

기술 전문가

이 경우 전체 시스템 아키텍처 및 회사 방향에 큰 영향을 미치지 못할 수 있습니다. 대신 디자인 수준에 중점을 둡니다. 당신이 예로 제시 한 모든 질문이이 범주에 완벽하게 들어 맞는다. SW 설계를 담당하는 선임 개발자로부터 JIT, GC, 데이터 구조 등과 같은 정보를 가장 복잡한 세부 사항 이외의 것을 찾을 필요없이 알고 싶을 것입니다. 소프트웨어 디자인을 만들어야하는데 배열과 목록의 차이점을 모르는 경우 잘못된 위치에 있습니다.

귀하의 질문을 읽음으로써 귀하의 직책 (현재 및 제안 된 직책)이 소프트웨어 설계에 중점을 둔 것으로 생각됩니다. 이 경우 실제로 알아야 할 사항과 기억해야 할 사항을 다시 생각할 수 있습니다. 매일 이런 것들을 다루는 것을 감안할 때, 그러한 기본적인 질문에 답하기 위해 무언가를 찾을 필요가 거의 없습니다.


참고로 전직 교수는 고급 과정에 대한 구두 시험에서 초등 과목에 대한 질문을하는 흥미로운 습관을 가지고있었습니다. 이 과목은 고급 과정에서 명시 적으로 다루지 않았지만, 학생은 초등학교 교육에서이 과목을 알아야했습니다. 지난 몇 년 동안 나는 "고급"에 대한 학생 / 후보자가 기초에 심각한 결여를 가지고 있다는 점을 계속해서 목격 해 왔기 때문에 (어떤 종류의) 인터뷰에서도이 행동을 고수합니다. 이러한 추론을 감안할 때, 나는 리스너 패턴이 무엇인지, 또는 리스너를 배열 대 목록 대 세트로 유지하는 장단점에 후보자를 요구하는 것에 대한 자격이 없습니다.


우선 귀하의 답변에 감사드립니다. 실제로 작업의 작업 변경이 없을 것입니다. 개인적으로 코드 검토, 멘토 회원, BA의 의사 검토 및 기술 의견 제공, 새로운 프로젝트의 설계 구조 등의 선배로 이미 수행 한 작업은 여전히 ​​내 직책입니다. 선배없이 머물면서 급여 명세서를 반영하여 인터뷰를 이끌어달라고 요청했습니다. 그리고 저의 목표는 시스템 설계자가되기 위해 노력하고 있습니다. Saas 회사에서는 시스템 설계자가 필요하지만 기술 전문가는 필요하지 않습니다.
Simon Wang

3

죄송합니다. 요청하신 질문이 사소한 것이라고 생각하지 않습니다. 필요할 때 Google로 문의해야합니다. 파일 업로드를 처리 할 때 클래스 이름에 해당 될 수 있지만 다음을 수행하십시오.

  • JIT 란 무엇입니까? 이것은 근본적인 기술적 문제입니다. 선임 프로그래머는 이것이 높은 수준의 의미를 확실히 알고 있어야합니다. 예를 들어, 이것은 다른 VM 및 런타임의 성능에 영향을 미치므로 최소한 새로운 기술을 평가할 때는 고려해야합니다.
  • GC 작동 방식 : 위와 유사합니다. GC 알고리즘은 핵심적으로 매우 간단하며, 적어도 세대 별 GC vs 마크 앤 스윕, 참조 카운트 및 다양한 트레이드 오프에 익숙해야합니다.
  • List와 Array의 차이점 : 이것은 주니어 프로그래머가 알아야 할 기본적인 질문입니다.
  • 추상 클래스 및 인터페이스 : 위와 동일합니다. 적어도 인터페이스를 알지 못하고 복잡한 시스템을 설계하는 방법을 이해하지 못합니다.
  • 델리게이트 및 이벤트 : 견고하고 유연한 시스템을 설계하기 위해 이벤트 위임은 기본 패턴 중 하나입니다.

그들은 사소한 일로 길을 잃지 않고 수석 프로그래머와 관련된 개념적 질문을하는 꽤 좋은 일을 한 것 같습니다.


+1-OP에서 발생하는 질문은 매우 "상세한"질문입니다. 그것들은 상당히 높은 수준이며 시스템을 올바르게 설계하기 위해서는 알아야 할 필요가 있다고 주장 할 수 있습니다. 그러나 견고성, 유지 관리 성 및 응답 성이 설계되고 구축되는 응용 프로그램의 관심사 인 경우에만 해당됩니다.
Dunk

그래서 그 질문에 근거하여 단지 기술이 부족하지만 기억력은 뛰어나고 .Net 인터뷰 질문 목록이라는 책을 읽으면 응시자가 선임자 또는 중급자 또는 심지어 주니어인지 어떻게 알 수 있습니까? 디자인 능력을 식별하고, 그 질문들로부터 문제를 해결하는 능력?
Simon Wang

그것들은 기억 문제 가 아닙니다 . 나는 자신이 말하는 것을 알고있는 사람으로부터 메모리에서 가비지 수집을 말하는 사람을 알 수 있습니다. 이제는 디자인에 대한 질문 할 수 있다는 데 동의 할 수도 있지만 (이벤트 위임에 대한 질문은 그 방향으로 진행되지 않습니까?) 여기에 나열된 질문에 대해 제대로 수행하지 못하는 것은 아닙니다.
안드레아

알았어. 고마워, btw 내가 그 일을 제대로 수행하지 않았다고 생각하지만 그 목적이 무엇인지, 특히 내부 승진 인터뷰라고 생각한다. 나는이 인터뷰와의 차이점을 볼 수 없다는 것을 의미한다. 제가 회사에 합류했을 때, 경력 커리어에 대해 실망스러워합니다.
Simon Wang

질문을 잘못 이해하면 죄송합니다. 인터뷰에서 실적이 저조한 경우 지원을 받기 위해 비슷한 질문을하는 사람들이 많이 있습니다. 당신의 요점은 당신이 그 질문에 대답하는 방법을 알고 있지만 당신이 오히려 소프트웨어 디자인에 대해 더 복잡한 질문을 받았다면, 나는 다른 사람들이 인터뷰에서 요구했던 것만 큼 나쁘고 기억에 남는 질문이 아니라는 것입니다. 확실히 더 잘하는 것이 가능하지만 합리적입니다.
안드레아
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.