코드팩토리의 백엔드 아카데미 : 한 번에 끝내는 NestJS 패키지 - 기초부터 MSA까지
ONLINE   #백엔드 아카데미 #NestJS
코드팩토리의 백엔드 아카데미 :
MSA까지 한 번에 끝내는 NestJS 패키지
프로그래밍 강의 누적 수강생 22,000명 / 평점 5.0 신화
코드팩토리와 함께하는 NestJS 백엔드 아카데미
기본 정보
∙ 2개의 대주제 (약 50시간 분량)∙ 입문 - 실전
강의 특징
∙ 1회 결제로 평생 소장∙ 강의 무제한 업데이트
∙ 무한 질의응답
∙ 주 1회 멘토링
∙ 월 1회 오프라인 모각코
강의 공개
∙ 1차 공개 : 24년 09월 02일 (월)∙ 2차 공개 : 24년 10월 07일 (월)
∙ 3차 공개 : 24년 11월 04일 (월)
∙ 4차 공개 : 24년 12월 02일 (월)
∙ 전체 공개 : 24년 12월 30일 (월)
스타트업뿐 아니라, 각종 IT 기업에서
NestJS에 주목하고 있는 이유는 무엇일까요?
NestJS가 MSA 환경에 가장 유리한 프레임워크이기 때문입니다.
유리한 이유 4가지 자세히보기
이제 NestJS 개발자라면
MSA 환경까지 제.대.로 다룰 수 있어야 합니다.
그런데, 어디 MSA를 제대로 배울 수 있는 곳이 있나요?
그래서 준비했습니다.
코드팩토리 강의를 한 번도 못 들어본 개발자는 있어도
한 번만 들어본 개발자는 없다.
<실제 수강생들의 생생 후기>
코드팩토리의 온라인 강의는 무엇이 다를까요?
기초부터 심화까지 배우고 싶은 수강생들을 위한 초특가 이벤트 !
딱 1만원만 더해 기초부터 MSA까지 NestJS의 모든것을 평생 소장하세요.
* 2024년 8월 판매가 기준
강의 요약
어디에서도 경험할 수 없는
코드팩토리 강의만의 6가지 특별한 포인트
Point 1
수만명의 수강생에게 만점에 가까운 평가를 받은 비결은
바로 수강생과의 끊임없는 소통에 있습니다.>
코드팩토리 아카데미 수강생이라면 누.구.나
완강까지 코드팩토리가 책임집니다.
코드팩토리의 또 다른 차별점 강.의.력
실제 강의 영상을 통해
차원이 다른 강의력을 확인해보세요.
강의를 시청하며 어려운 부분이 있다면 언제든 저와 직접 소통할 수 있는
다양한 방법을 제공해드리고 있습니다. 여러분은 학습에만 집중하세요.
Point 2
300명 이상 현직자가 직접 선정한 프로젝트로
백엔드 기초부터 MSA 운영까지 모~두
300명 이상의 현직자가 설문을 통해 직접 선정한
백엔드 개발자가 가장 학습하고 싶은 2개의 프로젝트와 함께 합니다.
프로젝트 설문 결과 자세히보기
강의를 통해, 실무에서 필수로 알아야 하는
28가지 백엔드 & 데브옵스 기술 스택을 학습할 수 있습니다.
Point 3
넷*릭스 프로젝트를 통해
NestJS 기초부터 배포까지 6단계에 걸쳐 학습합니다.
인증, 실시간 채팅, 캐싱, 타스크 스케쥴링과 테스트 및 배포 등
프로젝트를 통해 NestJS Core 를 완벽하게 정복합니다.
NestJS Core 개념과 API를 학습하고, 테스트 코드 작성 다큐멘테이션, 인증, 캐싱, 로깅, Pagination, ORM, 배포 등의
실무 필수 외부 라이브러리를 다룹니다. 이를 통해 Monolithic NestJS 프로젝트 구현 방법을 완벽하게 학습합니다.
-
NestJS Core 완전 정복NestJS의 기본 빌딩블락과 모든 미들웨어를 프로젝트를 통해 진행하며 빠짐없이 모두 학습합니다.
-
데이터베이스 연동 및 인기 ORMSQL과 NoSQL 등 데이터베이스를 익히고 더 나아가 인기 3종 ORM에 대해 학습합니다.
-
인기 디펜던시 학습 및 프로젝트 고도화다양한 Pagination 기법, 인증 기술, 유효성 검사 및 변환 등 NestJS 확장 기능을 프로젝트에 적용합니다.
-
NestJS 연동 실무 필수 기술 학습캐싱, 큐, 스케줄링, Presigned URL 등 NestJS 실무 필수 기술을 학습합니다.
-
테스트 및 CI 파이프라인 구성유닛 테스트, 엔드투엔드 테스트 작성 및 CI 파이프라인 구성 방법에 대해 학습합니다.
-
프로젝트 배포 및 운영AWS 배포와 CI/CD 파이프라인, 운영 전략을 학습을 통해 프로젝트에 실제로 적용해봅니다.
• Role Based Access Control
• 효율적 대용량 영화 파일 업로드
• 영화 파일 인코딩 큐 작업
• 인기 동영상 리스트 캐싱
• 고객응대 실시간 채팅
• 영상 카탈로그 Pagination 일반화 및 최적화
• CI/CD 파이프라인 구현 및 운영
1. 인증 인가 개념 완전정복
-
1단계 Authentication (인증)인증 시스템 개념을 익히고
그라운드 업 구축 방법을 학습합니다.
01 인증 시스템 이론 학습
02 JWT 이론 학습
03 실제 인증 기능 구현 -
2단계 Passport (인증 시스템)Passport 사용 인증시스템
구축 방법을 학습합니다.
01 Passport 이론 학습
02 Passport 기반 Guard 제작
03 기존 인증 시스템 전환 -
3단계 RBAC (역할기반 접근 제어)Role Based Access Control
구현 방법을 학습합니다.
01 인가 이론 학습
02 Custom Decorator 학습 및 제작
03 Role Based Access Control 적용
2. NestJS 필수지식 분해
3. Postgresql, MongoDB 및 인기 3종 ORM 도장깨기
6. Test CI 파이프라인 구성
7. Deployment & 운영
잠깐!
Microservice Architecture, 혹시 이런 오해를 하고 계시지는 않나요?
답변 자세히 보기
과거에는 MSA 기술의 접근성과 편의성이 낮아 중소규모 서비스에 적용하는 것이 단점이 많았습니다. 하지만 현재는 정보와 매니지드 서비스들이 늘어나 진입 장벽이 낮아졌습니다. 적절한 기술을 적용하면 소규모 팀과 프로젝트에서도 MSA를 충분히 활용할 수 있으며, 이 강의에서 그 부분을 자세히 다룹니다.
답변 자세히 보기
DDD는 MSA 이전부터 존재한 대규모 서비스 디자인 패러다임입니다. MSA가 주로 대규모 프로젝트에 사용되다 보니 DDD와 함께 사용하는 경우가 많지만, MSA를 반드시 DDD로 설계해야 하는 것은 아닙니다.
답변 자세히 보기
MSA는 개념이지 특정 기술에 종속되지 않습니다. MSA는 Microservice Architecture의 약자로, 라이트웨이트한 프레임워크가 유리합니다. 따라서 NestJS가 Spring보다 MSA 구축에 유리한 점이 많습니다. NestJS는 처음부터 마이크로서비스를 고려해 설계된 프레임워크로, MSA를 훨씬 자연스럽게 구현할 수 있습니다.
코드팩토리의 백엔드 아카데미를 통해
NestJS 기반 MSA에 대해 제대로 경험하세요.
MSA 학습 프로세스 미리보기
MSA 관련 이론 학습
소규모 팀과 프로젝트에 적합한 NestJS MSA 적용
대규모 팀과 프로젝트에 적합한 DDD를 적용한 Polyrepo MSA 적용
MSA 운영을 위한 오케스트레이션, 모니터링, 로깅 및 옵저버빌리티
자신의 프로젝트에 맞는 MSA 아키텍처를 설계하고 적절한 기술을 적용할 수 있는 능력을 갖추게 될 것입니다
Point 4
배달 프로젝트를 통해
MSA 적용 및 대규모 애플리케이션 운영을 5단계에 걸쳐 학습합니다.
Monorepo 환경의 MSA부터 DDD기반 Polyrepo 환경의 MSA 전환,
그리고 CQRS, SAGA 패턴과 배포 및 운영까지 MSA를 완전히 정복할 수 있습니다.
배달 앱 프로젝트에서 MSA 구축은 두 단계로 진행됩니다.
소규모 팀과 프로젝트부터 대규모 팀과 프로젝트까지 적용할 수 있는 MSA 방법론을 학습합니다.
-
NestJS MSA
기본기 다지기NestJS의 MSA 모듈을 사용하여 다양한 기본 통신 방법을 학습합니다. -
Domain Driven Design 및 고급 아키텍처 적용DDD, Hexagonal Architecture, Clean Architecture를 학습하고 프로젝트에 적용해 봅니다.
-
컨테이너화 및
쿠버네티스 운영 학습서비스를 컨테이너화하여 쿠버네티스로 운영하고, Helm차트를 사용해 효율적 관리하는 방법을 학습합니다.
-
CQRS 및 SAGA 패턴 적용DDD와 마이크로서비스의 핵심인 CQRS 패턴과 다중 마이크로서비스의 트랜잭션 관리를 위한 SAGA 패턴을 학습합니다.
-
배포 및 운영 & Service Mesh다양한 AWS 매니지드 서비스를 통해 인프라 설정 배포와 Service Mesh로 통신 최적화를 진행합니다.
-
• Role Based Access Control
• 효율적 대용량 영화 파일 업로드
• 영화 파일 인코딩 큐 작업
• 인기 동영상 리스트 캐싱
• 고객응대 실시간 채팅
• 영상 카탈로그 Pagination 일반화 및 최적화
• CI/CD 파이프라인 구현 및 운영
1. 팀과 프로젝트 규모별로 적합한 두 가지 MSA 학습
왜 중요한가요?
NestJS는 기본적으로 마이크로서비스 아키텍처(MSA)를 고려하여 설계된 프레임워크입니다. 일반적으로 MSA를 구축하면 아키텍처가 상당히 복잡해지지만, NestJS는 모노레포지토리(Monorepository)로 가볍게 MSA를 구현할 수 있도록 모듈 설계가 되어 있습니다. 이를 통해 파일 구조부터 네트워킹까지, 모놀리식 아키텍처와 비교했을 때 코드 상에서의 차이점을 최소화하며 MSA를 구현할 수 있습니다.
모노레포 아키텍처는 효율적인 코드 관리와 일관성 있는 개발 환경을 제공하여 MSA 구현 시 복잡성을 줄여주는 역할을 합니다.
왜 중요한가요?
마이크로서비스 아키텍처(MSA)는 대규모 프로젝트의 복잡성과 대규모 팀의 소통 및 협업 문제를 해결하기 위해 만들어졌습니다. 따라서 전통적인 MSA는 대규모 팀과 대규모 프로젝트를 전제로 합니다. 도메인 주도 설계(DDD)와 현대의 인기 패턴을 적용한 MSA는 대규모 팀에서 개별 도메인을 효율적으로 관리하고 유지보수할 수 있도록 도와줍니다.
폴리레포 기반 MSA 아키텍처는 대규모 시스템에서 효율적인 운영과 유지보수를 가능하게 합니다.
2. MSA 핵심은 운영 ! 오케스트레이션, 모니터링, 로깅 그리고 Observability
3. 데이터 일관성과 트랜잭션 관리를 위한 3가지 핵심 패턴
-
데이터를 변경하는 작업(Command)과
데이터를 조회하는 작업(Query)을 분리하는 패턴
왜 중요한가요?
CQRS 패턴은 읽기와 쓰기 작업을 분리하여 각각을 최적화할 수 있어, 대규모 시스템에서 성능을 극대화하고 효율적인 데이터 처리를 제공합니다. 이를 통해 더 빠르고 유연한 시스템을 개발할 수 있습니다. -
분산 시스템에서 여러 마이크로서비스 간의
트랜잭션을 관리하기 위한 패턴
왜 중요한가요?
SAGA 패턴은 분산 시스템에서 마이크로서비스 간 트랜잭션을 효과적으로 관리해 데이터 일관성과 무결성을 유지합니다. 이를 통해 복잡한 분산 환경에서도 안정적이고 신뢰성 있는 시스템을 구축할 수 있습니다. -
모든 상태 변경을 이벤트로 기록하여
순차적 이벤트로부터 시스템 상태를 도출하는 패턴
왜 중요한가요?
Event Sourcing 패턴은 히스토리가 중요한 데이터 관리나 대규모 트래픽 처리를 필요로 하는 시스템에서 데이터 일관성과 무결성을 보장합니다. 이를 통해 복잡한 시스템에서도 모든 변경 내역을 정확히 추적하고, 중간 통계를 효율적으로 유지하며, 리소스를 최적화할 수 있습니다.
수강생 전용
코드팩토리 질의응답 커뮤니티 운영!
1) 실습 중 궁금한 사항은? 코드팩토리님에게 직접 질의응답
2) 커리어 고민을 나누고 정보를 주고 받는 정보 교류의 장
* 코드팩토리 커뮤니티는 수강생에 한하여 입장 가능하며, 디스코드를 통해 운영됩니다.
* 수강생 커뮤니티는 ~26년 7월 28일까지 유지됩니다.
매주 1회, 온라인
고민 상담소를 통한 멘토링 제공 !
매주 월요일 21시~22시
코드팩토리 유튜브 채널에서 실시간 멘토링을 진행합니다.
매월 1회, 오프라인
모각코를 통한 강사와의 직접적인 소통
매월 마지막 주 금요일,
18시~22시 코드팩토리님과 함께 오프라인 모각코를 진행합니다.
*장소는 디스코드 커뮤니티를 통해 매월 사전 공지 예정입니다.
무려 9시간 분량,
Javascript 무료 강의 제공
1) Javascript 무료 강의: Javascript를 처음 접하는 분들을 위한 강의
2) 강의에 사용된 모든 실습 코드: 실습코드는 꾸준히 업데이트 될 예정입니다.
고민은 구매만 늦출뿐, 가장 저렴한 지금 구매하고 평생 꺼내보세요.
패스트캠퍼스에서는 1회 결제로 평생 소장
강사 소개
아무리 좋은 강의가 있어도
완강을 하지 못한다면 의미가 없습니다.
강의를 효율적으로 학습하기 위해서는 "왜?"라는 질문이 매우 중요합니다.
단순히 "이렇게 배웠으니까"가 아니라, 왜 특정 방식으로 개발해야 하는지 이해하는 것이 필요하죠.
제 강의에서는 항상 "왜 이렇게 해야 할까?"에 대한 답을 명확히 제공하려고 노력합니다.
덕분에 많은 수강생들이 다른 강의에서는 이해하지 못했던 부분도 쉽게 이해할 수 있었다고 말합니다.개발자는 항상 새로운 것을 배워야 하는 직업입니다.
하지만 배우는 과정이 항상 즐겁지만은 않죠?
여러분이 포기하지 않도록 재미있는 프로젝트를 통해 실무 위주의 강의를 구성했습니다.
단순히 도큐멘테이션을 읽어주는 강의는 하지 않습니다.
덕분에 제 강의는 온라인 강의임에도 완강률이 매우 높습니다.
이번 강의에서도 여러분이 끝까지 즐겁게 학습할 수 있도록 최선을 다하겠습니다.
함께 재미있게 배우며 성장해봅시다!
Question.1
Javascript와 Typescript를 모르더라도
강의를 수강할 수 있나요?
강의를 듣기 위해서는 Javascript와 Typescript의 기본 지식이 필요합니다. Javascript에서는 기본 데이터 구조, 함수 선언, 객체와 클래스 사용법을, Typescript에서는 기본 타입 유추와 interface 및 type 구현법을 알면 충분합니다.
Javascript 지식이 부족하다면 강의에서 제공되는 무료 강의를 추천드리며, Typescript 지식이 부족하다면 인프런의 제 Typescript 강의를 수강하시는 것을 권장드립니다.
Question.2
강의 프로젝트 소스코드도 제공 되나요?
강의 소스코드는 모두 제공됩니다.
강의 초반에 프로젝트 다운로드 방법이 안내되어 있으니 참고해보세요!
Question.3
Class 2만 수강해도 괜찮을까요?
NestJS에 자신 있다면 Part 2만 수강해도 무난합니다.
하지만 NestJS를 잘 안다고 생각하시는 분들도 Part 1에서 배울 점이 많을 것입니다. 커리큘럼을 확인해보고 모르는 부분이 없다면 스킵해도 되지만, 제 강의를 처음부터 끝까지 수강한 분들의 후기가 가장 좋았습니다.
특히 Part 1은 세세한 디테일을 놓치지 않기 위해 많은 노력을 기울였으니, 가능하면 수강하시길 추천드립니다!
지금까지 이런 과정은 없었다. 함께 만들어 나갈 코드팩토리 백엔드 아카데미
코드팩토리 백엔드 아카데미 로드맵
콘텐츠 미리보기
백엔드 개발 로드맵
패스트캠퍼스에서 졸업하세요!
코드팩토리 아카데미는 개발 업계 종사자를 위해
난이도 / 주제별 체계적인 로드맵을 제공해드릴 예정입니다.
커리큘럼
아래의 모든 강의를 이 강의 하나로 모두 들을 수 있습니다.지금 한 번만 결제하고 모든 강의를 평생 소장하세요!
CLASS 1
Part 1. 오리엔테이션
Part 2. 환경설정
Part 3. 개발환경 및 NestJS 프로젝트 둘러보기
Part 5. 디버거 사용법
Part 6. 유효성 검사 및 변환
Part 6. 유효성 검사 및 변환
Part 7. 환경변수
Part 8. 데이터베이스
Part 9. Pipe
Part 10. Mapped Types
Part 11. Serialization
Part 12. 인증
Part 13. Middleware
Part 14. Guard
Part 15. RBAC
Part 16. Postman
Part 17. Pagination
Part 18. Interceptor
Part 19. 예외처리
Part 20. 파일 업로드
Custom Decorator
Part 21. 좋아요 시스템
Part 22. 캐싱
Part 23. 버전관리
Part 24. Task Scheduling
Part 25. Queue
Part 26. Logging
Swagger
Part 21. Websocket & Socket IO
Part 27. 세션관리
Part 28. 기타 ORM
Part 29. 테스트
CLASS 2