cleanUrl: /기술-면접-뽀개기/면접-준비
👨🏻💻 Tech Interview
시작하기
<aside>
💡
기술면접을 준비할 때는 절대 문제와 답을 읽는 식으로 하지 말고, 문제를 직접 푸는 훈련을 해야한다.
</aside>
- 직접 문제를 풀 수 있도록 노력하자.
- 포기하지말고, 최대한 힌트를 보지말고 답을 찾자.
- 코드를 종이에 적자
- 컴퓨터를 이용하면 코드 문법 강조나 자동완성 기능으로 도움을 받을 수 있기 때문에 손으로 먼저 적는 연습을 하자.
- 코드를 테스트하자
- 기본 조건, 오류 발생 조건 등을 테스트 하자.
- 종이에 적은 코드를 그대로 컴퓨터로 옮기고 실행해보자.
- 종이로 적었을 때 실수를 많이 했을 것이다. 컴퓨터로 옮기면서 실수 목록을 적고 다음부터 저지르지 않도록 유의하자.
기술면접에서 필수로 알아야 하는 것
- 자료구조
- 연결리스트(Linked Lists)
- 트리, 트라이(Tries), 그래프
- 스택 & 큐
- 힙(Heaps)
- Vector / ArrayList
- 해시테이블
- 알고리즘
- BFS (너비 우선 탐색)
- DFS (깊이 우선 탐색)
- 이진 탐색
- 병합 정렬(Merge Sort)
- 퀵 정렬
- 개념
- 비트 조작(Bit Manipulation)
- 메모리 (스택 vs 힙)
- 재귀
- DP (다이나믹 프로그래밍)
- big-O (시간과 공간 개념)
면접에서 문제가 주어지면 해야할 순서
<aside>
💡
면접관은 우리가 문제를 어떻게 풀었는 지, 과정을 알고 싶어하기 때문에 끊임없이 설명해야한다!
</aside>
- 듣기
- 문제 설명 관련 정보는 집중해서 듣자. 중요한 부분이 있을 수 있다.
- 예제
- 무식하게 풀기
- 처음에는 최적의 알고리즘을 생각하지말고 무식하게 풀어보기
- 최적화
- BUD (병목현상, 불필요 작업, 중복 작업)을 최적화 시키며 개선하기