면접에서 물어본 개념만 답하는 1depth, 더 깊이 있는 2depth, 내 생각을 전하는 3depth까지 말하는 내용의 세션을 들었었는데 이러면 면접시 답변의 길이가 너무 길어질까봐 걱정입니다. 1분 ~ 1분 30초로 듣는 사람이 너무 피곤하지 않을정도로 깔끔하게 답변하는 것이 좋다고 많이 들었는데 어떤 상황에 이렇게 깊이있는 답변을 하면 좋을까요??
- 면접관 스타일따라 다르다 → 얘기를 하면서 면접관을 파악
- 처음부터 너무 길게 답변할 필요는 없을 듯 → 추가로 물어보면 더 답변
- 틀린말을 안하는게 가장 중요!
vanila js로 노션을 구현하는 과제를 진행했었는데 대충 어떤 흐름인지는 알겠지만 구현하는데 있어서는 꽤 어려움을 겪었습니다. vanila js로의 구현 능력을 더 끌어올려야할까요? 그렇다면 어느 정도까지?
- 만드는 것 자체는 경험이지만 실제로는 할 일 잘 없음…
- 프레임워크 등 다른 부분 공부하기에도 바쁠 것
- 중요하지 않은건 아니지만 너무 깊이 파고들 필요까진 없을 듯?
- 라이브러리나 프레임워크가 내부적으로 어떻게 되어있는지를 공부를 하는식으로 해도 충분
react의 상태관리 라이브러리로 redux, recoil, zustand, jotai 등 다양한게 있는데 어디까지 알고 적용해보는게 좋을까요?
- api 레벨에서 공부는 괜찮지만, 사실 라이브러리가 해주는게 별로 없음 (내용은 되게 간단…)
- 이보단 이를 통해 만든 앱을 공부하거나, 직접 만들면서 실무에서는 어떻게 적용하는지 파악하는게 중요
- 회사마다 적용하는 다양한 패턴들…
- 리덕스는 ‘이벤트 버스’ 패턴으로 요새 잘 안쓰는편
- 리덕스의 장점, 단점? 등 이런 부분은 알아두자. (리덕스가 아니더라도 본인이 프로젝트 적용한 상태 관리라이브러리의 사용법, 장단점 등은 알아두자 → 면접 단골질문)
- 상태관리 라이브러리들이 어떤식으로 동작하는지에 대한 흐름과 api들은 어떤식으로 되어있는지만 파악하고 세세하게 다룰 필요는 x
- 리덕스, jotai를 많이 쓰는 것 같다… (리코일은 많이 무거운데 이를 경량화한게 jotai)
react + next.js 조합을 많이 쓰는 것으로 알고있는데 멘토님이 생각하시는 nextjs의 장점과 단점?
- ssr을 적용하면 유저 입장에서 첫 화면을 볼 때나, 링크 이벤트를 클릭할 때 마다 느리게 작동
- 실제로 멘토님도 ssr 적용시 다른 사람들로부터 ‘왜 이렇게 느려졌냐’ 라는 피드백을 많이 받았다고 함 → 회사에서 이를 걷어내기도…
- 그럼에도 next.js를 쓰는 이유는 리액트를 활용하는 과정이 훨씬 수월해지기 때문 (편의 기능이 많음)
- File-Based Routing
- 빌드 시스템
- ssr의 단점은 분명히 있기 때문에 잘 알고 적용하는 것이 중요
원하는 회사에 다니는 사람들에게 정보를 얻기 위해 무작정 연락하는 것이 실례일지, 어떤 방법으로 접근이 가능할지?
- 커피챗 요청
- 너무 가볍게 요청하지만 않고 정중하게 부탁드리면 도와주려고 할 것
- 해주는 입장에서도 커피챗을 통해 이 사람이 어떤걸 느꼈는지 피드백을 원할 수 있는데, 듣는 입장에서 그냥 그렇구나~ 하고 넘기면 해주는 사람은 다음에 별로 하기 싫어짐…
component를 쪼개는데 집중하다보니 오히려 너무 많은 컴포넌트로 더 복잡해진 경험이 있었는데 멘토님께서는 컴포넌트를 최소 단위로 어느정도 까지 쪼개시는지? 버튼, input 창 들도 다 컴포넌트화? → 그렇다면 폴더 구조를 어떻게해서 깔끔하게 할 수 있는지
- 컴포넌트의 기준을 재사용이 되는지 안되는지로 우선 구분
- 처음부터 컴포넌트를 다 나눠버리면 필요없는 컴포넌트들이 많아져서 복잡해질 수 있음
- 그렇기 때문에 재사용이 확실히 되는 부분은 컴포넌트화하고 나머지 내용들은 우선 한 파일에 넣으면서 중간중간 리팩토링
- 반복되는 부분을 다시 컴포넌트화
- 멘토님은 파일 하나에 200줄 넘어가면 컴포넌트화를 고려하시는 편 (너무 길어지면 읽기 어렵기 때문)
scss, styled-component 등 다양한 css 기술이 많은데 멘토님께서는 어떤걸 선호하시는지?
- 지금은 tailwind 사용 → react에 쓰기 편함 (처음엔 거부감이 있을지도..)
- css 모듈은 파일을 왔다갔다하면서 개발하는 속도가 느려지고, 실수가 있을 수 있기 때문에 별로 선호를 안하시는편 (이건 사람마다 다르기 때문에 본인에게 맞는 방법을 적용하는게 중요)
- styled-component는 런타임에 css를 만들기 때문에 메모리나 성능 이슈측면에서 별로
- ++ 멘토님께서는 tailwind 대비 보기 좋은지도 잘 모르겠다고 하심
- 최근에는 tailwind or css 모듈을 선택하는 것 같다.
- 하지만 이것도 사람마다, 회사마다 선호도가 다 다르기 때문에 정답은 없음
- 토스는 styled-component, emotion 등을 사용