ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [책집필] 주제 선정 : 프론트엔드 개발자 기술 면접
    Front-end 개발 2023. 8. 25. 11:21

     

    전자책 리더기

    멋쟁이사자처럼 프론트엔드 스쿨의 강의를 담당하는
    (주)위니브에서 주최하는 무료 전자책 집필 기회가 열렸다!

     

    책 집필은 자신의 전문성을 어필하는 특별활동으로 면접관들과 주변 개발자들의 이목을 끈다고 한다.

    나는 개인적으로 책을 집필했다고 해서 큰 변화가 있을 것이라고 생각하지 않는다.

    오히려 주니어 개발자가 쓴 책이 얼마나 전문성을 가졌는지 의구심만들 것 같다.

    아마도 이목을 끄는 이유는, 흔하지 않은 경험이기도 하며 궁금증을 자아내기 때문이라고 생각한다.

     

    내가 책 집필을 참여하는 이유는,

    이력서의 한 줄 추가 보다는 Frontend 개발자 직군의 기술면접 대비를 위한 것이다.

     

    책의 제목은 기존 위니브의 무료 전자책 '눈떠보니 코딩 테스트 전날' 을 오마주하여,

    (가칭) '눈 떠보니 기술 면접 전날' 로 정했다.

     

    1. 주제 선정


    주제는 Front-end, Back-end 개발자를 대상으로한 기술 면접 질문과 5분이내의 모범 답안으로 구성한다.

    함께 책 집필을 할 개발자들을 모집하였고, 일단 프론트엔드 관련 주제를 아래와 같이 선정했다.

     

    (1) Frontend

    (2) HTML/CSS

    (3) JavaScript

    (4) React.js

    (5) 상태관리

    (6) CS

     

    새로운 팀원들과의 첫 회의에 앞서, 주제별 면접 질문을 10가지 정도 뽑아 회의에 참여하고자 한다. 

     

    2. 면접 질문


    2-1. Frontend 공통

    • Webpack 을 왜 사용하는지 설명하시오.
    • Babel 을 왜 사용하는지 설명하시오.
    • Polyfill 에 대해 설명하시오.
    • CSR(클라이언트 사이드 렌더링)과 SSR(서버 사이드 렌더링)의 장단점에 대해 설명하시오
    • 이벤트 루프와 태스크 큐에 대해 설명하시오.
    • Typescript 를 왜 사용하는지 설명하시오.
    • 쿠키(Cookies), 세션 저장소(Session Storage), 웹 스토리지(Local Storage)의 차이에 대해 설명하시오.  (출처: 개발의 정석)
    • DOM 에 대해서 특징과 함께 설명하시오.  (출처: 개발의 정석)
    • CORS 정책 위반 이슈에 대해 설명하시오.  (출처: 개발의 정석)
    • TDD(Test-Driven Development) 에 대해 설명하시오. (출처: 개발의 정석)

    2-2. HTML/CSS 면접 질문

    • meta 태그에 대해 설명하시오.  (출처: 개발의 정석)
    • doctype 이 무엇인지 설명하시오.  (출처: 개발의 정석)
    • script 태그는 어디에 위치해야 하는지 설명하시오.  (출처: 개발의 정석)
    • Cascading 에 대해 설명하시오.
    • id와 class 의 차이점을 설명하시오.  (출처: 개발의 정석)
    • 웹사이트 성능 최적화 방법에 대해 설명하시오.
    • 브라우저 렌더링 과정에 대해서 설명하시오.

    2-3. JavaScript

    • var, let, const 차이를 설명하시오.
    • 이벤트 버블링과 캡처링에 대해 설명하시오.
    • (= 이벤트 위임에 대해 설명하시오) (출처: 개발의 정석)
    • 클로저에 대해 설명하시오.
    • Prototype 체이닝에 대해 설명하시오. (출처: 개발의 정석)
    • 실행 컨텍스트에 대해 설명하시오.
    • 호이스팅에 대해 설명하시오.
    • 불변성을 유지하려면 어떻게 해야하나요?
    • this 동작에 대해 설명하시오. (출처: 개발의 정석)
    • JavaScript 동작 원리에 대해 설명하시오.
    • Promise 와 Callback 차이를 설명하시오.
    • async, await 사용 방법을 설명하시오.

    2-4. React.js 면접 질문

    • Virtual DOM 대해 설명하시오
    • React 를 사용하는 이유에 대해 설명하시오.
    • props 와 state의 차이에 대해 설명하시오.
    • 클래스형 컴포넌트와 함수형 컴포넌트의 차이에 대해 설명하시오.
    • 생명 주기 메서드에 대해 설명하시오.
    • 리액트에서 JSX 문법이 어떻게 사용되는지 설명하시오.
    • useMaemo와 useCallback 에 대해 설명하시오.
    • 리액트의 렌더링 성능 향상 방법에 대해 설며하시오.
    • React-query 에 대해 설명하시오.
    • Context API 에 대해 설명하시오.

    2-5. 상태관리 면접 질문

    • Redux 를 사용하는 이유를 설명하시오.
    • Redux의 장단점을 설명하시오.
    • Context API 와 Redux 를 비교하시오.
    • 상태관리에 대해 설명하시오.

    2-6. CS 면접 질문

    • 웹 서비스 구조에 대해서 설명하시오.
    • GET과 POST 의 차이에 대해서 설명하시오.
    • DNS 에 대해 설명해주세요.
    • HTTP와 HTTPS 의 차이에 대해서 설명하시오.  (출처: 개발의 정석)
    • REST(full) API 에 대해서 설명하시오.
    • 객체 지향 프로그래밍에 대해서 설명하시오.
    • (멀티) 프로세스와 (멀티) 스레드에 대해 설명하시오.  (출처: 잡코리아)
    • 자료구조 Stack과 Queue 에 대해 설명하시오.
    • TCP와 UDP 방식의 차이에 대해 설명하시오.  (출처: 개발의 정석)
    • 프록시 서버의 기능에 대해 설명하시오.  (출처: 개발의 정석)

    2-7. 형상관리 및 협업

    • Git 과 GitHub 의 차이를 설명하시오.  (출처: 개발의 정석)

    2-8. 알고리즘

    • 피보나치 수열을 구하는 코드를 짜주세요. (출처: 잡코리아 - 네이버 인턴 일반면접 질문)
    • 숫자단위마다 콤마(,)를 찍는 것을 작성하시오. (출처: 잡코리아 - 네이버 인턴 일반면접 질문)
    • 회문 판별 알고리즘을 작성하시오. (출처: 잡코리아 - 네이버 신입 웹개발자 일반면접 질문)
    • 퀵정렬의 시간복잡도에 대해 설명하시오. (출처: 잡코리아 - 네이버 신입 앱개발자 일반면접 질문)

    3. 결과


    프론트엔드 그리고 CS 지식과 관련된 기술 면접 질문을 찾아보았다.

    지금의 나의 수준에서는 제대로된 답변을 할 수 있는 질문은 손에 꼽힐정도로 적다.

    나의 부족함을 다시한번 느끼면서, 한번 제대로 준비해 봐야겠다.

    기술 면접 대비도 되고 책 집필이라는 특별한 경험을 쌓는 1석 2조의 활동이 될 거라 생각된다.

    또 이번 기회를 통해서 새롭가 알게될 개발자들이 궁금하기도 하다.

     

     

     

     

    면접 질문 출처1. https://xiubindev.tistory.com/119

    면접 질문 출처2. 카카오 면접 질문 (머신러닝 엔지니어)

    면접 질문 출처3. 카카오 면접 질문 (앱 개발자)

    면접 질문 출처4. 개발의 정석 (App)

Designed by Tistory.