AI-First Engineering 과정으로 돌아가기
Week 2

Backend & Infrastructure

Production의 기술적 기반

서버리스로 빠르게, AWS로 확장성 있게

이번 주 핵심 포인트

15분 만에 실시간 채팅 앱을 완성하고, Firebase vs Supabase vs AWS를 실전 비교합니다
복잡한 백엔드 선택을 데이터 기반으로 의사결정하고, Production-Ready 아키텍처를 설계하는 방법을 배웁니다. AI와 함께 Security & Performance 체크리스트를 완벽하게 적용하여 실전 배포까지 준비합니다.

학습 목표

Firebase 실전 활용 - 15분 안에 실시간 채팅 앱 완성
Firestore 실시간 리스닝, Google Authentication, Security Rules를 포함한 완전한 채팅 앱을 AI와 함께 빠르게 구현합니다.
Firebase vs Supabase vs AWS - 실전 의사결정
Setup 시간, 학습 곡선, 비용을 실제 데이터로 비교하고, 프로젝트 상황별 최적의 백엔드 선택 방법을 익힙니다.
Production-Ready 아키텍처 설계
크리에이터 콘텐츠 관리 시스템을 예시로 Firebase, Supabase, AWS 각각의 아키텍처를 설계하고 비교합니다.
Security & Performance 체크리스트 마스터
'The State of Vibe Coding'의 Production 체크리스트를 적용하여 기능 완성도, 보안, 성능, 배포 준비를 완벽하게 합니다.

세부 일정

Part 1-1 (25분)
Firebase 실전 활용 - 실시간 채팅 앱
15분 안에 Firestore, Authentication, Security Rules, 오프라인 지원을 포함한 완전한 채팅 앱 구현
  • Firestore 실시간 리스닝으로 메시지 동기화
  • Google Authentication 통합
  • Security Rules로 사용자별 접근 제어
  • 오프라인 지원으로 네트워크 끊김 대응
Part 1-2 (35분)
Firebase vs Supabase vs AWS 완전 비교
실전 의사결정을 위한 3가지 백엔드 솔루션의 상세 비교
  • Setup 시간: Firebase 5분 vs Supabase 10분 vs AWS 30분+
  • 학습 곡선: 각 솔루션의 러닝 커브와 문서화 품질
  • 비용 비교: 무료 티어부터 스케일업까지 실제 비용 분석
  • Best Use Cases: 각 솔루션이 최적인 프로젝트 유형
Part 2-1 (30분)
실전 아키텍처 설계 with AI
크리에이터 콘텐츠 관리 시스템을 3가지 방식으로 설계
  • 시나리오: 크리에이터가 콘텐츠를 업로드하고 관리하는 시스템
  • Firebase 아키텍처: Firestore + Storage + Functions
  • Supabase 아키텍처: PostgreSQL + Storage + Edge Functions
  • AWS 아키텍처: RDS + S3 + Lambda + API Gateway
  • AI에게 각 아키텍처 구현 요청하는 프롬프트 예시
Part 2-2 (30분)
Security & Performance 체크리스트
Production 준비를 위한 완벽한 체크리스트 적용
  • 기능 완성도: 핵심 기능, 에러 처리, 사용자 피드백
  • 보안: Authentication, Authorization, Data Validation
  • 성능: 로딩 속도, 반응성, 최적화
  • 배포 준비: 환경 변수, 모니터링, 롤백 전략
  • AI에게 각 항목 구현 요청하는 실전 프롬프트

Firebase vs Supabase vs AWS 완전 비교

항목FirebaseSupabaseAWS
Setup 시간5분10분30분+
학습 곡선낮음중간높음
비용Spark (무료) → Blaze (사용량 기반)무료 → $25/월 → $599/월사용량 기반 (예측 어려움)
Best For빠른 MVP, 실시간 앱, 모바일 우선PostgreSQL 필요, 복잡한 쿼리, Open Source 선호대규모 엔터프라이즈, 커스텀 요구사항, 완전한 제어

Firebase

장점
  • 가장 빠른 시작
  • 실시간 기능 기본 제공
  • Google Cloud 통합
  • 오프라인 지원
  • Blaze: $300 무료 크레딧
단점
  • NoSQL 제약
  • 복잡한 쿼리 어려움
  • 비용 예측 어려움
  • 벤더 락인
  • Storage는 Blaze 필수

Supabase

장점
  • PostgreSQL 기반
  • 복잡한 쿼리 가능
  • 오픈소스
  • 자체 호스팅 가능
단점
  • 실시간 기능 제한적
  • Firebase보다 복잡
  • 커뮤니티 작음
  • 일부 기능 베타

AWS

장점
  • 완전한 제어
  • 무한 확장성
  • 다양한 서비스
  • 엔터프라이즈 지원
단점
  • 가파른 학습 곡선
  • 복잡한 설정
  • 비용 관리 어려움
  • 초기 투자 많음

실전 아키텍처 설계

시나리오: 크리에이터 콘텐츠 관리 시스템

요구사항:

  • 크리에이터가 비디오/이미지 콘텐츠 업로드
  • 콘텐츠 메타데이터 관리 (제목, 설명, 태그)
  • 사용자 인증 및 권한 관리
  • 콘텐츠 검색 및 필터링
  • 실시간 업로드 상태 추적
  • 월간 활성 사용자 10,000명 예상
Firebase 아키텍처

구성 요소

  • Firebase Authentication (Google, Email)
  • Firestore: users, content, metadata 컬렉션
  • Firebase Storage: 비디오/이미지 파일
  • Cloud Functions: 썸네일 생성, 메타데이터 추출
  • Firebase Hosting: 프론트엔드 배포
장점
  • 빠른 구현 (1-2일)
  • 실시간 동기화
  • 오프라인 지원
단점
  • 복잡한 검색 제한
  • 대용량 파일 비용
Supabase 아키텍처

구성 요소

  • Supabase Auth (OAuth providers)
  • PostgreSQL: users, content, metadata 테이블
  • Supabase Storage: 파일 저장
  • Edge Functions: 서버사이드 로직
  • 자체 프론트엔드 호스팅
장점
  • SQL 쿼리 강력
  • Full-text search
  • 저렴한 비용
단점
  • 실시간 기능 제한
  • 커뮤니티 작음
AWS 아키텍처

구성 요소

  • Amazon Cognito: 사용자 인증
  • RDS PostgreSQL: 메타데이터
  • S3: 파일 저장 + CloudFront CDN
  • Lambda + API Gateway: API 엔드포인트
  • ElasticSearch: 검색 기능
  • CloudWatch: 모니터링
장점
  • 완전한 제어
  • 무한 확장성
  • 엔터프라이즈급
단점
  • 복잡한 설정 (1주+)
  • 높은 초기 비용
  • 가파른 학습

Production 체크리스트

기능 완성도

핵심 기능 완성
AI 프롬프트: Check if all core features are implemented and working
에러 처리
AI 프롬프트: Add comprehensive error handling with user-friendly messages
로딩 상태 표시
AI 프롬프트: Implement loading indicators for all async operations
사용자 피드백
AI 프롬프트: Add toast notifications for user actions (success/error)

보안

Authentication 구현
AI 프롬프트: Implement secure authentication with JWT tokens
Authorization 체크
AI 프롬프트: Add authorization checks for all protected routes
Input Validation
AI 프롬프트: Validate all user inputs on both client and server
Security Rules
AI 프롬프트: Write Firestore security rules to protect user data

성능

초기 로딩 최적화
AI 프롬프트: Optimize initial page load with code splitting
이미지 최적화
AI 프롬프트: Implement lazy loading and responsive images
API 호출 최적화
AI 프롬프트: Add caching and debouncing for API calls
번들 사이즈 최적화
AI 프롬프트: Analyze and reduce bundle size

배포 준비

환경 변수 설정
AI 프롬프트: Set up environment variables for different environments
CI/CD 파이프라인
AI 프롬프트: Configure GitHub Actions for automated deployment
모니터링 설정
AI 프롬프트: Set up error tracking with Sentry
롤백 전략
AI 프롬프트: Document rollback procedure for failed deployments
이번 주 과제
Firebase 실시간 채팅 앱을 완성하고, 자신의 프로젝트에 맞는 백엔드를 선택하여 Production-Ready 아키텍처를 설계하세요.

과제 요구사항

  • Firebase 실시간 채팅 앱 완성 (Security Rules 포함)
  • 3가지 백엔드 솔루션 비교표 작성 (자신의 프로젝트 맥락에서)
  • 자신의 프로젝트에 맞는 아키텍처 설계 (다이어그램 포함)
  • Production 체크리스트 점검 및 미비점 개선