TIL 60일차 -Section3 기술 면접

Yoon Kyung Park·2023년 7월 6일
0

TIL

목록 보기
60/75

Step 1: 아래 질문 중 하나 이상의 질문을 고른다.

재귀
: 재귀를 활용하기 좋은 상황은 언제인지 예시를 들어 설명해 주세요.

UI/UX
: UI, UX의 개념과 두 개념의 관계에 대해서 설명해 주세요.

Custom Component
: Styled Components를 사용해 보면서 느낀 장점을 이야기해 주세요.
: useRef가 필요한 상황을 예시를 들어 설명해 주세요.

Redux
: 상태관리 라이브러리의 필요성에 대해서 설명해 주세요.
: Redux의 주요 개념들과 연결 관계를 설명해 주세요.

웹 표준 & 웹 접근성
: Semantic HTML의 필요성을 예시를 들어 설명해 주세요.

네트워크 심화
: IP 프로토콜의 한계에 대해서 설명해 주세요.
: HTTP 프로토콜의 특징에 대해 설명해 주세요.

인증 / 보안
: Cookie의 MaxAge, Expires 옵션이 무엇인지, 설정하지 않으면 어떻게 되는지 설명해 주세요.


Step 2: 고른 질문에 대한 답변을 글로 작성한다.

우선 답변을 한 마디로 정리한다. 나쁜 면접관은 없지만, 바쁜 면접관은 있다.
이력서도 제대로 읽고 들어오지 못하는 면접관이 있을 것이다.
그래서 짧고 명료하게 해당 질문에 대한 답을 하는 것이 가장 좋다.
(간단명료한 답변이 마음에 들었다면, 이후 내용은 맞다고 생각하고 넘어갈 수도 있다.)

예시 질문: 클로저에 대해서 설명해 주세요.

클로저는 함수와 함수가 선언된 어휘적 환경의 조합입니다.

해당 질문의 중요한 포인트를 2-3개 선정한다.
면접관은 “정말 이 개념을 잘 알고 있는가?”를 궁금해한다.
아마 위 정의를 그대로 이야기하고 추가로 설명을 하지 않으면,
“잘 모르는 것 같은데?”라고 의심할 것이다.
면접관이 꼬리질문을 하기 전에, 먼저 핵심 포인트에 대해서 고민해 본다.

예시 질문: 클로저에 대해서 설명해 주세요.

클로저는 함수와 함수가 선언된 어휘적 환경의 조합입니다.

어휘적 환경이 뭐죠?

함수가 선언된 주변 환경을 의미합니다.
주로 외부 함수(outer function)의 변수가 내부 함수(inner function)의 어휘적 환경에 포함됩니다.
그래서 내부 함수가 리턴되어도 나중에 클로저의 어휘적 환경에 접근하여 외부 함수의 변수에 접근할 수 있습니다.

그래서 클로저를 언제 쓰나요?

클로저는 사실 자바스크립트의 어떤 함수든 가지고 있습니다.
어떤 함수든 전역 변수에 접근할 수 있기 때문입니다. 그래서 언제나 쓰이고 있습니다.

자바스크립트에서 private 메서드를 구현하기 위해서도 클로저를 활용할 수 있습니다.
클로저 내에 있는 변수는 외부에서 접근할 수 없기 때문에,
클로져 내에 있는 변수를 활용할 수 있는 private 메서드만 따로 노출시켜서 인터페이스처럼 사용할 수 있게 됩니다.

답변을 중요한 포인트와 함께 다시 정리한다.
바쁜 면접관은 위 설명을 제대로 못 들었을 수도 있다. 그래서 다시 지금까지 했던 내용을 정리하면 좋다.

정리하면, 클로저는 함수와 함수가 선언된 어휘적 환경의 조합이며
특히 private 메서드 구현을 위해 알아야 하는 개념입니다.


(Optional) Step 3. 면접 답변을 직접 녹화하고 스스로 피드백한다.

모든 질문에 대한 답변을 준비했다면, 면접 답변을 스스로 하면서 모의 면접을 준비해 본다.
줌 녹화 기능을 활용한다.

난이도 하
: 작성한 면접 답변을 보면서, 카메라를 보고 답변한다.

  • 면접 답변을 제대로 힘 있게 읽는 것에 집중한다.
  • 자신의 시선이나 행동, 자세를 모니터링한다.

난이도 중
: 면접 질문과 면접 답변의 키워드만 적어놓고, 카메라를 보고 답변한다.

  • 면접장에서는 작성해 둔 면접 답변을 볼 수 없기 때문에,
    키워드를 보고 면접 답변의 내용을 떠올리면서 답변한다.
  • 면접 답변의 내용이 100% 떠오르지 않았을 때,
    어떻게 자신의 언어로 바꿔서 답변할 수 있는지 고민한다.
  • 자신의 시선이나 행동, 자세를 모니터링한다.

난이도 상
: 면접 질문만 적어놓고, 카메라를 보고 답변한다.

  • 키워드와 면접 답변 모두 자신의 머리에서 입으로 잘 표현할 수 있는 연습이다.
  • 면접 답변의 내용이 100% 떠오르지 않았을 때,
    어떻게 자신의 언어로 바꿔서 답변할 수 있는지 고민한다.
  • 자신의 시선이나 행동, 자세를 모니터링한다.

셀프 체크리스트

  • 잘 모르는 내용에 대해서 모르는 부분을 인정하고 아는 부분까지는 최선을 다해 설명하려고 노력했나?
  • 추측성 단어(~같아요.)가 아닌, 자신감 있는 단어(~입니다.)로 답변하고 있나?
  • 한 번 들었을 때, 이해하기 쉬운 답변인가?
  • 몸을 베베 꼬거나 다른 데를 보거나 하는 나쁜 자세를 취하지 않았나?
  • 질문을 잘 이해하고, 질문의 요지에 정확하게 답변했나?
  • 해당 개념 설명이 간단명료한가?
  • 개념 설명과 예시가 단순 암기가 아니라 자신의 언어로 충분히 풀어 설명되었나?
  • 두괄식으로 개념을 설명하고, 그에 따른 예시를 풀어서 설명하고 있나?
  • 개념 활용 예시가 구체적이고 풍부했나?
  • 잘 모르는 내용에 대해서 불명확하게 설명한 부분이 있었나?
  • 정확한 CS 용어(ex. 변수를 만들어서 값을 넣어요. → 변수를 선언하고 값을 할당합니다. 등)를 사용해서 답변했나?

소감

🔡➡️💻➡️🤓👍

벌써 섹션 3이 마무리 되었다.
섹션을 마무리 하면서 동기분들의 회고록을 보니
다들 더 많이 발전하고 성장하신 것 같아
긍정적인 자극을 많이 받았다.

아무래도 요즘 학습 진도도 부진하고,
스스로 같은 자리에 머무르는 것 같아서
무기력해지고, 나태해졌는데

한 번씩 이렇게 회고하는 시간을 통해
스스로도 돌아보고, 자극을 받아 다음 섹션을
또 잘 시작할 수 있도록 도와주는 것 같다.

코딩 테스트, 별도의 인강, 사이드 프로젝트, 이력서 써보기 등은
아직 시작해보지는 않았지만,
어느 정도 실력을 쌓고 시도하려고 하기보다는 일단 해보자!
틈틈이 인강도 듣고, 테스트나 프로젝트를 해봐야겠다.

섹션 3도 고생 많았고, 섹션 4도 잘 즐겨가며 마무리 해보자!
뭐 어쩌겠어. 내가 선택한 건데. 끝은 봐봐야지. 뭐.. 안 그래?

profile
developerpyk

0개의 댓글