본문 바로가기
프로그래밍/CS

개발자 기술면접 질문 모음(프론트엔드, 백엔드)

by 숙님 2022. 10. 18.
728x90

프론트엔드 질문 

JavaScript

클로저에 대해서 설명하세요.

호이스팅과 Temporal Dead Zone이 어떻게 연관되어있는지 설명하세요.

callback, promise, async/await의 특징과 차이점에 대해서 설명하세요.


React

React 에서 virtual DOM이 무엇인가요? virtual DOM이 좋은 이유에 대해서 설명하세요.

Props Drilling 이란 무엇인가요?

JSX가 무엇인가요?

state를 직접 변경하지 않고 setState를 사용하는 이유에 대해서 설명하세요.

React에 있는 라이프사이클과 각 라이프사이클의 역할을 설명하세요.


CSS

id와 class 셀렉터의 차이점에 대해 설명하세요.

CSS에서 px, em, rem, vh, vw 단위들의 차이점은 무엇인가요?

CSS in JS( ex. styled component )의 장단점에 대해서 설명하세요.


Node.js

Node.js는 싱글쓰레드인가요?

Event Loop에 대해 설명해주세요.


Network

TCP와 UDP 방식의 차이점을 설명해주세요.

프락시 서버가 필요한 이유에 대해 설명해주세요.


HTML

일반적으로 CSS <link> 태그를 <head></head> 태그 사이에 위치시키고, JS <script> 태그를 <body> 태그가 끝나기 직전에 위치시키는 이유가 무엇인가요?


DOM

event.preventDefault()의 역할이 무엇인지 설명하세요.

이벤트 버블링이란 무엇이며 막을 수 있는 방법은 무엇인가요?


Browser

브라우저 렌더링 (작동) 원리에 대해 설명하세요.

Client Side Rendering과 Server Side Rendering의 차이에 대해서 설명하세요.

AJAX에 대해 설명해주세요.


HTTP

HTTP 프로토콜에 대해 설명해주세요.

REST API에 대해 설명해주세요.


보안/인증

CORS에 대해 설명해주세요.

SOP과 same origin에 대해 설명해주세요.

Session과 Cookie 그리고 Token 인증방식에 대해 설명해주세요.


CS

캐시란 무엇인가요? 캐시의 일반적인 작동원리를 설명해주세요.

가비지 컬렉션은 무엇이며, 가비지 컬렉션 기능을 가진 언어는 무엇인가요?


Algorithm

Stack과 Queue의 차이점은 무엇인가요?

재귀와 재귀 함수에 대해 설명해주세요.


백엔드 질문 

Java

자바 데이터 타입 중 기본형과 참조형의 차이에 대해 설명해주세요.

클래스와 객체에 대해 설명해주세요.

메서드 오버라이딩과 메서드 오버 로딩의 차이는 무엇인가요?

static 키워드에 대해 설명하고, static를 언제 사용해야 하는지 설명해주세요.

제네릭에 대해서 설명하고, 컬렉션 클래스에서 왜 제네릭을 사용하는지 설명해주세요.


객체지향

추상 클래스와 인터페이스의 차이는 무엇인가요?


Algorithm

재귀 함수와 반복문의 차이점에 대해 설명해주세요.

이진 탐색 알고리즘(BST)이 데이터를 효율적으로 찾기 위해 탐색하는 과정을 설명해주세요.

인접 행렬과 인접 리스트의 차이점은 무엇인가요?


보안/인증

CORS가 무엇이고, CORS 정책을 Spring Security에 설정하는 방법에 대해서 설명해 주세요.

인증(Authentication)과 인가(권한 부여, Authorization)의 차이에 대해 설명해 주세요.

세션과 쿠키 그리고 토큰 인증 방식에 대해 설명해 주세요.

패스워드를 암호화하는 단방향 암호화에 대해서 설명해 주세요.


HTTP

URL과 URI의 차이점이 무엇인가요?

REST API란 무엇인가요?


CS

트랜잭션에 대해 설명해주세요.


Browser

Client Side Rendering과 Server Side Rendering의 차이점에 대해서 설명해주세요.


Spring Framework

DI(Dependency Injection)에 대한 설명과 해당 기술의 장점에 대해 설명해주세요.

Spring MVC에서 REST API 엔드포인트를 구현하기 위해 사용되는 애너테이션들에 대해서 설명해 주세요.

Controller에서 응답 객체로 사용하는 ResponseEntity에 대해서 설명해 주세요.

DTO가 무엇인지 설명해 주세요.

Spring JDBC, Spring Data JDBC, Spring Data JPA의 차이점을 설명해 주세요

Spring에서 트랜잭션을 설정하는 방법에 대해서 설명해 주세요.

JUnit의 Assertion이 무엇을 의미하는지 설명해 주세요.

Spring Boot 기반 애플리케이션 빌드 시, 주로 사용하는 프로파일(Profile)에 대해서 설명해 주세요.


Database

ORM이 무엇인지 설명해 주세요.

Foreign Key와 Primary Key에 대해 설명해주세요.


Cloud

vmware와 같은 가상 머신이랑 Docker가 무슨 차이가 있는지 설명해 주세요.

CI/CD가 무엇이라고 생각하시나요? CI와 CD의 차이점이 무엇인지 설명해 주세요.

댓글