총 3군데에서 면접을 봤고 간단하게 면접 회고를 하려고 합니다.
참고로 전 3군데 중에 한 곳을 붙어 입사할 예정입니다.
기술 질문
많이 나온 질문들
- 호이스팅, 호이스팅을 활용한 경험
- 클로저, 클로저를 사용해 개발한 경험
- React의 장점
- Virtual DOM이 DOM에 반영되는 과정
- state와 ref의 차이
- CSR과 SSR의 차이점
- Hydration이 무엇이고, Hydration error가 발생할 때의 문제점
내가 제대로 답하지 못했던 질문들
- HTTP 1.1 / 2.0의 차이
- HTTP와 HTTPs의 차이
- C++의 vector와 자바스크립트 배열의 차이점
📌 느낀점
모르면 모른다고 솔직하게 이야기해야 한다. 크게 문제가 되지 않는다. 공부하면 되니까!
근데 JavaScript, React은 무조건 공부하기!! 근본이 중요함
이력서 기반 질문
단순히 스펙을 쌓으려는 활동인지 혹은 진짜로 문제를 해결하고 가치를 만들어낸 경험인지를 검증하는 질문들이 많았다.
- ~를 하셨는데 구체적으로 어떤 성과를 달성하셨나요??
- 디자인 시스템 어떻게 구축했는지
- 왜 이런 기술 스택을 선택했는지
- 왜 최적화 작업을 했는지, 정말 필요했던 작업이었는지, 어떤 성과가 있었는지
- 만약 암호화된 외부 라이브러리 자바스크립트 파일을 사용하게 된다면 어떻게 최적화 작업을 하시겠어요??
📌 느낀점
- '왜 이 작업을 했는지', '어떤 효과가 있었는지'를 정리해보자.
- 선택에는 항상 이유와 대안 비교가 따라와야 한다.
- 숫자로 성과를 이야기하면 설득력이 높아진다.
기타 질문들
다 예상 가능한 질문들이었다.
- 프로젝트 중에 가장 기억에 남는 것
- 최근에 공부하거나 관심 있는 기술
- 기술적으로 가장 도전적인 문제를 해결한 경험
- 어려운 상황이 발생할 때 대처 방법 (기술적 어려움, 업무적 어려움 등등)
- 성격의 장단점
- 협업할 때 중요하게 생각하는 점
- 본인만의 커뮤니케이션 노하우
- 어떤 상황에서 스트레스를 받는지와 해소 방법
- 지금까지 인생을 살면서 본인이 가장 성공/실패했던 경험
- 이 세상에 개발자라는 직업이 없다면 무엇을 했을지
- 학점 높고 대기업 입사도 가능할 것 같은데 스타트업에 지원한 이유
- 본인만의 회사 고르는 기준
- 전 회사로 돌아가지 않는 이유? 어떤 도메인을 선호하는지?
- 몇 년 후에 어떤 개발자가 되고 싶은지
📌 느낀점
- 본인의 생각을 묻는 질문이라면, 반드시 근거(경험)를 뒷받침해야 한다.
- 단순히 원론적인 답변이 아니라, 실제 경험과 연결해서 이야기해야 한다.
+) 과제 질문은 거의 없었다. 기대 이상으로 잘했다 싶으면 질문을 안한다ㅎ
내가 한 질문들
- 팀과 프로덕트 관점에서 이 회사의 강점과 차별점
- 내부 구성원들이 실제로 어떻게 생각하는지 확인
- 면접관이 회사에 대한 애착과 신뢰를 가지고 있는지 평가
- 5년 후의 목표
- 대표 또는 리더의 꿈의 크기과 어떤 비전을 가지고 있는지 파악하기 위해
- 이 회사가 단기간 내에 빠르게 성장할 수 있었던 비결
- 단순한 운이 아니라, 성장의 원동력이 무엇인지 확인하기 위해
- 진짜 궁금해서!
강점과 차별점에 대한 질문을 했을 때, 바로 답하는 면접관들(A 회사)이 있었고 서론을 이야기하면서 머리속으로 생각하는 면접관들(B 회사)이 있었다.
신기하게도 B보다 A가 더 작은 규모의 스타트업이었다.
보통은 규모가 큰 회사일수록 더 체계적일 거라고 생각하지만 (대부분 맞는 말이긴 하다), 실제로는 A가 내부적으로 비전과 방향성이 더 명확하게 정리되어 있었고, 팀원들 간의 얼라인이 잘 맞는 문화가 조성되어 있을 가능성이 높았다.
📌 느낀점
- 나의 질문 타임을 적극적으로 활용하자.
- 내가 원하는 조직 문화와 맞는 회사인지 직접 검증하는 과정이 될 수 있다.
마무리
면접을 보면서 느낀 점은, 회사마다 질문이 다 비슷비슷했다는 것
결국 주니어 개발자에게 기대하는 역량은 대부분 비슷하다는 의미다.
그렇다면, 이 비슷한 면접에서 합격을 가르는 차이는 무엇일까?
지금부턴 제 개인적인 생각입니다.
기본기가 중요하다
- 프론트엔드 개발자라면, HTML, CSS, JavaScript는 기본, React도 거의 필수.
- 하지만, "왜 React를 써야 하는지"를 명확하게 설명할 수 있어야 한다.
- "개념을 아는 것"을 넘어, 실제 프로젝트에서 어떻게 적용했는지를 이야기할 수 있다면 플러스 점수를 얻을 수 있다.
커뮤니케이션 & 협업 경험을 강조하자
기술이 비슷한 지원자들이 많다면, "함께 일하기 좋은 개발자"라는 인상을 주는 것이 중요하다.
- 팀원들과 협업할 때 어떤 점을 중요하게 생각하는지
- 어떤 방식으로 커뮤니케이션했는지
이때 본인 생각을 말할 때 경험이 뒷받침되어야 한다.
'왜 했는지'와 '어떤 효과가 있었는지'를 이야기하자
- 왜 이 작업을 했는지, 어떤 결과를 만들었는지 이야기하면 설득력이 높아진다.
- 예시: "디자인 시스템을 구축했습니다."
- 이유: 팀 내에서 컴포넌트 스타일 일관성이 부족하고 재사용성이 낮아 유지보수 비용 증가
- 결과: 새로운 페이지 개발 속도가 평균 30% 빨라짐
나 같은 경우에는 이유는 명확한데 효과를 설명하기 어려웠다.
앞으로는 기록하는 습관을 들이고, 내가 했던 작업의 의미와 효과를 더 깊이 고민해야겠다.