7:32 ~ 8:13
자기소개
- 서비스 운영, 기획 경험이 개발에도 도움이 된다고 생각?
- 문제 해결이라는 측면에서 공통적이다
- 기획자보다 개발자가 되고 싶은 이유?
- 기획자는 '전문성'을 가진 분야일까? 라는 생각이 들었다
- 기획은 성장 방향성이 뚜렷하지 않았다.
- 개발은 눈에 보이는 해결방향을 만든다.
인턴 프로젝트
- 인턴 프로젝트 소개
- 다차원 시각화 리포트
- 5분 요약 (7:38~7:47) →
9min
- PPT 한눈에 잘 보이고 훨씬 깔끔해짐!
- 데이터는 서버에서 받아오는것?
- 스택은 어떤거 사용?
- 리액트, typescript, cypress, recoil
- React 사용이유?
- 익숙한 기술, 시간 비용적 측면에서 사용
- 익숙한 기술이라 썼다는말 위험쓰
- 사용자 인터랙션이 계속 발생 → 렌더링 측면에서 리액트 강점
- 리액트가 왜 렌더링 측면에서 강점이 있는지?
- 가상돔이 최적화 해줌
- Typescript 장점?
- 다른 분들이 읽기에도 좋았다
- recoil 사용 이유?
- 상태 관리 라이브러리
- hooks 사용하듯이 처리할 수 있음 → 사용성 좋았다
- redux에 비해서 코드가 간결, 코드가 직관적
- redux는 미들웨어가 강력 → 인증.. 등에서는 강점
- redux 미들웨어 사용해본거 있는건지?
- X
- 더 개선을 한다면, 어떤 부분 개선하고싶은지?
- 쿼리 스트링
인성/개발
- 프론트엔드 개발자의 역할은 무엇이라고 생각?
- 사용자가 보는 화면 최전선, 사용자 - 백엔드 사이에서 최적화지점을 찾아 제공하는 역할
- 어떤 개발자로 성장하고 싶은지?
- js 주제 중에서 가장 자신있게 설명할 수 있는거 하나 설명
- 실행 컨텍스트
- 코드 동작 이해에 중요한 개념
- 함수가 실행을 하기 위한 환경에 대한 정보를 갖고있는 객체
- 함수 스코프 내에서 접근할 수 있는 변수, 함수명을 가진 변수 객체, 자신을 호출한 함수에 접근할 수 있는 스코프체인, this... 등 정보 포함
- http, https 차이점
- http + 보안성 강화 하기 위한 프로토콜
- https의 보안성 강화는 어떻게?
- 공개키 암호화 방식
- 모두가 확인 가능한 공개키를 교환, 공개키로 암호화된 비밀키 주고받음, 비밀키로 해독
- 리액트에서 불변성을 지켜야 하는 이유?
- 데이터가 단방향으로 흐름
- set, map 데이터 타입 차이점?
- set
- 값 중복 안된다 + 집합관계같은거 표현할 때 사용한다, 이런부분 말하는게 좋을듯
- map → 객체와 비슷, 키로 다양한 자료형 받을 수 있다,
- obj와 달리 iterable 하다
- 삽입 순서를 저장
- throttle, debounce란?
- 디바운스 → 이벤트 여러개 중 가장 마지막꺼만 사용
- 쓰로틀 → 일정 주기
- 좋아하는 정렬 알고리즘 소개, 시간복잡도?
- 버블정렬
- 가장 간단하게 구현 가능한
- 인접한 두 원소를 비교해서 작은 요소는 앞/ 큰건 뒤로 → 반복해서 전체 정렬
- O(n^2)
- 퀵정렬
- 가장 빠른 성능
- pivot이라는 기준값을 기준으로 정렬
- pivot보다 작은건 왼쪽, 큰건 오른쪽
- O(nlogn)
- 최악 O(n^2)
- 웹팩 사용경험?
- 없음
- js 파일 하나로 묶는데 사용한다고 안다.
- js 파일 하나로 묶는 이유?
- 압축 과정 → 파일 크기 줄여서 통신 속도 높임
- 스크립트 실행 순서 조정 등.. 추가로 이야기 할 수 있을 듯
- script, script async, script defer?
- html 파싱중에 script 태그 만나면 중지가 되는데, 이런 부분을 컨트롤 할 수 있는 옵션
- async : 비동기로 스크립트 다운로드
- defer : 다운로드 + 실행은 나중에
- 들었던 평가중 긍정/부정 하나씩
- 긍정 : 맡은 작업은 책임감, 완성도있게 한다
- 부정 : 변수명 짓거나할 때, 주관적인 기준으로 명명한다
- 개선 노력중?
- 각자 스타일로 하는게 아니라, 코딩 컨벤션을 정했다.
- 최근 가장 깊게 공부 중인 개발 분야?
- 네트워크
- OSI 7계층