HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
기술면접 6일차 (인수)

기술면접 6일차 (인수)

11:13 ~ 11:53
  • 자기소개
  • 인턴 과제 (15분 ~ 24분)
  • 가장 자신있는 기능 자세히 설명
    • 드릴다운
  • chart.js 사용이유?
    • 러닝커브 낮다
  • 입사하고 더 해보고싶은게 있는지?
    • 최적화 과정이 팀 내 다른 프로젝트에도 적용될 수 있을 것 같다
      • admin 등에서 레이아웃이 크게 변화되는 부분 있는데 거기 적용
  • 인턴프로젝트에서 개선하고 싶은점?
  • 리액트에 대해 설명해주세요
    • 가상돔으로 렌더링
    • 개발자가 그냥 DOM API를 통해 일부분만 고치면 되는것 아닌가?
      • 직접적으로 사용하는 것보다 렌더링에서 빠른 성능될 수 있다, UX측면에서 좋다
      • 컴포넌트 단위로 개발할 수 있어서 재사용성 측면에서도 좋다
    • 리액트가 어떻게 빠른건지?
      • 비교 알고리즘이 더 빠름
        • 트리 비교 과정에서 성능점인 이점이 있음
      • 비교 알고리즘 좀 더 알면 좋을듯?!
  • react 클래스컴포넌트에서 생명주기메소드 사용경험
    • hooks에서 생명주기 메소드 어떻게 연결?
      • useEffect 두번째인자에 빈배열 → componentDidMount, 의존성배열값 설정 → update
      • useEffect에서 return문으로 unmount 시 동작 정의
  • JSX는 js 정식코드가 아닌데, 어떻게 인식할 수 있는지?
    • 바벨
  • 웹팩에 대해서 아는 것?
    • CLI로 과제 진행
  • 클린코드 책 보신 것 같은데 생각나는 부분?
    • 클린코드가 무엇인가에 대한 감을 잡았다
    • 가독성 높아서, 누구나 쉽고 빠르게 읽을 수 있도록 작성해야한다.
      • 최소놀람의 법칙..?!
      • 한 프로젝트 내에서 코드를 읽으면서 놀라는 부분이 적게 해야한다.
      • 일관성있게 작성하자
  • 객체지향프로그래밍이란?
    • 디자인 패턴
    • 코딩을 할 때, 공통점을 중심으로 바라보는 방식
    • class로 구현, 행위나 상호작용은 메서드로 표현
  • 디자인패턴이란?
    • 코드를 작성할 때 가장 기본적인 코드 설계에 대한 원리, 규칙들을
    • Presentation and Container
      • UI는 Presentation, side effect는 Container에 작성
        • 관심사 분리
  • 아는 디자인패턴의 장단점
  • 보고서를 만들때 대상이 광고주분들인데, 어떤 광고데이터를 어떻게 표현해야할지 이런걸 본인이 선택했는지?
    • 지표들은 기획된 상태였음
    • 어떤 차트를 만들고, 어떻게 보여줄지는 프로토타입과 와이어프레임은 직접했다
  • 상태 라이브러리로 recoil 선택 이유?
    • 리덕스는 이미 경험 → 새로운거 하고싶었다
      • 리덕스 장점은 미들웨어인데, 굳이 필요없어서 사용안함
    • 리코일은 비동기 처리면에서 강력
    • ContextAPI → 상태 변화가 자주 발생하면 ContextAPI
  • e2e테스트 진행 이유?
    • 리팩토링하면서 필요했음
    • 같은 기능을 보장한다는 것에 대한 고민 → 실제 동작하는 브라우저 환경에서 돌아간다면 기능을 보장할 수 있을 것 같았다, 사용자 관점에서 테스트 가능
  • cypress 사용해서 어떤 테스트 진행했는지?
    • 시나리오를 작성
        1. 사용자가 리포트 페이지에 접속해서 오버뷰 조작
        1. 오버뷰 페이지, 위젯설정하면서 드릴다운 필터링하는 과정
  • 비즈CIC 부서를 선택한 이유? 인턴하면서 느낀점?
    • 산업공학과 복전하면서 데이터 다루고, 데이터에서 인사이트 발견하는 것이 재밌었다.
    • 매주 진행하는 스크럼에서 해당 부서의 진행과정을 확인했는데, GFA가 빠르게 성장중이고, 빠르게 변화를 추구하고 열정을 갖고있었다.
  • 데이터 다루는게 재밌다고 하셨는데, 생각과 다른 업무 맡게 된다면?
    • 주니어 개발자이기 때문에 단기적인 목표는 다양한 분야를 경험해보고, 적합하거나 관심있는 분야를 파악하는게 목표다
    • 다른 업무를 받아도 충분히 배울 수 있는 기회로 활용하겠다.
  • 웹개발자 선택 이유?
    • 노코드 툴로 서비스 제공했는데 한계를 많이 느낌
    • 개발자는 원하는 방향으로 서비스를 구현할 수 있어서 매력적이었다.
  • 창업이 최종목표?
    • 창업의 어려움을 많이 느낌
      • 도전정신 부족?
    • 창업의 꿈은 마음한 곳에 있지만 웹 개발자로서 전문성을 더 키우고싶다.
  • 네이버에서 역량 키우고 나가서 창업하는게 목표?
    • 창업은 전 분야를 다뤄야하는데 그 중에서도 문제를 해결하는 과정이 매력적이라 개발에 집중할 것
  • 프론트엔드 개발자 지망이유?
    • 처음엔 프론트, 백을 구체적으로 정하진 않았는데, 부트캠프에서 둘 다 다뤄보니까 흥미를 더 느끼는 분야는 사용자의 경험을 즉각적으로 개선하는 과정이었다.
  • 네이버에 지망한 이유?
    • 국내 최고 IT기업이니까, 성장하기 빠른 기업일거라고 생각
      • 훌륭한 동료들 속에서 같이 성장하고 싶다
  • 다른 훌륭한 기업도 많은데, 네이버여야 하는 이유?
    • 성과형 광고 분야는 카카오비즈..등에 비해 압도적 1위이다
  • 팀원에게 들었던 장, 단점 하나씩?
    • 장점 : 태스크가 주어지면 확실하게 기간에 맞춰서 구현한다, 책임감 있다
    • 단점 : 기능을 선정하는 과정에서 주도적으로 의견을 내기보다는 들으면서 판단하는 경향이 있다, 주도성이 없다
      • 단점 개선을 위해 노력중인 부분이 있는지?
        • 먼저 주도적으로 해보겠다고 해서 완수한 적 있다.
  • 인턴을 하면서 가장 힘들었던것, 어떻게 극복했는지?
    • 일정 산출을 하기가 어려웠다.
      • 시간 활용
      • 멘토님 조언 받음
        • 특정 기능을 구현할 때 핵심위주 → 세부 이런방식으로 구현