210825 TIL 프론트엔드 신입 면접 과제

» 2막, TIL (Today I Learned)

프론트엔드 신입 면접 과제

스타트업에서 1년 정도 혼자 일하다가 경력자 한 분이 오셨다가 바람처럼 가시고(…) 또 혼자 한동안 하다가 근래에 경력자 세 분을 모셨었다.
이번엔 신입 분을 면접보게 되어서 처음으로 과제를 만들게 되었다.

과제는 들어오시게 되면 아마 하게 되실 어드민 테이블 구현하기였다. (놀랍게도 내가 신입으로 들어올때와 같은 과제!) 과제는 아래 순서로 작성했다.

  1. mockData를 전달해줄 수 있는 API 를 웹서버에 만들고
  2. 과제 문서를 작성하여
  3. git private repository를 파고, README에 과제 내용을 올리고 template으로 저장한다.
  4. 새로운 repository를 template을 사용하여 만들어 면접자를 초대하면 끝!

과제를 어떻게 전달받을지 고민이 많았다. 원래는 PR 방식으로 해보려고 했는데, 그렇게 되면 다른 면접자의 코드를 보게될 수도 있는 이슈가 있었다.
팀에서 같이 고민 중이었는데 한 팀원 분께서 template를 활용해서 하는 방법도 있다고 말씀해주셨다. 그렇게 되면 매번 면접자 전용 repository를 파서 같은 포맷으로 전달할 수 있는 것이다! 아주 굿!

과제 문서는

  1. 과제 소개 (프로그래머스 카카오 고양이 과제? 느낌을 내보려고 했다. ~요청서를 제출했습니다~ 볼 수 있는 화면을 만들어주세요! )
  2. 구현 내용
  3. 과제 상세 설명
  4. 과제 제출 방법
  5. 기타 (WIFI 정보 등)블
  6. API 문서

순으로 작성했다.

on-site로 3-4시간 정도의 분량으로 기획했기 때문에 일단 통신 연결에서 테이블만 그려보는 것을 기준점으로 삼았다. 아래 내용까지 하면 가점..

  1. Redux, TypeScript 사용
  2. 다른 통신으로 받아오는 테이블 구현 (탭메뉴)
  3. pagination 기능
  4. filter 기능

라이브러리를 써도 되고 안 써도 된다고 언급은 했는데, 아무래도 테이블을 만들어본 경험 유무의 따라 난이도가 확 달라지는 것 같다.
그 부분을 수정을 해야하나 아직 고민중이다. 코딩 실력을 볼 수 있는 코드가 있어야 되는데 아예 아무것도 안되어 있으면 서로 시간 낭비이기 때문이다.

과제를 진행하면서 중간 중간 막히는 부분은 바로 메일 주시라고 했는데 아무래도 면접자 분들은 부담스러워하시는 것 같다.
이 부분은 좀 더 적극적으로 개입해서 코드 진행 상황을 보고 팁을 드릴 수 있도록 해야겠다.

아, 그리고 배점표도 만들어보았다.ㅎㅎ 뭔가 점수를 매기기 위함이라기 보단 공정하게 평가하기 위해서!
아키텍쳐, UI, 통신호출, 클린코드(네이밍 등) 위주를 평가할 수 있도록 했다.

과제를 받는 입장만 생각했는데, 내는 입장이 되니 오히려 더 고민해야할 게 많았다.
말이 괜히 너무 어렵진 않은지..
라이브러리를 쓰게끔 유도해서 진짜 필요한 코드를 볼 수 없는건 아닌지..
내가 괜히 API 만들어서 오류나는건 아닌지..

오히려 과제를 받는게 맘이 편할 정도! 😭 좋은 분이 오셨으면 좋겠는 마음으로 열심히 준비해보았다~ 끝!