noesis
🛤️ 트랙 안내
기획
Frontend
Backend
DevSecOps
Artificial intelligence
Backend
상태
모집중
🚀 안내 사항
모집 기간 중 합류 과정을 거쳐 합류가 결정된 분들에 한해 OT가 진행됩니다.
OT는 대면으로 진행되며, 반드시 참여해 주셔야하고, 장소는 합격자에 한 해 메일을 통해 알려 드립니다.
선행 학습이 필요하다고 판단되는 분들은 OT 진행 이후 필요한 내용을 1:1로 학습하며, 스터디 과정 이수를 위한 준비를 합니다.
선행 학습 기간 동안 아래 내용을 학습하고, 준비합니다.
•
가상화와 반가상화 이해와 사용법
•
개발 언어 및 프레임워크 학습
◦
TypeSciprt / Java / Kotlin (택 1) 기본 학습
◦
객체지향 설계 및 프로그래밍
•
협업 컨벤션 및 품질 관리 (Quality & Git)
◦
혼자가 아닌 팀 단위의 운영을 위해 일관된 규칙을 세우고 지키는 방법
▪
Git 컨벤션: 브랜치 전략(Git Flow 기초), 커밋 메시지 규격화 등 협업을 위한 Git 활용 능력 확보
▪
코딩 컨벤션의 목적: '읽기 좋은 코드'가 운영 단계에서 장애 복구 시간을 얼마나 단축시키는지 이해
•
인프라 중심의 시큐어 코딩 및 보안 기초
◦
보안이 통합된 배포 를 위해 공격자의 시선에서 인프라 설계
▪
시큐어 코딩 (Secure Coding): 설정 파일 내 비밀번호 노출 방지(Environment Variables 관리) 등 보안 준칙 학습
▪
OWASP Top 10 기반 방어 기법: Injection, 취약한 인증 등 주요 보안 위협의 개념을 파악하고, 이를 시스템 레벨(방화벽, WAF 등)에서 어떻게 방어할지 고민
•
생성형 인공지능의 특징과 사용법
우리는 주제가 주어지면 각 단계별 안내를 해 드리고, 문제를 해결할 수 있도록 도와 드리는 걸 위주로 학습합니다.
우리 모임은 실제 환경에서 문제 해결을 토대로 학습하는 것을 목표로 합니다.
☕️ 모임 장소
매월 토요일 한 주를 정해 오프라인 모임이 진행됩니다. (한달에 한번)
오프라인 모임은 반드시 참여해 주셔야 하며, 수도권에서 진행되니 이 점 참고 바랍니다.
오프라인 모임이 가능하신 분들만 지원해 주시기 바랍니다.
📚 커리큘럼
백엔드 개발에 필요한
인프라·설계·데이터베이스·API 품질 관리
역량을 직접 체득하고, 생성형 AI와 협업하여 실제 서비스 운영이 가능한 수준의
Robust(견고한) 백엔드 시스템
을 완성합니다.
단순히 CRUD API만 만드는 개발자가 아니라.
백엔드 트랙 핵심 요약
설계와 화면은 AI와 협업하고, 구조와 로직은 사람이 책임진다.
👉 비즈니스 로직을 코드와 DB로 설계
👉 데이터의 정합성과 보안 책임
👉 확장 가능한 아키텍처를 고민
실무형 백엔드 엔지니어로 성장
⏱️ 전체 소요 기간 안내
본 커리큘럼은 참여자의
기본 지식 수준
,
주당 학습 가능 시간
등에 따라 차이가 있어 정확한 기간을 고정하지 않습니다.
충분한 시간을 갖고, 제대로 학습하여 원하는 지식과 전문성을 갖기 위함입니다.
다만, 전체 과정을 충분히 소화할 경우 대략 3 ~ 6개월 내외 소요 예상됩니다.
1. 서버 환경 이해 및 개발 환경 구성
백엔드 (서버) 개발자라면 당연히 서비스가 어디서, 어떻게 동작하는지를 이해해야 합니다.
이 단계에서는 단순 로컬 개발을 넘어, 실제 서비스 환경을 이해합니다.
주요 학습 및 작업 내용
•
인프라 기초 개념 이해
◦
Bare Metal, VM, 컨테이너 개념
◦
Hypervisor 구조 이해
•
Linux 기반 서버 환경 이해
◦
Linux 기초
•
백엔드 관점에서의 서버 구조 이해
◦
웹 서버와 애플리케이션 서버 개념
▪
Nginx/Apache 등 Web Server와 WAS(Application Server)의 역할 분담
◦
네트워크 기본
▪
HTTP/HTTPS, DNS, Port, VPC 등 통신 기초
◦
배포 환경 흐름 이해
•
CI/CD 개념 이해
◦
백엔드 배포 파이프라인 이해
•
모니터링 환경 개념 이해
◦
로그, 성능, 장애 관점에서의 서비스 이해
•
핵심 포인트
◦
내 코드가 돌아갈 서버 환경을 직접 제어하고 문제를 진단할 수 있는 기초 체력
을 기릅니다.
2. 생성형 AI를 활용한 설계·프론트엔드 팀 구성
생성형 AI를 단순 브라우져에서 프롬프트를 이용하여 사용하는 것이 아닌 역할을 분리하여
실제 팀원처럼 활용
하는 단계입니다.
주요 학습 및 작업 내용
•
생성형 AI의 역할 정의
◦
서비스 기획 / 프론트엔드 / 테스터 역할 구분
•
프롬프트 설계
◦
사용자가 원하는 결과를 얻기 위한 요청 방식
•
협업 방식 설계
◦
사람이 판단해야 할 영역 vs AI에 맡길 영역 구분
•
개발 흐름 이해
◦
AI 기반 프로세스 이해
•
활용 도구 예시
◦
Cursor
◦
Claude CLI
◦
Gemini CLI 등
3. 프로젝트 준비
인공지능 기획팀을 활용하여 문제 정의를 진행합니다.
주요 학습 및 작업 내용
•
프로젝트 배경 분석
◦
시장/도메인 이해
◦
현재 상황(As-Is)과 목표(To-Be) 정의
•
문제 정의 (Problem Statement)
◦
사용자 문제 도출
◦
해결해야 할 핵심 Pain Point 정리
•
프로젝트 목표 설정
◦
정성·정량 목표 정의
◦
기대 효과 및 성공 기준 정의
•
범위 설정
◦
무엇을 하고 / 하지 않을지 명확히 구분
◦
MVP 범위 정의
•
이해관계자 정리
◦
사용자, 운영자, 관리자 등 역할 구분
•
산출물 예시
◦
문제 정의서
◦
프로젝트 개요 문서
◦
목표 및 성공 지표 정리 문서
4. 제품 요구사항(PRD) 이해 및 제작
인공지능 기획팀을 활용하여 아이디어를 제품 관점의 요구사항으로 구체화하는 단계입니다.
좋아 보인다
가 아니라, 만들 수 있는 형태로 바꾸는 과정입니다.
주요 학습 및 작업 내용
•
사용자 정의
◦
페르소나 설정
◦
사용자 시나리오 작성
•
핵심 기능 정의
◦
필수 기능 vs 부가 기능 구분
◦
MVP 기준 기능 정리
•
사용자 흐름(User Flow) 설계
◦
주요 시나리오 흐름 정의
•
KPI 설정
◦
기능별 측정 지표 정의
•
경쟁 서비스 분석
◦
기능 비교
◦
차별 포인트 도출
•
SWOT 분석 및 시장 분석
•
리스크 및 제약 조건 정리
•
WBS(작업 분해 구조) 초안 작성
•
산출물 예시
◦
사용자 시나리오 & 사용자 흐름도
◦
기능 목록 및 우선순위 문서
5. 요구사항 분석 & 서비스 구조 설계
인공지능 기획팀을 활용하여 개발을 고려한 기획 단계를 진행합니다.
이걸 개발할 수 있을까?
를 기준으로 요구사항을 재정리합니다.
주요 학습 및 작업 내용
•
요구사항 분석/설계
◦
기능 요구사항 / 비기능 요구사항 분리
•
정책 정의
◦
서비스 운영 정책
◦
권한, 상태, 예외 케이스 정의
•
데이터 설계 기초
◦
주요 데이터 항목 정의
◦
데이터 흐름 이해
•
도메인 용어 정리
◦
기획·개발 공통 언어 정리
•
화면 구조 설계
◦
화면 목록 정의
◦
화면 간 관계 정리
•
IA(Information Architecture) 설계
•
스토리보드 작성
◦
화면 단위 기능 설명
•
백엔드 관점 이해
◦
API 개념 이해
◦
프론트/백엔드 역할 구분 이해
•
산출물 예시
◦
요구사항 정의서
◦
정책 정의 문서
◦
IA 구조도
◦
스토리보드
6. 시스템 & 애플리케이션 구조 설계
인공지능 기획팀과 협업하여 서비스 전체 구조를
한 눈에 이해할 수 있도록 시각화
합니다.
주요 학습 및 작업 내용
•
UML 기초 이해
◦
Use Case Diagram
◦
Sequence Diagram
◦
Class Diagram
•
ERD 설계
•
API 구조 이해
•
시스템 아키텍처 설계
•
애플리케이션 구성도 작성
•
산출물 예시
◦
UML 다이어그램
◦
ERD
◦
시스템 구성도
◦
API 구조 문서
7. 개발 및 배포
백엔드 엔지니어로서
가장 중요한 구현 단계
입니다.
UI/UX 개발은 인공지능 프론트엔드 개발팀을 활용하여 개발하고, 그 과정에서 UI/UX 개발 (모바일, 웹)이 어떻게 진행되는지와 코드 분석을 통해 학습하여 프론트엔드 개발 방법도 학습합니다.
주요 학습 및 작업 내용
•
품질 관리 (Code Quality)
◦
ESLint, Prettier, checkstyle.xml, Husky를 활용한 코드 컨벤션 자동화 및 품질 일관성 유지.
•
데이터 중심 설계 및 ORM 고도화
◦
복잡한 데이터 관계 처리: 단순 1:1, 1:N 관계를 넘어 다대다(N:M) 매핑 테이블 설계 및 성능 최적화.
◦
Transaction 격리 수준: 서비스 특성에 맞는 Isolation Level 설정 및 Deadlock 방지 전략.
◦
데이터 정합성 유지: 소프트 딜리트 구현 및 이력 관리 테이블 설계.
◦
Migration 관리: 서비스 중단 없는 DB 스키마 변경을 위한 마이그레이션 전략 및 롤백 프로세스.
•
로깅 방법론과 로그를 제대로 찍는 법
◦
Structured Logging: 검색과 분석이 용이한 JSON 형태의 로그 구조 설계.
•
보안 및 인증/인가 (Security)
◦
안전한 인증 체계: JWT Refresh Token 도입 및 RTR 패턴 구현.
◦
권한 관리: 사용자 역할에 따른 세밀한 API 접근 제어.
◦
보안 취약점 방어: SQL Injection, XSS, CSRF 방어 코드 및 환경 변수 관리 체계.
•
접근성 고려
•
품질 관리
•
운영 환경 구축 및 CI/CD
◦
Dockerizing: 애플리케이션의 컨테이너화 및 멀티 스테이지 빌드를 통한 이미지 최적화.
◦
무중단 배포(Zero-downtime Deployment): Blue-Green, Canary, Rolling 배포 전략의 이해와 실습.
◦
환경별 구성 분리: Local, Dev, Staging, Prod 환경에 따른 설정값(Configuration) 관리 자동화.
•
실제 운영 환경을 고려한 개발
◦
Unit Test: 비즈니스 로직의 독립적 검증 (Mocking 활용).
•
기술 스택
◦
TypeScript, Java, Kotlin 중 택 1
◦
Spring Boot, ExpressJS, NestJS, NextJS (중 택 1) 중심의 백엔드 스택
8. 테스트 및 성능 검증
인공지능 기획팀과 협업하여 완성된 서비스의
품질을 책임지는 단계
입니다.
주요 학습 및 작업 내용
•
테스트 전략 수립
•
통합 테스트
◦
Integration/E2E Test: 웹(Playwright) 또는 모바일(Detox, Maestro) 환경에서의 핵심 사용자 시나리오 검증.
◦
성능 테스트
•
병목 구간 분석
•
문제 수정 및 개선
•
운영 환경 기준 검증
•
장애 대응 역량
◦
Tracing & Monitoring: API 응답 속도 분포 분석 및 에러 발생 시 알림(Web hook/Email) 자동화.
•
확장성 및 성능 최적화
◦
캐싱 전략: Redis 등을 활용한 Look-aside / Write-through 패턴 적용으로 DB 부하 분산.
◦
비동기 처리: 대량의 알림 발송, 이미지 프로세싱 등 무거운 작업을 위한 RabbitMQ, Kafka 활용 및 이벤트 기반 아키텍처 기초.
◦
DB 인덱싱 최적화: 실행 계획 분석을 통한 인덱스 설계 및 슬로우 쿼리 개선.
◦
커넥션 풀 관리: 서버 리소스에 최적화된 DB 커넥션 개수 설정 및 튜닝.
◦
부하 테스트 결과를 바탕으로 한 JVM/Runtime 튜닝 및 DB Connection 수 조정.
•
핵심 포인트
◦
동작하는 코드
가 아니라
운영 가능한 서비스
를 목표로 합니다.
✍🏻 지원 자격
공통 사항
•
규칙과 법규를 준수하고, 윤리 의식을 갖고 계신 분
•
도전적이고, 새로운 것에 대해 거부감 없는 분
•
포기하지 않고, 책임감을 갖고 공부에 임하실 분
•
모르는 걸 두려워하지 않고, 올바르게 질문하실 수 있는 분
•
공부한 내용을 정리하고, 공유하고, 발표하는 것에 거리낌이 없는 분
•
인공지능에 의존하지 않고, 도구로써 이용하려는 마음가짐을 갖으신 분
•
여러 활동에 제약이 없는 분
◦
학업 활동 중이지 않으신 분 (대학, 대학원, 국비지원, 부트캠프 등 졸업했거나 수료하신 분)
◦
공부 외 네트워킹 활동에 제약사항 없으신 분
•
현재 다른 모임이나, 국비 지원 등에서 공부하고 있지 않는 분
◦
사이드 프로젝트를 진행하고, 있거나 다른 스터디 혹은 모임에 활동 중이지 않는 분
•
공부를 위해 꾸준히 시간 투자가 가능하신 분
•
꾸준함의 중요성을 알고, 쉬지 않고 달려갈 수 있는 분
추가 사항
•
IT 개발자로서의 비전을 갖고 있는 분
•
창의적이고, 만들고 싶은 욕심이 많으신 분
•
문제 발생 시 혼자 해결해 보려고 노력하여 해결해 본 경험이 있으신 분
•
원하는 목표를 이루기 위해 어떤 상황도 감수할 수 있는 의지와 열정이 있으신 분
✍🏻 지원서 작성
Made with Slashpage