Skip to content

2주차 멘토링

Ji Yoon Choi edited this page Nov 16, 2022 · 19 revisions

질문

1. recoil 로 설정한 전역 상태 값이 외부에 탈취될 가능성이 있을까요?

  • 100% 탈취된다
  • Github Action 등의 방법으로 캐싱 해야함
  • 로그인할 때 사용되는 ID 등의 개인정보는 최대한 막되, 백엔드 측에서 마스킹 등을 해서 정보를 은닉하여 내려줘야 한다
  • AUTO_INCREMENT 되는 키를 ID로 사용한다면 => 전역 상태로 저장되는 것은 나쁘지 않으나 브루트포스 공격에 당할 위험이 있다
    • 일반 사용자가 보기에는 아무 의미없는 숫자라서 프론트엔드 측에서 저장하는 것도 상관없어 보임
    • 브루트포스 공격을 막고 싶다면 UUID를 생성하여 사용하는 것을 추천 (AUTO_INCREMENT 아닌 완전 랜덤한 문자열)
    • AUTO_INCREMENT를 쓰는 경우 => 게시판에서 게시글이 1부터 올라가는 경우 (Public 하게 공개되기 때문에 노출되어도 상관없는 데이터)

2. 개인정보 관련 궁금증

3. Next.js 관련 궁금증

  • Next.js의 장점?
    • 첫 화면을 SSR로 구현하려고 할 때, Next.js를 사용하는 것이 좋을지?

4. 현업 CI 과정에서 테스트를 진행할 때, 전체 코드에 대한 테스트의 커버리지 퍼센트를 넘지 않으면 push 가 안되도록 하는 단계가 있나요? 있으면 어떻게 하는지 궁금합니다.

5. CD를 위한 Github actions 를 작성해봤는데 현재 약 18분정도가 걸리고 있는데, 이 시간을 줄이는 방법에 대한 조언을 받고 싶습니다.

6. 백엔드와 클라이언트에서 공용으로 사용하는 공용 상수를 어떻게 관리해야 하는지 궁금합니다.

Typescript enum 관련해서 Tree-shaking 관점에서 좋지 않아서 enum 을 사용하지 않는 것을 권장하는 글을 봤습니다. 실제로 현업에서도, enum 을 사용하지 않고 있나요? 만약 사용하지 않고 있다면, enum 과 같은 열거형 상수를 필요로 할 때 어떤 방식으로 사용을 하시는지 궁금합니다.

7. 프론트엔드에서 기술적으로 눈에 띄일 수 있는 추가 기능으로 무엇이 있을지 고민됩니다

얼리버드

프로젝트

개발일지

스프린트 계획

멘토링

데일리 스크럼

데일리 개인 회고

위클리 그룹 회고

스터디

Clone this wiki locally