Hello World

개발자 면접 예상 질문 본문

News & Tips/참고자료

개발자 면접 예상 질문

EnterKey 2016. 1. 9. 23:52
반응형

개발자가 면접을 볼 때면 기술면접을 거치게 됩니다. 해외에서도 기술 면접과 코딩 시험 자주 보는데요. 이를 겨냥해 아예 기술 면접을 도와주는 서비스가 성장하고 있습니다. 면접 질문을 무료로 볼 수 있는 웹사이트도 많아졌고요. 특히 개발자들이 자주 이용하는 깃허브, 레딧 등에 개발자 면접 질문 내용들이 공유되고 있습니다.

아래는 기술 면접에 도움이 될 수 있는 두 가지 오픈소스 프로젝트입니다. 개발자들은 직접 작성한 것도 있고 관련 웹 링크를 공유한 프로젝트도 있습니다. 아래 프로젝트로 면접 질문을 예상하는 동시에 안드로이드, iOS, 웹 , 리눅스 등 자신이 맡고 있는 기술 지식을 시험하는 도구로 활용할 수 있습니다. 면접관도 직접 인터뷰 질문을 참고할 수 있을 것 같네요.

구글, 애플 개발자가 기여한 ‘프론트엔드 개발자 인터뷰 질문’

프론트엔드 개발자 인터뷰 질문‘은 깃허브에 올라온 인터뷰 관련 프로젝트에서 가장 높은 인기가 높습니다. 인기도를 보여주는 스타 수는 1만9천개가 넘었으며 포크수도 3천개가 넘었습니다. 이 프로젝트들은 개발자들이 직접 질문을 작성하면서 콘텐츠를 업데이트하고 있습니다. 지금까지 100명이 넘는 개발자들이 기여했다고 합니다. 나름 유명한 개발자들이 이 오픈소스 프로젝트에 참여하고 있습니다. 예를 들어  폴 아이리쉬  구글 크롬팀 개발자, 벤자민 트루먼 애플 툴 개발팀 개발자나, ‘그런트JS‘ 창시자인 벤 알만 개발자, 알렉스 색스튼 스트라이프 개발자, 마이크 테일러 모질라재단 개발자 등을 기여자 명단에서 볼 수 있습니다. 프론트엔드 개발자 질문 프로젝트에는 현재 150개가 넘는 질문이 등록돼 있습니다. CSS와 자바스크립트 질문이 가장 많고요. 대표적인 질문은 다음과 같습니다.

  • 일반 부문
    • 어떤 버전 컨트롤 시스템을 잘 알고 있습니까?
    • 페이지로드를 줄일 수 있는 3가지 방법을 설명하시오
    • 5개의 다른 스타일시트가 있을경우, 어떻게 통합하시겠습니까?
    • CSS 애니메이션과 자바스크립트 애니매이션의 장단점을 설명하시오
    • 간단한 슬라이드쇼 페이지를 어떻게 개발할지 설명해보시오
    • 올해 제대로 익히고 싶은 기술은 무엇입니까?
  • HTML 부문
    • ‘doctype’은 무엇입니까?
    • 여러 외국어를 지원하는 웹사이트는 어떤식으로 개발하나요?
    • 쿠키, 세션스토리지, 로컬스토리지의 차이점은 설명하시오
    • <script>, <script async> , <script defer> 의 차이점을 설명하시오
    • CSS <link>를 </body>전에 넣고 <head></head>, <script> 사이에 넣는게 왜 좋은 방법인가요? 예외사항에 대해 알고 있는게 있습니까?
  • CSS 부문
    • CSS 전처리 도구를 이용했을때의 장단점을 설명하시오.
    • BFC(Block Formatting Context)를 설명하시오
    • *{ box-sizing: border-box; }는 무엇인가요. 이것의 장점을 설명하시오
    • 인라인과 인라인블록의 차이를 설명하시오.
  • 자바스크립트 부문
    • 자바스크립트에서 ‘this’는 어떤 역할을 하는가?
    • function foo(){ }(); 함수가 왜 IIFE에서 작동되지 않는지 설명하시오
    • Function.prototype.bind를 설명하시오.
    • 비동기 함수와 동기 함수의 차이점을 설명해보시오
    • document.write()를 언제 사용할 수 있나요?
  • 코딩 질문
  • Developer_Interview_01-re기타
    • 인터넷 익스플로러에서 가장 좋아하는 기능은 무엇인가요
    • 최근 참여했던 프로젝트 중 가장 재밌었던 것은 무엇인가요
    • 어떤 커피를 좋아합니까?

수백개의 인터뷰 질문이 한 곳에…’어썸 인터뷰’

어썸 인터뷰는 개발자 질문과 관련된 웹주소를 모아둔 저장소입니다. 방대한 양의 질문들이 여기에 모여있는데요. 벨라루스 국립 정보 무선전자 종합대학에 다니는 루비개발자가 개인적으로 시작한 프로젝트라고 하네요. 12월초에 많은 관심을 받으며 깃허브 ‘스타’수는 7천개가 넘었고, ‘포크’는 400개가 넘었습니다. 어썸 인터뷰에서 언급된 웹사이트들은 다음과 같습니다. 일부 콘텐츠는 인터뷰 질문에 대한 답변을 올리고 퀴즈를 풀 수 있는 도구가 함께 제공되고 있습니다.

Developer_Interview_02_swift_04

▲레이지 퀘스쳔

어썸 인터뷰 프로젝트에서 자주 언급한 링크 주소
탑탈 / 캐리어라이드 / 쿼라 / 튜토리올포인트 / 캐리어구루99 / 코드프로젝트 / 웹테크놀로지엑스포트노트긱인터뷰 / 긱포긱 / 긱퀴즈 / 레딧 / 스킬업 / 굿인터뷰퀘스천닷넷 / 코드멘토 / 자바코드긱 / 자바포인트 / 레이지퀘스쳔 / 인터뷰케이크

어썸 인터뷰에서 다루고 있는 기술은 아주 많습니다. 분류하자면 다음과 같습니다. 특히 스위프트, 고, 앵귤러JS, 리액트 같은 신생 언어관련된 질문도 활발하게 올라오고 있네요.

어썸 인터뷰 프로젝트에서 다루고 있는 기술 종류
안드로이드 / 앵귤러JS / 백본JS / C++ / C / C# / 닷넷 / 클로져 / 커피스크립트 / CSS / 장고 / 엠버JS / 얼랭 / 고 언어 / HTML / 아이오닉 / iOS / 자바 / 자바스크립트 / 넉아웃JS / 레스 / 립스 / 노드JS / 오브젝트C / PHP / 파이썬 / 리액트JS / 레일스 / 루비 / 사스 / 스칼라 / 쉘 / 스위프트 / 카산드라 / 마이크로소프트 액서스 / 몽고DB / 마이SQL / 네오4J / 오라클 / 포스트그레스 / SQL / SQL 라이트 / 리눅스 / 윈도우 / 알고리즘 / 코딩 시험 / 디자인 패턴/ 데이터구조 / 네트워크 / 보안

대표적인 질문은 다음과 같습니다. 자세한 질문과 링크는 어썸 인터뷰 깃허브 페이지에서 직접 확인할 수 있습니다.

  • 스위프트 질문
    • 아래 코드에서 nil과 .None의 차이점은 무엇인가? 변수 값이 달라지는가?Developer_Interview_02_swift_01
    • 아래 코드는 컴파일에 실패한다. 어떤 코드 때문인가? 이유는 무엇인가?Developer_Interview_02_swift_02
    • 아래 코드를 보다 간단하게 바꿔보시오Developer_Interview_02_swift_03
    • 위 질문에 대한 정답은 이 링크에서 확인할 수 있다
  • 안드로이드 질문
    • 앤트, 메이븐, 그래들을 이용한 적 있는가?
    • 추상 클래스와 인터페이스의 차이를 설명하라
    • XML 기반 레이아웃은 왜 중요한가?
    • ANR은 무엇인가
    • Intent는 무엇인가, ContentProvider로 연결할 수 있는가? 그 이유도 함께 설명하라
    • 위 질문에 대한 일부 정답은 이 링크에서 확인할 수 있다
  • 자바
    • 해쉬맵은 자바에서 어떻게 사용되는가?
    • PriorityQueue는 무엇인가
    • 언제 finalize() 을 이용해야 하는가?
    • 세션과 쿠키의 차이점은 무엇인가?
    • 위 질문에 대한 정답은 이 링크에서 확인할 수 있다
  • 파이썬
    • 버그를 찾거나 성능을분석할 수 있는 도구는 무엇이 있는가?
    • 전역수와 지역변수를 사용하는 원칙을 설명하라
    • 파이썬으로 작성한 프로그램의 속도를 좀 더 높이는 방법은?
    • 위 질문에 대한 정답은 이 링크에서 확인할 수 있다
  • 노드JS
    • 노드JS의 구조를 설명하시오
    • DOM을 노드에서 활용할 수 있는가?
    • 가장 많이 쓰이는 노드JS 프레임워크는?
    • 이벤트중심 프로그래밍이 무엇인지 설명하시오
    • 정답은 이 링크에서 확인할 수 있다
출처: http://www.bloter.net/archives/246472


반응형
Comments