예비 개발자들의 기술 면접 준비를 위한 자료를 정리해놓은 Repository입니다. 개발이라는 분야를 모두 담지는 못했습니다. 그저 가이드라인으로 참고해주시면 감사하겠습니다. 또한 제가 개인적으로 면접을 준비하면서 정리한 내용이라 잘못된 부분이 있을 수 있습니다. 이런 부분들에 대해서는 Pull Request
or Issue
로 참여해주시면 정말 감사하겠습니다. 주제와 관련된 좋은 참고 자료를 추가하는 것도 가능합니다. 해당 Repository에서 학습을 하시다가 생기는 질문은 Issue
에 올려주세요!
취준생 여러분의 건승을 기원합니다 👍
💡 개발상식 Link
- 객체 지향 프로그래밍이란 무엇인가?
- RESTFul API란?
- TDD란 무엇이며 어떠한 장점이 있는가?
- 함수형 프로그래밍이란?
- MVC 패턴이란 무엇인가?
- Git과 GitHub에 대해서
💡 자료구조 Link
- Array vs LinkedList
- Stack and Queue
- Tree
- Binary Tree
- Full Binary Tree
- Complete Binary Tree
- BST(Binary Search Tree)
- Binary Heap
- Red-Black Tree
- 정의
- 특징
- 삽입
- 삭제
- HashTable
- hash function
- Resolve Collision
- Open Addressing
- Separate Chaining
- Resize
- Graph
- Graph 용어 정리
- Graph 구현
- Graph 탐색
- Minimum Spanning Tree
- Kruskal algorithm
- Prim algorithm
💡 네트워크 Link
- GET, POST 방식의 차이점
- TCP 3-way-handshake
- TCP와 UDP의 차이점
- HTTP와 HTTPS의 차이점
- HTTP의 문제점들
- DNS round robin 방식
- 웹 통신의 큰 흐름
💡 운영체제 Link
- 프로세스와 스레드의 차이
- 스케줄러의 종류
- 장기 스케줄러
- 단기 스케줄러
- 중기 스케줄러
- CPU 스케줄러
- FCFS
- SJF
- SRT
- Priority scheduling
- RR
- 동기와 비동기의 차이
- 멀티스레드
- 장점과 단점
- 프로세스 동기화
- Critical Section
- 해결책
- 메모리 관리 전략
- 메모리 관리 배경
- Paging
- Segmentation
- 가상 메모리
- 배경
- 가상 메모리가 하는 일
- Demand Paging(요구 페이징)
- 페이지 교체 알고리즘
- 캐시의 지역성
- Locality
- Caching line
💡 데이터베이스 Link
- 데이터베이스
- 데이터베이스를 사용하는 이유
- 데이터베이스 성능
- Index
- Index란 무엇인가
- Index의 자료구조
- Primary index vs Secondary index
- Composite index
- Index의 성능과 고려해야할 사항
- 정규화에 대해서
- 정규화 탄생 배경
- 정규화란 무엇인가
- 정규화의 종류
- 정규화의 장단점
- Transaction
- 트랜잭션(Transaction)이란 무엇인가?
- 트랜잭션과 Lock
- 트랜잭션의 특성
- 트랜잭션을 사용할 때 주의할 점
- Statement vs PrepareStatement
- NoSQL
- 정의
- CAP 이론
- 일관성
- 가용성
- 네트워크 분할 허용성
- 저장방식에 따른 분류
- Key-Value Model
- Document Model
- Column Model
💡 Design Pattern Link
- Singleton
💡 Algorithm (알고리즘) Link
- 손코딩 및 코딩 테스트 대비
=> 대부분의 내용이 코드이기 때문에 별도의 Repository에 저장합니다. - 코딩 테스트를 위한 Tip
- 문제 해결을 위한 전략적 접근
- Sorting Algorithm
💎 Java Link
- JVM에 대해서 / GC의 원리
- Collection
- Annotation
- Generic
- final
- Overriding vs Overloading
- Access Modifier
- Wrapper class
- Multi-Thread 환경에서의 개발
💎 JavaScript Link
- JavaScript Event Loop
- Hoisting
- Closure
- this에 대해서
- Promise
🔶 Front-End Link
- 브라우저의 작동 원리
- Document Object Model
- Event bubbling and Capturing
- Event delegation
- CORS
- 크로스 브라우징
- 웹 성능과 관련된 Issues
- 서버 사이드 렌더링 vs 클라이언트 사이드 렌더링
- CSS Methodology
- normalize.css vs reset.css
- Front-end-Developer-Interview-Questions (한국어)
- Front-end Interview (영어)
- Front-end Checklist
- 면접 시 물어보기 가장 좋은 것들이 '기본'에 대한 내용이라고 생각되는데요, 그 '기본'에 대해 체크리스트 형식으로 잘 정리되어 있는 문서를 공유합니다.
- 미세먼지 같은 면접 팁
- 주니어 개발자를 위한 취업 정보
- mission-peace/interview repository
=> 각종 알고리즘에 대한 코드와 동영상 강의 링크를 제공합니다. (영어) - awesome-interview-questions
=> 각종 언어, CS 기초에 대한 interview 질문들이 정리되어 있습니다. (영어) - coding-interview-university
=> (한국어 version) 구글 인터뷰를 준비하면서 정리한 자료가 한국어로 번역되어 있는 자료입니다. - 코딩 인터뷰 완전분석 => (도서) 코딩 인터뷰에 관련된 도서 중 가장 유명한 책이라고 생각되는데요, 최근 개정판이 발간되었습니다.
- tech-interview-handbook Github repository
=> (영어) 코딩 인터뷰에 관련되어 정리되어있는 respository 입니다.
해당 Repository에 기여를 해주신 분들입니다. 감사합니다. 🙏
Contributor | Description | |
---|---|---|
joshua-qa | New resource : 알고리즘 연습 사이트 추가 |
|
yoonsubKim | New resource : Part 1 - 운영체제 |
|
joeunha | Fix typo |
|
jhleed | Fix typo |
|
StiKuan | New resource : Part 2 - Java |
|
hb1love | New resource : Part 1 - 운영체제 |
|
keyakoto | New resource : 알고리즘 연습 사이트 추가 |
|
getsolaris | New resource : 알고리즘 연습 사이트 추가 |
|
yunitto | Fix typo |