본문 바로가기
개발적인/기타 개발적인 부분

프론트엔드 실무 면접 준비해보기

by klm hyeon woo 2023. 1. 2.

https://xiubindev.tistory.com/119 (출처)

 

실제로 받은 프론트엔드 개발자 면접 질문 모음

첫 번째 직장에는 운 좋게 바로 들어가서 일을 시작했기 때문에, 제대로 취업 준비를 해본 경험이 없었다. 그래서 이번에 다시 프론트엔드 개발자로 취업 준비를 하면서 코딩 테스트 공부도 하

xiubindev.tistory.com

 

CS

  • ⭐️ 브라우저 주소창에 www.google.com을 입력하면 어떤 일이 일어나나요?
  • DNS에 대해 설명해주세요.
  • ⭐️ GET과 POST의 차이는 무엇인가요?
  • REST API에 대해 설명해주세요.
  • ⭐️ 객체 지향 프로그래밍이란 무엇인가요?
  • 자료구조 stack과 queue에 대해 설명해주세요.
  • ⭐️ 프로세스와 스레드에 대해 설명해주세요.

 


JavaScript

  • ⭐️ Promise와 Callback 차이를 설명해주세요.
  • 콜백 지옥(Callback hell)을 해결하는 방법을 말씀해주세요.
  • ⭐️ async, await 사용 방법을 설명해주세요.
  • Promise를 사용한 비동기 통신과 async, await를 사용한 비동기 통신의 차이를 설명해주세요.
  • ⭐️ var, let, const 차이를 설명해주세요.
  • 함수 선언형과 함수 표현식의 차이에 대해 설명해주세요.
  • ⭐️ 이벤트 버블링과 캡처링에 대해 설명해주세요.
  • 이벤트 버블링과 이벤트 캡처링에 대한 예시를 들어주세요.
  • ⭐️ 클로져(Closure)에 대해 설명해주세요.
  • 렉시컬 환경(Lexical Environment)에 대해 설명해주세요.
  • ⭐️ 실행 컨텍스트에 대해 설명해주세요.
  • ⭐️ 호이스팅(hoisting)에 대해 설명해주세요.
  • 데이터 타입에 대해 설명해주세요.
  • 자바스크립트에서 일어나는 데이터 형 변환에 대해 설명해주세요.
  • 자바스크립트가 유동적인 언어인 이유는 무엇인가요?
  • ⭐️ 프로토타입에 대해 설명해주세요.
  • 깊은 복사와 얕은 복사에 대해 설명해주세요.
  • ⭐️ 불변성을 유지하려면 어떻게 해야하나요?
  • this에 대해 설명해주세요.
  • requestAnimationFrame을 사용해본 적 있나요?

 


React

  • ⭐️ Virtual DOM 작동 원리에 대해 설명해주세요.
  • ⭐️ Virtual DOM 이 무엇인지 설명해주세요.
  • ⭐️ React를 사용하는 이유에 대해 말씀해주세요.
  • 제어 컴포넌트와 비제어 컴포넌트의 차이에 대해 설명해주세요.
  • key props를 사용하는 이유는 무엇인가요?
  • props와 state의 차이는 무엇인가요?
  • pure component에 대해 설명해주세요.
  • shouldComponentUpdate에 대해 설명해주세요.
  • ⭐️ 클래스형 컴포넌트와 함수형 컴포넌트의 차이에 대해 설명해주세요.
  • ⭐️ 생명 주기 메서드에 대해 설명해주세요.
  • ⭐️ 리액트에서 JSX 문법이 어떻게 사용되나요?
  • 왜 state를 직접 바꾸지 않고 useState를 사용해야 하나요?
  • ⭐️ useMemo와 useCallback에 대해 설명해주세요.
  • 리액트에서 메모이제이션을 어떤 방식으로 하나요?
  • 리액트 관련 패키지 중에 제일 좋다고 생각한 것은 무엇인가요?
  • ⭐️ 리액트의 렌더링 성능 향상을 위해 어떻게 해야 하나요?
  • React-query에 대해 들어봤나요?
  • React 18 버전 업데이트 내용에 대해 말씀해주세요.
  • useEffect와 useLayoutEffect의 차이점에 대해 말씀해주세요.
  • ⭐️ Context API에 대해 설명해주세요.

 


Redux

  • ⭐️ Redux를 사용하는 이유가 무엇인가요?
  • ⭐️ Redux의 장단점에 대해 설명해주세요.
  • ⭐️ Context API와 Redux를 비교해주세요.
  • Redux-saga에 대해 설명해주세요.
  • Generator 문법에 대해 설명해주세요.
  • Redux-saga, Redux-Thunk의 차이에 대해 설명해주세요.

 


Frontend

  • ⭐️ 브라우저 렌더링 과정을 설명해주세요.
  • ⭐️ 브라우저는 어떻게 동작 하나요?
  • ⭐️ Webpack, Babel, Polyfill에 대해 설명해주세요.
  • ⭐️ CSR과 SSR의 차이는 무엇인가요?
  • ⭐️ CORS는 무엇인지, 이를 처리를 해본 경험을 말씀해주세요.
  • ⭐️ 웹 표준을 지키며 개발하시나요?
  • 쿠키와 세션에 대해 설명해주세요.
  • 로그인 처리를 할 때 쿠키와 세션을 어떻게 사용하시나요?
  • ⭐️ 이벤트 루프와 태스크 큐에 대해 설명해주세요.
  • bundle의 사이즈를 줄이려면 어떻게 해야 하나요?
  • ⭐️ 타입스크립트를 사용하는 이유는 무엇인가요?
  • ⭐️ 쿠키, 세션, 웹스토리지의 차이에 대해 설명해주세요.
  • 크로스 브라우징 경험이 있으신가요?
  • 웹 소켓을 사용해보셨나요?
  • ⭐️ 웹사이트 성능 최적화에는 어떤 방법이 있나요?

 


HTML, CSS

  • Flexbox를 사용해보셨나요?
  • ⭐️ Cascading에 관해서 설명해주세요.
  • ⭐️ CSS 애니메이션과 JS 애니메이션의 차이에 대해 설명해주세요.
  • postition 속성을 나열해주세요.

 


기타

  • ⭐️ 자기소개를 해주세요.
  • 회사 지원 동기를 말씀해주세요.
  • ⭐️ 최근 경험했던 기억에 남는 에러에 대해 말씀해주세요.
  • ⭐️ 요즘 공부하고 있는 것을 말씀해주세요.
  • 자바스크립트를 공부하면서 가장 인상 깊었던 것을 말씀해주세요.
  • 어떤 개발자를 사수로 두고 싶으신가요?
  • 구글 태그 매니저를 사용했을 때 어려웠던 점이 있었나요?
  • ⭐️ 좋은 코드란 어떤 것이라고 생각하시나요?
  • 어떤 개발자가 되고 싶으신가요?
  • 애자일 방법론을 활용하여 개발을 해보셨나요?
  • 왜 이전 직장을 그만두시게 됐나요?
  • 어떤 프로그래밍 디자인 패턴을 선호하시나요?
  • 토이프로젝트를 실제로 사용하는 유저들이 있었나요?
  • ⭐️ 협업할 때 어려운 점이 있었나요?
  • ⭐️ 프로젝트에서 어떤 업무를 주로 담당했나요?
  • 본인의 장단점을 말씀해주세요.
  • 개발 기간을 촉박하게 요구하는 경우 어떻게 하시나요?
  • ⭐️ 왜 개발자가 되기로 결심하셨나요?
  • 개발 능력 향상을 위해 어떤 것을 하고 계신가요?
  • ⭐️ 새로운 기술을 습득하기 위해 어떤 방식으로 접근하고 계신가요?
  • 버전 관리 시스템은 무엇을 사용해보셨나요?
  • ⭐️ 저희 회사에 궁금한 점이 있으신가요?

댓글