<aside>
💬 기업 인턴십 과정
반갑습니다.😀 저희는 네 마음의 별로⭐️입니다
- 팀 내 원할한 소통을 위해 노션을 제작하여 활용 함으로서 사내 개발팀과 협업 과정에 있어 효율적이고 빠른 상황공유가 가능했습니다.
- 매주 목요일 개발팀과 진행한 코드 리뷰를 통해 클린코드와 웹 성능 향상을 위한 SQL 코드 최적화에 대해 고민할 수 있었습니다.
- 협업 툴로 Figma, GoogleMeeting, Slack을 사용하였으며, 기획 및 디자인 팀과도 소통하며 애자일한 조직에 빠르게 적응하였습니다.
</aside>
구현내역 상세
초기세팅
- NestJS에서 GraphQL과 Prisma Client를 사용할 수 있도록 Code first 방식으로 초기세팅 설정
자료구조를 활용한 성능 개선
- Set과 Map 자료구조의 get, has등의 메소드를 활용하여 2중 반복문을 제거하여 코드 최적화 및 퍼포먼스 향상되도록 구현
쿼리 디버깅 및 성능 최적화
인증/인가
- JWT와 JWT-passport 기반의 admin 로그인(인증) 구현
- Crypto을 활용해 hash 된 password를 업데이트하여 데이터베이스에 저장하는 로직 구현
- Token의 payload 정보를 담고 있는 admin decorator를 활용하여 비밀번호 재설정 기능 구현
- Guard를 이용한 Bearer Token(OAuth 2.0 API 인증)방식의 ****인가 과정 구현
페이지네이션
- Prisma을 활용해 타겟요청 현황 페이지의 pagination 구현 (정렬 방식을 프론트에서 작성 할 수 있도록)