기술 인터뷰
*지극히 주관적인 의견이라는 점 말씀드립니다.
Summary
저 사람은 '나랑 같이 일할 수 있을까?'를 생각할 것이다.
나도 물어봐야 한다. '저 사람이랑 같이 일할 수 있을까?'
보여줄 것: 겸손한 태도, 직무 역량, 자신감
인터뷰 형태 3가지
- 질문: 이력서 기반, 기본 개념 / 의도: 신뢰성, 히스토리, 최소한의 역량
- 문제 해결: 알고리즘, 간단한 실무 문제 해결 / 의도: 문제 해결 역량, 문제 해결 과정 관찰을 통해 사고방식을 파악
- 프로젝트: 기한 내 간단한 프로젝트 제작 / 의도: 맡은 바 임무 수행에 대한 책임감(납기준수, 신뢰), 문제 해결 과정 관찰을 통해 사고방식을 파악
질문
이력서 기반 질문(본인만의 스토리가 있는가?)
- 모든 결과에는 원인이 있음. 무엇을 어떻게, 왜 그렇게 했는지 인과관계를 육하원칙에 입각해 설명 가능해야 함.
- 의도: 독립적인 생각과 판단을 하고 행동하는가? 아니면 남이 시키는 대로 하는가? 본인의 생각이 옳다고 판단했다면, 기본 원리에 기반한 타당한 근거를 갖고 있는가?
기본 개념 질문
- 개발을 하기 위한 최소한의 지식을 갖고 있는가?
문제 해결
- 컨셉추얼 씽킹: 전체를 바라보고 문제를 해결할 수 있는가?
- 문제를 바라보는 관점: 다양한 각도에서 문제를 바라볼 수 있는가?
- 생각의 실천: 본인이 생각한 아이디어를 실행하여 문제를 해결할 수 있는가?
프로젝트 제작
- 책임: 약속한 기한 내에 해야할 일을 끝낼 수 있는가?
- *나머지 의도는 문제해결과 유사
질문 예시
HTML, 파싱
- 일반적으로 CSS를 불러오기 위해 link 요소를 head 요소의 자식 요소로 하고, JavaScript를 불러오기 위해 script 요소를 body 요소가 끝나기 직전에 위치시키는 이유가 무엇인가요?
=> head 요소가 문서에 대한 메타데이터 및 정보, 예를 들면 제목, 저자 및 외부 자원에 대한 링크를 포함하는 것이 목적이기 때문입니다. head 요소에 link 요소가 있다면, 웹 페이지에 CSS를 적용한 HTML 요소를 출력합니다.
=> 웹 브라우저가 HTML 코드를 해석할 때, script 요소를 읽으면 HTML 파싱을 멈추고, script 파일을 실행합니다. script 요소가 body 끝에 위치해야 웹 페이지가 랜더링 이후에, Js를 이용한 동작이 사용 가능합니다.
그리고, DOM 트리가 생기기 전에 Js가 실행되어 DOM 조작을 할 경우 에러가 발생할 수 있기 때문입니다.
=> 보충 필요
TIP: 질문의 의도를 정확히 파악하고, 간결하게 실무 용어를 적용해서 대답하라.