• JPA
    • JPA 를 사용한 이유?
    • 영속성 컨텍스트의 엔티티 관리
    • 1차 캐시와 쓰기 지연 SQL 저장소
  • REST Docs
    • API 설계 시에는 노션 사용
    • Swagger 와 REST Docs 중에서 프로덕션 코드에 영향이 없는 REST Docs 를 사용함
  • CI/CD
    • 빌드와 배포 과정을 자동화하기 위해 CI/CD 를 구축함
    • GitHub Action
      • workflow 추가하여 PR 올라왔을 때 빌드하여 테스트 코드가 정상적으로 작동하는지 확인
    • Jenkins
      • 교육장 밖에서 접근하여 빌드 및 배포하기 위해 사용
      • 브랜치에서 PR 이 머지되면 젠킨스 서버로 webhook 을 보내 CI/CD 진행
    • submodule
      • 외부에 노출되면 안되는 설정값을 관리하기 위해 사용
  • 로깅
    • 처리하지 못한 예외를 찾아 로깅하여 안전한 서비스를 유지