← 포트폴리오 목록

회원제 커뮤니티 자격인증 플랫폼

자격증빙 심사와 관리자 인증을 통과한 회원만 접근 가능한 폐쇄형 익명 커뮤니티와 오프라인 모임 신청 기능을 React + Node.js 기반으로 설계·구현합니다.

자격증빙 심사 상태 머신 설계제출-검토중-승인-반려 4단계 상태 전이를 트랜잭션으로 관리하고, 반려 시 재제출 플로우를 설계합니다
모임 정원 동시성 제어 로직 구현PostgreSQL 트랜잭션과 비관적 잠금으로 동시 신청 시 정원 초과를 방지하는 신청 처리 구조를 설계합니다
인기글 랭킹 산출 쿼리 설계좋아요·댓글 수 가중치를 반영한 인기글 및 댓글 다건 게시글 산출 쿼리와 정렬 옵션을 구현합니다
서비스 타입Web
업종플랫폼
기술 스택
React 18TypeScriptTailwind CSSNode.jsExpressPostgreSQLPrismaAWS S3
주요 기능
  • 폐쇄형 회원 커뮤니티 피드
  • 회원가입 및 자격인증 신청
  • 구인구직 게시판 및 신고 처리
  • 소모임 조회 및 참가 신청
Overview

프로젝트 개요

범위: 개발, 디자인, 기획
자격증빙 심사와 관리자 인증을 통과한 회원만 접근 가능한 폐쇄형 익명 커뮤니티와 오프라인 모임 신청 기능을 React + Node.js 기반으로 설계·구현합니다. 카테고리별 게시판(구인구직 포함), 신고·정렬·인기글 노출, 정원 기반 모임 신청까지 회원 관점의 핵심 흐름을 하나의 데모로 구성합니다.
회원제 커뮤니티 자격인증 플랫폼
요구사항 정의

프로젝트 핵심 과제

프로젝트 진행 시 해결한 핵심 기술 과제입니다.

모임 신청과 정원 마감이 동시에 발생할 때 데이터 정합성이 깨질 리스크

트랜잭션 격리 수준을 SERIALIZABLE로 설계해 대응합니다

익명 게시판 특성상 신고 남용이나 어뷰징이 발생할 리스크

신고 누적 임계치 기반 자동 노출 제한 로직으로 대응합니다

자격증빙 파일(이미지/PDF) 업로드 시 대용량·비정상 포맷 처리 리스크

파일 타입·용량 서버측 검증과 AWS S3 프리사인드 URL 업로드로 대응합니다

구인구직 게시판과 일반 게시판의 노출 정책이 혼재될 리스크

카테고리별 접근 권한과 노출 규칙을 분리 설계해 대응합니다

구현 내용

핵심 기능 상세

핵심 기능 1

폐쇄형 회원 커뮤니티 피드

인증된 회원만 접근 가능한 익명 게시판 피드로, 카테고리별 게시글과 인기글·댓글 다건 게시글을 상단에 노출합니다. 최신순/인기순 정렬 옵션과 좋아요·댓글 수 가중치를 반영한 인기글 산출 쿼리를 구현합니다
폐쇄형 회원 커뮤니티 피드
핵심 기능 2

회원가입 및 자격인증 신청

이메일/휴대전화 기반 회원가입과 닉네임·회원 유형 프로필 설정, 자격증빙 이미지/PDF 업로드를 지원합니다
회원가입 및 자격인증 신청
핵심 기능 3

구인구직 게시판 및 신고 처리

일반 카테고리와 별도로 구인/구직 목적의 게시판을 운영하며, 게시글/댓글 신고 기능을 제공합니다. 카테고리별 게시판 필터링과 신고 접수 즉시 관리자 큐 반영 구조를 구현합니다
구인구직 게시판 및 신고 처리
핵심 기능 4

소모임 조회 및 참가 신청

소모임 목록/상세와 일정별 정원·신청 인원을 조회하고, 참가 신청·취소 및 모임 개설을 요청합니다. 동시 신청 시 정원 초과를 방지하는 트랜잭션 기반 신청 처리 로직을 구현합니다
소모임 조회 및 참가 신청
구현 과정

프로젝트 진행 단계

STEP 1

회원 인증 체계 및 DB 스키마 설계

자격증빙 심사 플로우 정의, PostgreSQL 회원·게시글·모임 테이블 및 관계 매핑 설계

STEP 2

인증 API 및 게시판 백엔드 개발

Express 기반 회원가입·로그인·자격증빙 업로드 API, 게시글/댓글/신고 CRUD 엔드포인트 구현

STEP 3

익명 커뮤니티 및 모임 신청 UI 개발

React 기반 피드·게시판·모임 신청 화면 구현, 정원 표시 컴포넌트 설계

STEP 4

통합 테스트 및 반응형 최적화

API-프론트 통합 검증, 모바일 반응형 레이아웃 점검, 크로스 브라우저 테스트

프로젝트 성과

주요 성과

자격증빙 심사 상태 머신 설계제출-검토중-승인-반려 4단계 상태 전이를 트랜잭션으로 관리하고, 반려 시 재제출 플로우를 설계합니다
모임 정원 동시성 제어 로직 구현PostgreSQL 트랜잭션과 비관적 잠금으로 동시 신청 시 정원 초과를 방지하는 신청 처리 구조를 설계합니다
인기글 랭킹 산출 쿼리 설계좋아요·댓글 수 가중치를 반영한 인기글 및 댓글 다건 게시글 산출 쿼리와 정렬 옵션을 구현합니다
익명 게시 개인정보 비식별화 구조 구축닉네임 기반 익명 표시와 작성자 원본 정보 분리 저장으로 게시판 프라이버시 구조를 설계합니다
Review

기술적 주안점

  • 좋아요·댓글 수 가중치 기반 인기글 산출 쿼리를 설계하고, 게시판 상단에 인기글 1건과 댓글 다건 게시글 1건을 자동 노출하는 로직을 구현합니다
  • 제출-검토중-승인-반려 4단계 상태 전이를 트랜잭션으로 관리하고, 반려 시 재제출 가능한 심사 플로우를 구현합니다
  • 구인구직 게시판을 별도 카테고리로 분리하고, 신고 접수 데이터를 관리자 처리 큐 테이블에 즉시 반영하는 구조를 설계합니다

유사한 프로젝트를 기획하고 계신가요?

FIRSTPIP이 개발 범위와 로드맵을 함께 정리해드립니다

무료 상담 시작하기