Intro
- 개발자 유튜버 "프롱트"님이 게시한 영상에서 제공하는 자바스크립트 면접 단골 질문과 알아야하는 CS지식의 리스트를 확인해 보겠습니다.
- 추후에 질문에 해당하는 내용을 채워나갈 예정입니다.
- 아래 질문을 먼저 대비해 보고, 꼬리물기 질문도 함께 준비해 보면 좋을것 같습니다.
- 프론트엔드를 준비할때, 프로젝트를 만들면서 관련된 주제를 깊이 있게 공부하면 좋겠습니다.
JS 질문
1. prototype
- prototype이 뭐에요?
- Function.bind 되는 이유는?
- 상속을 구현해볼래요?
2. This
- this는 언제 결정되나요?
- Arrow function this는?
- this를 변경시키려면?
- call, apply
3. debugging
- 버그 문제를 어떻게 해결해요?
- 본인만의 디버깅 방식은?
- Calling stack?
- Network 오류 상황에 어떻게 확인해요?
4. Closure
- closure를 정의한다면?
- closure를 활용한 구현경험?
- 커링 아세요?
- 고차함수는 뭔가요?
5. FP(Functional Programming)
- 배열의 고차함수 어떤것을 사용하세요?
- reduce 한번 구현해보세요.
- 합성은 상속과 어떤 장점이 있나요?
- Immutable? 그것의 단점도 있나요?
6. OOP
- ES Classes 상속 경험있어요?
- 객체를 나누는 단위는?
- 애플리케이션 의존성을 낮추는 방법은?
7. 비동기
- Promise, async/await 차이는?
- promise 패턴 설명해보세요.
- setTimeout에 promise 적용한다면?
- 동시에 여러의 관계없는 요청을 한다면?
- Micro task queue?
8. 객체
- 객체 표현 방식 중 자주 사용하는 것은?
- class, prototype, literal 차이?
- 자주 사용하는 메서드는?
- JSON 데이터 파싱시 가장 신경쓰는 것은?
9. 기타
- generator 뭔가요?
- ES Next 관심있는 문법은?
- 정규표현식은 언제 써봤어요?
알아야하는 CS 지식
1. HTTP
- HTTP 기본기 위주 (버전별 특징 등)
- HTTP headers는 무엇이고 어떤 항목들이 있나요?
- session과 cookie는 무엇인가요?
- status는 무엇인가요?
- request와 respons 내용은요?
- HTTP 버전은 성능을 어떻게 개선중인가요?
2. 자료구조
소프트웨어 개발은 자료(데이터)를 기본으로 사용자와 소통하는 것 입니다.
- 스택, 큐, 리스트, 딕셔너리, Set, 트리 ...
3. 알고리즘
구현하지 않아도 되는 것들이 대부분 입니다.
하지만 잘 이해하고 사용하는 것이 필요합니다.
때로는 내가 직접 구현해야 합니다.
4. 프로그래밍 패러다임 (OOP, FP)
객체와 함수. 적절한 상황에서 이를 활용합니다.
대부분의 디자인 패턴도 이 두 가지 패러다임의 완성도를 높이는 것과 관련되어 있습니다.
5. 소프트웨어 공학
제한된 자원으로 최대한의 성능을 내기 위해서 다음과 같은 요소가 중요합니다.
👉 형상관리, 테스팅, 프로젝트 방법론
- 단위테스트 구현
- 애자일 실천해보기
- 일정의 압박
- 팀 프로젝트 (github)
- Task 관리 (github)
UX
Database
디자인패턴
출처
참고
삭제된 댓글입니다.