여태까지 겪은 면접 총 정리
2019-04-03
면접 질문 총 정리
K 사 / 백엔드
- GC 란 무엇인가
- HAproxy에서 HA가 뜻하는 바는?
- 디비 인덱스란?
- 1만개의 데이터를 조회할때 인덱스의 유무 차이
- 작동 방식, 속도 등
- 왜 자바개발에 지원했는지
- 평소에 js만 했기 때문에 질문했을거라 추측
전화면접이었는데 여건상 밖에서 전화를 받았다가 추워서 어버버 떨면서 대답함.
K 사 (스타트업) / 웹 개발
- GC 란 무엇인가
- Call By Value / Call By Reference 차이 설명 및 예시
- 함수형 프로그래밍이란?
- 0.1 * 0.1 은 0.00000000000001e 이런식으로 되는데 그 이유
- Integer가 어떻게 저장되는지
- Double이 어떻게 저장되는지
- mutable, immutable 차이
- cpu, gpu 연산의 차이점과 어디에 주로 쓰이는지
- dfs/ bfs 차이 및 구현
- stack over flow 란?
- 모든 재귀를 스택으로 변경할 수 있을까?
- 스레드가 무엇인지 멀티스레드를 구현해봤는지?
- 스레드 세이프란 무엇인가
- 브라우저에 url을 입력했을때의 과정 설명
- arp 하는 시점을 브라우저가 알 수 있는가?
- 브라우저에서 맥 주소를 알 수 있는가?
- 일기장 서비스를 만든다면 어떻게 디비 테이블을 설계 할것인가?
- 윈도우에서 실행되는 프로그램은 삭제 불가한데 유닉스에서는 가능한 이유
- 번들러란 무엇인가?
- Async / Await 내부 구조
- Promise 내부 구조
- http 통신 프로토콜에 대해 설명
- GC를 만들어야 하는 상황이 온다면 어떻게 만들것인가?
- 램 1기가로 크롬창 몇개를 킬 수 있을까? 창 1개당 1MB로 가정
- setTimeOut을 주고 실행값 예측 문제
- 램에 데이터가 어떻게 저장되는지
- 데이터가 어떻게 전송되는지 설명
사전과제부터 화상면접까지 무난하고 배워가는 느낌도 드는 프로세스였다. 최종면접에서는 팀원 전체가 들어와 11대1 (화상까지 15대1?) 정도의 면접이 있다. 불합격했지만 재밌고 많이 배워간 면접이었다.
D1 사 / 백엔드
- 2진수를 10진수로 변환 손코딩
- 10진수를 2진수로 변환 손코딩
- 16진법을 10진법으로 변환 손코딩
- [3,2,7,3,2,7,5,8] 중복제거및 순서유지 손코딩
- 브라우저에 URL 을 입력했을때의 과정
- inner join, outer join 설명 및 차이점
- n+1 쿼리문제란
- union 쿼리란
- arp란 무엇인가
- 파이썬을 사용하면서 가장 많이 겪은 에러 및 예외
- jwt 란
- http status code 아는것들 설명
면접시간이 짧았기 때문에 질문수도 적다. 가벼운 손코딩과 가벼운 전공지식 위주였다.
H 사 / 백엔드
- 프로세스와 스레드 차이
- 레디스에 값을 추가하면 스레드가 추가되는것인가 프로세스가 추가되는것인가?
- 프로젝트 소개
- 알디비 장단점
- 해시맵, 해시테이블 설명
- 그래프큐엘 장단점
- 퀵소트 머지소트 시간복잡도 설명
- 동기 비동기 차이
- msa 란?
- MVC 패턴중 비지니스 로직은 어디에 있어야 하는가?
- rest api란?
무난했다.
K 사 / 안드로이드
- Call By Value / Call By Reference 차이 설명 및 예시
- 재귀, 반복문 구현 메모리 차이
- 리틀 엔디언, 빅 엔디언
- 추상클래스와 인터페이스 차이
- 힙영역 코드영역, 스택영역 차이
- 데드락 발생 요인 4가지
- context switch 설명
- jvm 이란?
- string, string buffer, string builder 차이
- 안드로이드 생명주기
- 가비지컬렉터 작동원리
- dfs, bfs 트리 설명
- 바이너리 트리 / 바이너리 서치 트리 설명
- get, post 차이
- list 와 hash 빅오 차이
- 뮤텍스와 세마포어 차이
- 퀵소트 설명
- &와 && 차이
- cisc, risc 차이
os 를 주로 물었다. 이유는 모르겠다.
N 사 / 백엔드
- 컴파일언어와 인터프리터 차이
- 세마포어 뮤텍스 설명
- 관심있는 오픈소스
- 큐 구현
- 데드락이란
- h1, h2 차이
- http https 차이
- 1부터 100까지 재귀 합
- printf 함수 구현
- 그래프큐엘
- 노드 장단점
- 알디비 vs nosql
- mariaDB vs postgreSQL
- 라이브러리 vs 프레임워크
- 폴링 롱폴 웹소켓 차이
- 디비 실행계획
- 몽고디비로 개발한 이유가 뭔지
- 몽고디비 스키마 짤때 중점적으로 고려한 것
- 노드 많이 썼다고 했는데 자바 스프링이랑 비교해서 뭐가 좋은지
- get post 차이
- 3way 4way handshake
- 오버로딩 오버라이딩
- 서블릿이뭔지
- 프로세스 스레드 스레드풀 차이
- 자바 메모리 어떻게 관리하는지
- 자바 메모리 힙 두 가지 영역
- 디비 인덱스 쓰는 이유 언제 쓰면 좋은지
- 디비 커넥션풀 만들면 좋은 점
- nosql이 요즘 뜨는 이유
- nosql이 뜨면서 mysql도 같이 뜨는 이유
- 디자인패턴 아는대로
- 스프링 어노테이션 장단점
- 스프링 mvc 구조
- A월 B일이 무슨 요일인지
- [n, n-1, n-2 ~ 1] 표현할수있는 숫자 다 출력
- 브라우저 렌더링 과정
- 자바스크립트 프로토타입 , 버블링 설명
- 트랜잭션 설명
제일 가고 싶던 회사 다양하고 깊게 물어본다.
D2 사 / 웹개발
- 클러스터 인덱스, 논클러스터 인덱스 차이
- 커넥션 풀이란
- 사용자 수준의 커널 운영체제 수준의 커널
- use strict 사용 이유
- 디자인패턴 사용 이유
- 싱글톤이란
- 데드락 발생 원인 4가지
- nodejs에서 스레드란
- 객체지향이란
- 추상클래스와 인터페이스 차이
- 캐시란
- 클로저란
- 사용해본 디자인패턴
면접관들도 구글링해서 면접질문을 찾아온것같다 질문이 어디서 많이 봤던것들
D3 사 / 백엔드
- powerOfTwo(124)
- msa 모놀리틱 비교
- soa
- 해시맵이란
- 해시맵 충돌 해결방법
- rest 란
- 코루틴, 제너레이터
쉬웠다..