TIL 20일차 - [면접] 기술 면접 준비하기

Yoon Kyung Park·2023년 5월 8일
0

TIL

목록 보기
20/75
  • 프론트엔드 개발자 기술 면접에 대해서 이해한다.

    o

  • 기술 면접에서 요구하는 올바른 답변이 무엇인지 이해한다.

    o

  • 기술 면접 준비를 직접해 본다.

    o

  • 모의 기술 면접을 실제 해보거나 시청하면서, 어떻게 기술 면접을 할지 고민해 본다.

    o
    첫문장에 질문에서 요구한 답을 담는다.
    그리고 그 답에 대한 해설을 다음에 푼다.

셀프 체크리스트

  • 잘 모르는 내용에 대해서 모르는 부분을 인정하고 아는 부분까지는 최선을 다해 설명했는가?

    o
    가장 자신있는 질문을 선택했기에 가능했지만, 나머지 질문들에 대한 답은
    더 깊이 고민해봐야겠다.

  • 추측성 단어(’~같아요.’)가 아닌, 자신감 있는 단어(’~입니다.’)로 답변했는가?

    o

  • 한 번 들었을 때 이해하기 쉽게 답변했는가?

    o

  • 몸을 배배 꼬거나 다른 데를 보거나 하는 나쁜 자세를 취하지 않았는가?

    o
    다만, 말이 조금 빠른 것 같아서 호흡을 끊어가며, 중요한 부분을 강조해야겠다.

  • 질문을 잘 이해하고, 질문의 요지에 정확하게 답변했는가?

    o
    질문의 요지에 대한 답을 첫문장에 담으려고 했다.

  • 해당 개념 설명이 간단명료한가?


    개념에 대한 예시를 들으려고 하니 좀 길어졌다.
    나만의 언어로 어디까지 대답을 해야하는지 그 분량을 잘 모르겠다.

  • 개념 설명과 예시가 단순 암기가 아니라 자신의 언어로 충분히 풀어 설명했는가?

    o

  • 두괄식으로 개념을 설명하고, 그에 따른 예시를 풀어서 설명했는가?

    o

  • 구체적이고 풍부한 개념 활용 예시를 사용했는가?

    o

  • 잘 모르는 내용에 대해서 불명확하게 설명한 부분이 있었는가?

    x
    불명확한 부분은 답변에 담지 않았다.
    그 부분은 더 찾아보고 보충해야겠다.

  • 정확한 CS 용어(ex. 변수를 만들어서 값을 넣어요. → 변수를 선언하고 값을 할당합니다. 등)를 사용해서 답변했는가?

    o
    최대한 개념에 대한 정의에는 전문 용어를 담으려고 했고,
    예시에는 나만의 언어르 담으려고 했다.

모의 기술 면접

Q. 원시 자료형과 참조 자료형에 대해서 설명해주세요.

A. 원시 자료형과 참조 자료형은 값의 속성과 값을 저장하고 변경하는 데에 있어 차이가 있기 때문에 구분하여 사용해야 됩니다.

원시 자료형이란 간단한 형태로 구성되는 정보의 유형들을 의미하며,
number, string, boolean, undefiend, null, symbol이 있습니다.

이와 같은 데이터 타입은 값의 크기가 일정하여 새로운 공간에 값을 저장하는 것이 용이합니다.

원본의 값을 복사할 때, 처음 저장된 원본의 값 자체를 저장하기 때문에
복사본에서 값을 변경한다 해도 이미 복사하여 저장된 원본의 값에는 영향을 미치지 않으며, 마찬가지로 원본의 값을 바꿔도 복사본의 값에는 영향을 주지 않습니다.

예를 들면, 서류 원본을 복사기에 복사하면, 처음 서류 원본에 적힌 글자들(원시값)이 복사되고, 이때 복사본을 찢거나 변경해도 원본의 값은 변하지 않으며, 원본의 값을 지우고 추가해도 이미 복사된 복사본의 값에 영향을 주지 않는 것과 같습니다.

따라서 원시 자료형은 원시값 자체를 복사하므로 변경이 불가한 값을 의미하는 immutable value 입니다.

반면, 참조 자료형이란 일정하지 않은 값의 크기로 구성되는 정보의 유형들을 의미하며, 배열, 객체, 함수, 원시 자료형이 아닌 타입들을 의미합니다.

값의 크기가 일정하지 않으므로 매번 새로운 공간을 확보하여 값을 복사하여 저장하면 많은 공간이 필요하고, 매번 변경할 때마다 저장된 공간들을 찾아가 일일이 변경해야 하는 비효율성 때문에 이러한 과정을 생략하고자 참조 자료형이 등장했습니다.

이 참조 자료형은 원본의 값을 저장하는 것이 아니라 원본의 값이 저장된 공간에 대한 주소가 저장되는 것이기 때문에 값이 저장된 공간은 여전히 동일합니다.

따라서 복사된 주소를 따라가 그 공간에서 값을 변경하면, 원본의 값도 변하게 됩니다.

예를 들면, 보물이 들어있는 보물상자가 있다고 가정하면,
매번 보물상자에 담긴 수많은 보석들을 일일이 한 공간에 하나씩 담으면
원하는 보석을 사용하거나 팔거나 추가하려고 할 때마다
그 보석이 담겨있는 곳으로 가야하는 번거로움이 생깁니다.

그래서 보물들을 한 곳에 담아두고 이 보물상자를 필요할 때마다
찾아가 사용할 수 있도록 지도를 만들어 언제든 이 지도를 따라 가면
보물상자가 있도록 했습니다.
이 지도는 언제든 여러장 복사할 수 있습니다.

그런데 만약 누군가 그 지도를 가지고
보물상자가 있는 곳에 가서 보물을 몇개 가져가면,
그 순간부터 그 안의 값은 변경됩니다.

이때 보물이 들어있는 보물상자는 참조 자료형의 값이 들어 있는 공간이고,
이 보물상자를 찾아가기 위한 지도는 참조 자료형의 주소입니다.

참조 자료형은 보물을 복사하는 게 아니라 이 지도를 복사하는 것이므로
값을 변경하면 원본의 값도 변경되는 것입니다.

따라서 참조 자료형은 원시값이 아닌 주소값을 복사하므로 변경이 가능한 값을 의미하는 mutable value 입니다.

소감

🔡➡️💻➡️🤓👍

가장 많은 도움과 깨달음을 얻은 unit이었다.
다른 분들의 회고들을 보며, 공감과 자극을 받을 수 있었다.

사실 section1의 마지막 과제인 '나만의 WebApp을 만들기'에서
그만두고 싶다는 생각을 했다.

단순히 힘들어서가 아니라,
내가 잘할 수 있을까.
과연 전문가로서 직업으로 나의 책무를 다 할 수 있을까.
불안했고, 의심이 들었다.

자신이 없었다.
무언가를 끝까지 하고자 했지만,
너무나도 부족한 것 같고, 자신도 없고, 불안했다.

당연한 거지만, 그 당연함을 받아들이기에
나의 실력이 너무 부족하고, 느리다고 생각이 더 크게 들었다.

그래서 포기하고 싶었다.
나는 아무래도 이 직무에 어울리지 않다고 생각했다.

그래도 section1은 마무리해보자는 마음으로
오늘 unit에 임했는데, 오히려 더 좋은 자극을 얻을 수 있었다.

항상 긍정적인 생각을 하려고 하지만,
눈에 보이는 성과가 나지 않으니 긍정적인 생각보다 부정적인 생각이
더 많이 들었던 한 주였다.

정말 아무것도 모르고, 관심도 없던 내가
그럼에도 잘 마무리한 것 같아서
여기서 포기하지 않고, 더 걸어가보려고 한다.

그럼에도 불구하고
나는 어찌 되었든,
해낼 것이다.
반드시
🧚

profile
developerpyk

0개의 댓글