화면을 만드는 프론트엔드와 요청·데이터를 처리하는 백엔드를 함께 배웁니다. 익숙한 언어가 없어도 HTTP와 데이터의 기본 흐름부터 살펴볼 수 있습니다.
프론트엔드 첫 실습
- HTML·CSS: 문서와 문의 폼 — 파일 하나를 브라우저에서 열고 라벨 연결과 필수 입력을 확인합니다. 첫 글 읽기 · 독립 실습 바로가기
- JavaScript: 첫 코드 실행 — DevTools와 Node.js의 실행 위치를 구분하고 첫 파일을 실행합니다. 시작 가이드 읽기 · 독립 실습 바로가기
- React: 클릭할 때 바뀌는 화면 — React·TypeScript 프로젝트에서 props와 state의 기본 동작을 확인합니다. 첫 실행 가이드 읽기 · 독립 실습 바로가기
백엔드 공통 기초
기존 공개 글을 선수 지식에 맞춰 연결한 읽기 경로입니다. HTTP는 설치 없이 관찰할 수 있습니다. 나머지 코드 실습은 Node.js·Next.js·React·SQL 등 각 글의 환경과 선수 지식을 확인한 뒤 선택해 주세요. 각 단계의 기초 글을 순서대로 읽고, 접힌 선택 심화는 필요할 때 이어서 읽으시면 됩니다.
HTTP 요청과 응답
확인할 것 브라우저 Network에서 요청 주소·메서드·상태 코드·응답 헤더를 읽어 봅니다.
- 브라우저와 HTTP 기초: HTML 요청부터 응답 헤더 읽기까지브라우저 관찰 실습 · 선수 지식 없이 시작
API 요청과 응답 처리
확인할 것 HTTP 상태와 JSON 응답을 구분하고, 정상·실패 요청을 각각 확인합니다.
- REST API 업무 자동화 fetch 인증 페이지네이션 기준Node.js fetch 예제 · async/await·JSON 기초 필요
선택 심화 · 기초 경로에서 건너뛰어도 됩니다
- TypeScript 외부 API 데이터 unknown과 type guard 안전 검증TypeScript 심화 · unknown·type guard·async/await을 익힌 뒤 외부 JSON 검증
Supabase 연결과 인증
확인할 것 프로젝트를 연결한 뒤 공개 키와 로그인 사용자의 역할을 나누고, 가입·세션·로그아웃을 확인합니다.
- Next.js Supabase 연결 방법: App Router 설정과 데이터 조회Supabase 첫 준비 · Next.js App Router·TypeScript·async/await·터미널 기초 필요
- Supabase Auth 이메일·비밀번호 회원가입·로그인·세션 기초Supabase Auth · 앞의 프로젝트 연결과 React 폼·useState 기초 필요
관계형 데이터와 접근 권한
확인할 것 Auth 사용자를 테이블과 연결한 뒤, 자기 데이터 허용·타인 데이터 거부를 RLS로 확인합니다.
- Supabase Postgres 관계형 데이터 모델링: 외래키와 TaskFlow 스키마 설계Supabase·PostgreSQL · 앞의 Auth 사용자 개념과 SQL 테이블·TypeScript 객체 기초 필요
- Supabase 사용자별 CRUD와 RLS: 두 계정으로 데이터 격리 검증하기Supabase 사용자별 CRUD·RLS · 앞의 관계형 스키마와 Auth 로그인 필요
선택 심화 · 기초 경로에서 건너뛰어도 됩니다
- Supabase RLS 권한 설계: GRANT·policy·키 경계와 데이터베이스 테스트권한 테스트 심화 · 사용자별 RLS·Supabase CLI·로컬 프로젝트를 준비한 뒤 pgTAP 검증
- Supabase 관계 조회와 인덱스 최적화: TaskFlow 운영 전 최종 점검관계 조회·인덱스 심화 · RLS·SQL 필터·SSR client·인덱스 기초 필요
오류 처리와 테스트
확인할 것 실패 시 반환값·예외·로그를 구분하고, 예상한 실패를 테스트가 놓치지 않는지 확인합니다.
- Jest console.error 테스트: try catch 에러 검증JavaScript·Jest · 함수·try/catch·async/await·expect 기초 필요
선택 심화 · 기초 경로에서 건너뛰어도 됩니다
- API 재시도 설계 exponential backoff와 rate limit 대응Node.js API 재시도 심화 · HTTP 상태·async/await·재실행 부작용을 이해한 뒤 읽기
배포와 운영
확인할 것 환경변수·프록시·캐시의 차이를 찾고, 로그와 배포 버전으로 장애 범위를 좁힙니다.
- 배포 환경 차이 해결: 프록시·캐시·환경변수·헤더 점검프론트엔드 배포 사례 · 배포·HTTP·환경변수 기초를 바탕으로 환경 차이 진단
- 프론트엔드 운영 모니터링: 로그·알림·롤백·장애 대응프론트엔드 운영 사례 · Vercel 배포 경험·Git commit·HTTP·Network 기초 필요
과정과 학습 순서 안내
프론트엔드는 HTML·CSS → JavaScript → TypeScript → React 순서로 시작해 보세요. 백엔드는 HTTP·API·데이터 공통 기초에서 시작하며, React 학습이 필수는 아닙니다.
기존 각 기술 과정의 초급·중급·고급 단계를 유지합니다. 아직 글이 없는 단계는 ‘준비 중’으로 표시하고 학습 목표와 예정 주제를 안내합니다. 공개 글 수는 과정의 완성도를 뜻하지 않습니다.
학습 시작은 각 과정의 시작 글로, 전체 글 보기는 해당 카테고리로 연결됩니다. 글마다 안내하는 선수 지식과 목차 순서를 참고하세요. 백엔드 공통 기초는 여러 기존 과정의 글을 연결한 읽기 경로입니다.
프론트엔드
HTML·CSS와 언어 기초에서 시작해 화면 구성, 상태 관리와 서버 데이터 연결까지 이어갑니다.
HTML·CSS
HTML로 문서와 입력 폼을 만들고, CSS로 화면 크기에 맞게 배치합니다.
선수 지식과 직접 확인할 것
선수 지식: 코드 편집기에서 파일을 만들고 브라우저로 열 수 있으면 시작할 수 있습니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
이름·이메일·문의 내용이 있는 문의 폼과 반응형 카드 목록을 만드세요.
label과 입력칸 연결, 키보드 이동, 좁은 화면의 가로 넘침 여부를 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
HTML의 의미와 CSS 배치 원리를 익혀, 문서 구조가 명확하고 다양한 화면에서 읽기 편한 페이지를 만드는 방법을 다룹니다.
학습 주제
- 시맨틱 HTML
- 박스 모델과 배치
- 반응형 기초
중급 목표
접근성과 반응형 요구를 함께 고려하여, 반복되는 화면 요소를 일관되게 구현하고 실제 표시 문제를 해결하는 방법을 다룹니다.
학습 주제
- 키보드 접근성
- 반응형 레이아웃 조합
- 재사용 스타일 구조
고급 목표
복잡한 화면의 유지보수와 성능을 함께 고려하여, 스타일 구조와 디자인 시스템의 선택 근거를 설명하는 설계를 다룹니다.
학습 주제
- 디자인 토큰 설계
- CSS 구조와 변경 비용
- 렌더링 성능 점검
JavaScript
조건문·반복문·함수부터 시작해 화면을 바꾸고 데이터를 요청합니다.
선수 지식과 직접 확인할 것
선수 지식: HTML 요소와 폼의 기본 구조를 먼저 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
검색어로 목록을 필터링하고 결과가 없을 때 안내 문구를 표시하세요.
빈 검색어·일치 항목·일치하지 않는 항목을 각각 확인하고 함수의 입력과 반환값을 설명합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
값과 변수, 조건과 반복, 함수의 기본 동작을 익혀, 작은 문제를 코드로 표현하고 실행 결과를 확인하는 방법을 다룹니다.
학습 주제
- 값과 자료형
- 조건문과 반복문
- 함수와 배열
중급 목표
객체와 비동기 처리의 동작을 이해하고, 화면 이벤트와 데이터 요청을 결합하여 오류를 추적하고 해결하는 방법을 다룹니다.
학습 주제
- 객체와 참조
- 비동기 처리와 오류
- DOM 이벤트 흐름
고급 목표
실행 환경과 메모리, 비동기 흐름을 근거로 복잡한 동작을 분석하고, 성능과 유지보수를 고려한 코드 설계를 다룹니다.
학습 주제
- 실행 흐름과 스코프
- 메모리와 성능 분석
- 모듈 경계와 설계
TypeScript
JavaScript의 값과 함수에 타입을 붙여 잘못된 데이터 사용을 확인합니다.
선수 지식과 직접 확인할 것
선수 지식: JavaScript 함수·배열·객체·모듈을 사용할 수 있어야 합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
상품 타입과 검색 함수를 만들고 unknown 입력의 유효성을 검사하세요.
strict 검사 통과, 잘못된 입력 거절, 불필요한 any 없이 분기별 타입 확인을 완료합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
기본 타입과 함수의 입출력 표현을 익혀, 자바스크립트 코드에서 예상할 수 있는 오류를 미리 확인하는 방법을 다룹니다.
학습 주제
- 기본 타입과 추론
- 객체와 함수 타입
- 유니언과 좁히기
중급 목표
제네릭과 타입 조합을 활용하여, 비동기 데이터와 재사용 코드의 경계를 명확히 하고 타입 오류를 해결하는 방법을 다룹니다.
학습 주제
- 제네릭과 제약
- 타입 조합과 변환
- 외부 데이터 검증
고급 목표
복잡한 도메인의 규칙을 타입으로 표현하고, 안전성과 이해 비용을 비교하여 공개 인터페이스를 설계하는 방법을 다룹니다.
학습 주제
- 도메인 타입 모델링
- 조건부 타입의 한계
- 라이브러리 타입 설계
React
화면을 컴포넌트로 나누고 사용자 입력에 따라 내용을 바꿉니다.
선수 지식과 직접 확인할 것
선수 지식: HTML, JavaScript 배열·함수·모듈을 익히고 TypeScript 기본 타입을 확인합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
상품 목록을 컴포넌트로 나누고 검색 입력과 선택 상태를 추가하세요.
props 전달 방향, 상태 소유 위치, 목록 key, 빈 결과 처리를 설명하고 직접 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
컴포넌트와 상태의 기본 동작을 익혀, 입력과 이벤트에 반응하는 작은 화면을 만들고 데이터 흐름을 이해하는 방법을 다룹니다.
학습 주제
- 컴포넌트와 props
- 상태와 이벤트
- 목록과 조건부 표시
중급 목표
상태의 소유 위치와 비동기 데이터 흐름을 정리하여, 폼과 화면 로직을 결합하고 사용자 동작을 검증하는 방법을 다룹니다.
학습 주제
- 상태 위치와 공유
- 커스텀 훅과 부수 효과
- 폼과 상호작용 테스트
고급 목표
렌더링 비용과 변경 범위를 실제 근거로 분석하여, 복잡한 화면의 상태 경계와 컴포넌트 구조를 설계하는 방법을 다룹니다.
학습 주제
- 렌더링 성능 측정
- 복합 상태 흐름 설계
- 컴포넌트 API 설계
Next.js
페이지 경로와 데이터 조회를 연결하고 서버와 브라우저의 역할을 익힙니다.
선수 지식과 직접 확인할 것
선수 지식: React 컴포넌트와 state, JavaScript 비동기 처리, HTTP 기초가 필요합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
목록·상세 경로를 만들고 로딩·오류·찾을 수 없음 화면을 연결하세요.
직접 URL 접근과 새로고침, 없는 ID, 실패 응답을 확인하고 실행 환경의 경계를 설명합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
라우팅과 페이지 구성의 기본을 익혀, 서버와 브라우저의 역할을 구분하고 데이터가 표시되는 웹 화면을 만드는 방법을 다룹니다.
학습 주제
- 파일 기반 라우팅
- 서버와 클라이언트 경계
- 데이터 표시와 오류 화면
중급 목표
데이터 갱신과 인증 흐름을 화면에 연결하여, 로딩과 오류 및 캐시로 생기는 실제 사용자 문제를 해결하는 방법을 다룹니다.
학습 주제
- 데이터 변경과 갱신
- 인증과 접근 제어
- 캐시와 오류 처리
고급 목표
서비스의 데이터 특성과 운영 조건을 기준으로, 렌더링과 캐시 및 배포 구조의 장단점을 비교하는 설계를 다룹니다.
학습 주제
- 렌더링 전략 비교
- 캐시 일관성 설계
- 운영 관측과 배포 선택
Tailwind CSS
클래스를 조합해 화면 배치와 크기별 스타일을 작성합니다.
선수 지식과 직접 확인할 것
선수 지식: CSS 박스 모델, Flex/Grid, 미디어 쿼리를 먼저 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
동일한 카드 목록을 모바일 1열·넓은 화면 다열로 구성하고 선택 상태를 표시하세요.
클래스가 소스에 완전한 문자열로 존재하는지, 키보드 포커스와 반응형 배치를 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
유틸리티 클래스의 조합과 반응형 기준을 익혀, 간단한 화면의 간격과 글꼴 및 배치를 일관되게 구현하는 방법을 다룹니다.
학습 주제
- 유틸리티 클래스 기초
- 간격과 타이포그래피
- 반응형과 상태 표현
중급 목표
반복되는 스타일과 상태 변형을 정리하여, 접근성을 유지하면서 여러 화면에 공통으로 쓰는 요소를 만드는 방법을 다룹니다.
학습 주제
- 컴포넌트 스타일 조합
- 테마와 토큰 활용
- 접근성과 상태 스타일
고급 목표
팀의 변경 빈도와 제품 요구를 기준으로, 유틸리티와 컴포넌트의 경계 및 디자인 토큰 운영 방식을 설계하는 방법을 다룹니다.
학습 주제
- 토큰과 테마 구조
- 스타일 추상화의 기준
- 일관성 검증과 운영
TanStack Query
서버 데이터를 가져오고, 변경한 뒤 화면과 저장된 데이터를 갱신합니다.
선수 지식과 직접 확인할 것
선수 지식: React state·Effect, Promise·fetch, 응답 오류 처리를 먼저 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
목록을 조회하고 항목 변경 후 관련 queryKey의 데이터를 갱신하세요.
로딩·오류·빈 목록·성공 및 변경 후 재조회 결과를 각각 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
서버 상태와 화면 상태의 차이를 익혀, 데이터 요청의 로딩과 오류 및 성공 상태를 사용자에게 전달하는 방법을 다룹니다.
학습 주제
- 서버 상태와 쿼리
- 쿼리 키 기초
- 로딩과 오류 표시
중급 목표
데이터 변경과 목록 탐색을 연결하여, 캐시 갱신과 요청 의존성 때문에 생기는 화면의 불일치를 해결하는 방법을 다룹니다.
학습 주제
- 변경 요청과 무효화
- 페이지 탐색과 의존 요청
- 캐시 수명과 재요청
고급 목표
데이터 일관성과 사용자 경험의 균형을 기준으로, 낙관적 변경과 캐시 경계 및 복구 전략을 설계하는 방법을 다룹니다.
학습 주제
- 낙관적 변경과 복구
- 쿼리 키 체계 설계
- 서버 렌더링과 캐시 경계
Zustand
여러 컴포넌트에서 함께 쓰는 상태를 정리하고 변경 흐름을 만듭니다.
선수 지식과 직접 확인할 것
선수 지식: React props·state와 불변 업데이트를 먼저 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
두 컴포넌트가 공유하는 선택 목록을 만들고 추가·제거 action을 분리하세요.
중복 추가·마지막 항목 제거·새로고침 이후 유지 범위와 selector 구독 대상을 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
스토어와 선택자의 기본 역할을 익혀, 여러 컴포넌트가 공유하는 작은 상태를 만들고 변경 흐름을 추적하는 방법을 다룹니다.
학습 주제
- 스토어와 액션
- 선택자와 상태 구독
- 로컬 상태와 공유 상태
중급 목표
화면 간 상태와 저장된 상태를 함께 다루며, 불필요한 갱신과 초기화 오류를 찾아 상태 흐름을 정리하는 방법을 다룹니다.
학습 주제
- 선택자와 갱신 범위
- 상태 저장과 초기화
- 스토어 분리와 테스트
고급 목표
도메인 경계와 실행 환경의 차이를 고려하여, 상태의 수명과 동기화 및 변경 책임이 명확한 구조를 설계하는 방법을 다룹니다.
학습 주제
- 도메인별 상태 경계
- 상태 버전과 마이그레이션
- 서버 환경과 격리
백엔드·데이터
백엔드 공통 기초로 HTTP·API·데이터의 흐름을 먼저 익히세요. Firebase·Supabase 예제로 데이터 저장, 로그인과 접근 권한을 연결하고 각 서비스의 방식과 제약을 확인합니다.
Firebase
로그인, 데이터와 이미지 저장, 배포 기능이 어떻게 연결되는지 살펴봅니다.
선수 지식과 직접 확인할 것
선수 지식: JavaScript 비동기 처리와 React, 인증·HTTP 기초가 필요합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
개발용 환경에서 사용자별 메모 저장 흐름과 접근 권한 표를 작성하세요.
로그인 전후·다른 사용자 접근·오류 응답을 구분합니다. 실제 연동 실습은 본인 테스트 프로젝트에서 진행합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
인증과 데이터 저장의 기본 흐름을 익혀, 접근 권한을 확인하면서 작은 웹 기능을 구성하고 동작을 점검하는 방법을 다룹니다.
학습 주제
- 프로젝트와 실행 환경
- 인증 흐름 기초
- 데이터 읽기와 쓰기
중급 목표
사용자별 권한과 데이터 구조를 함께 고려하여, 파일과 실시간 데이터가 연결되는 기능을 안전하게 구현하는 방법을 다룹니다.
학습 주제
- 권한 규칙과 검증
- 파일 업로드와 접근
- 실시간 갱신과 쿼리
고급 목표
데이터 접근 패턴과 운영 비용을 근거로, 일관성과 확장성 및 장애 대응을 고려하는 서비스 구조를 설계하는 방법을 다룹니다.
학습 주제
- 데이터 구조와 비용
- 경합과 일관성 관리
- 운영 감시와 복구 계획
Supabase
데이터 조회와 로그인을 연결하고 사용자별 접근 권한을 설계합니다.
선수 지식과 직접 확인할 것
선수 지식: React·Next.js, 비동기 요청과 인증 기초를 먼저 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
사용자별 메모 테이블과 본인 행만 접근하는 권한 규칙을 설계하세요.
익명·소유자·다른 사용자에게 허용할 동작을 표로 확인하고 테스트 프로젝트에서 검증합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
관계형 데이터와 인증의 기본을 익혀, 테이블의 자료를 읽고 쓰면서 사용자별 접근 범위를 확인하는 방법을 다룹니다.
학습 주제
- 테이블과 관계 기초
- 인증과 세션
- 기본 조회와 데이터 변경
중급 목표
관계형 쿼리와 행 수준 권한을 연결하여, 실제 화면의 데이터 요구를 구현하고 권한 및 성능 문제를 해결하는 방법을 다룹니다.
학습 주제
- 관계형 조회와 인덱스
- 행 수준 보안 정책
- 파일과 실시간 데이터
고급 목표
데이터 무결성과 운영 요구를 기준으로, 권한 경계와 스키마 변경 및 성능 점검 절차를 설계하는 방법을 다룹니다.
학습 주제
- 트랜잭션과 무결성
- 보안 정책 검증
- 스키마 변경과 운영
개발·운영
개발환경을 준비하고 협업·테스트·배포를 연결합니다. AI 도구와 반복 업무의 자동화도 함께 살펴봅니다.
개발환경
프로젝트 설치·실행·빌드와 환경 설정의 기본 흐름을 익힙니다.
선수 지식과 직접 확인할 것
선수 지식: 폴더 이동과 코드 편집기 사용에 익숙하면 시작할 수 있습니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
작은 프로젝트의 설치·개발 실행·빌드 명령을 README에 기록하세요.
lockfile 하나를 기준으로 재설치하고 비밀값 없는 환경변수 예시를 구분합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
터미널과 패키지 및 실행 스크립트의 기본을 익혀, 개발 프로젝트를 실행하고 흔한 설치 오류를 확인하는 방법을 다룹니다.
학습 주제
- 터미널과 경로
- 패키지와 실행 스크립트
- 환경 변수 기초
중급 목표
도구 설정과 의존 관계를 이해하여, 팀원마다 달라지는 실행 환경과 빌드 및 코드 검사 문제를 해결하는 방법을 다룹니다.
학습 주제
- 의존성 충돌과 잠금 파일
- 코드 검사와 포맷
- 개발 서버와 빌드 진단
고급 목표
재현성과 유지보수 비용을 기준으로, 여러 프로젝트의 도구 체계와 환경 변경 및 검증 절차를 설계하는 방법을 다룹니다.
학습 주제
- 재현 가능한 개발 환경
- 공통 설정과 작업 공간
- 의존성 갱신과 검증
Git·GitHub
파일의 변경 내용을 확인하고 커밋·브랜치·코드 검토로 협업합니다.
선수 지식과 직접 확인할 것
선수 지식: 파일 편집과 터미널의 기본 경로 이동을 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
연습 저장소에서 두 브랜치의 같은 줄을 수정하고 충돌을 해결하세요.
status·diff로 변경 범위를 확인하고 최종 파일과 커밋 기록을 설명합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
변경 내용을 확인하고 커밋하는 기본 흐름을 익혀, 작업 이력을 남기고 원격 저장소와 안전하게 주고받는 방법을 다룹니다.
학습 주제
- 변경 확인과 커밋
- 브랜치와 원격 저장소
- 되돌리기와 복구 기초
중급 목표
브랜치와 변경 검토 흐름을 함께 활용하여, 협업 중 발생하는 충돌을 해결하고 의도가 드러나는 이력을 만드는 방법을 다룹니다.
학습 주제
- 충돌 해결과 병합
- 변경 검토와 PR
- 커밋 정리와 원인 추적
고급 목표
팀의 배포 방식과 위험 수준을 기준으로, 브랜치 운영과 변경 추적 및 복구가 가능한 협업 체계를 설계하는 방법을 다룹니다.
학습 주제
- 브랜치 운영 전략
- 릴리스와 이력 추적
- 협업 보호와 복구 절차
테스트
함수부터 실제 사용자 동작까지, 필요한 범위의 테스트를 작성합니다.
선수 지식과 직접 확인할 것
선수 지식: JavaScript 함수와 React 이벤트·폼 처리를 먼저 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
검색 함수와 검색 폼, 목록에서 상세로 이동하는 흐름에 각각 테스트를 작성하세요.
의도적으로 동작을 깨뜨렸을 때 실패하고 복구했을 때 통과하는지 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
테스트의 목적과 기본 구조를 익혀, 작은 함수의 정상 동작과 경계 조건을 검증하고 실패 원인을 읽는 방법을 다룹니다.
학습 주제
- 테스트 구조와 단언
- 경계값과 예외 사례
- 테스트 실행과 실패 해석
중급 목표
사용자 동작과 비동기 흐름을 함께 검증하여, 단위 테스트만으로 놓치기 쉬운 화면과 데이터 연결 문제를 찾는 방법을 다룹니다.
학습 주제
- 컴포넌트 상호작용
- 비동기와 테스트 대역
- 주요 흐름 통합 테스트
고급 목표
제품 위험과 실행 비용을 기준으로 검증 범위를 나누고, 불안정한 테스트를 줄이는 지속적인 품질 관리 설계를 다룹니다.
학습 주제
- 위험 기반 테스트 전략
- 불안정한 테스트 분석
- 검증 파이프라인 설계
배포·서버
앱 실행 방식에 맞는 배포를 고르고 빌드·환경변수·도메인을 점검합니다.
선수 지식과 직접 확인할 것
선수 지식: Git과 프로젝트 빌드 명령, HTTP 기초가 필요합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
연습 앱의 정적/서버 배포 적합성을 정하고 배포·복구 절차를 작성하세요.
빌드 결과물 위치, 새로고침 경로, 공개 환경변수, 이전 버전 복구 방법을 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
빌드 결과와 서버 및 도메인의 기본 역할을 익혀, 작은 웹 프로젝트를 배포하고 접속 문제를 확인하는 방법을 다룹니다.
학습 주제
- 빌드 결과와 배포
- 도메인과 HTTPS
- 환경 변수와 로그
중급 목표
자동 배포와 요청 흐름을 연결하여, 환경 차이와 캐시 및 서버 설정 때문에 생기는 서비스 문제를 해결하는 방법을 다룹니다.
학습 주제
- 자동 배포와 검증
- 프록시와 캐시
- 환경 차이와 장애 진단
고급 목표
가용성과 운영 비용을 기준으로, 관측과 복구 및 안전한 변경 적용을 갖춘 배포 구조를 설계하는 방법을 다룹니다.
학습 주제
- 배포 전략과 되돌리기
- 서비스 관측과 알림
- 용량 계획과 장애 대응
AI 코딩 도구
AI에 작업 범위와 확인 기준을 전달하고 생성된 변경 사항을 검토합니다.
선수 지식과 직접 확인할 것
선수 지식: 수정 대상 언어의 기초와 Git diff를 읽을 수 있어야 합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
작은 오류 하나의 재현 조건·수정 범위·완료 기준을 작성해 변경 결과를 검토하세요.
관련 없는 수정과 비밀값 노출 여부를 확인하고 실제 테스트 결과를 기록합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
AI 도구에 작업 맥락과 범위를 전달하는 기본을 익혀, 제안된 코드와 변경 내용을 직접 확인하며 사용하는 방법을 다룹니다.
학습 주제
- 요청 범위와 맥락 전달
- 변경 차이와 코드 검토
- 비밀정보와 실행 주의
중급 목표
탐색과 구현 및 검증을 나누어 요청하고, 도구가 잘못 이해한 가정과 실패 원인을 추적하여 작업을 개선하는 방법을 다룹니다.
학습 주제
- 작업 분해와 확인 기준
- 테스트와 수정 반복
- 도구 권한과 외부 자료
고급 목표
위험과 검증 비용을 기준으로, 자동화 범위와 사람의 승인 지점 및 결과 평가가 명확한 개발 흐름을 설계하는 방법을 다룹니다.
학습 주제
- 자동화와 승인 경계
- 에이전트 결과 평가
- 추적 가능한 작업 기록
업무·자동화
반복 업무를 작은 단계로 나누고 중복 실행과 실패에 대비합니다.
선수 지식과 직접 확인할 것
선수 지식: 파일과 데이터의 기본 구조를 이해하고 코드 실습에는 JavaScript 기초가 필요합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
동일한 입력을 두 번 처리해도 결과가 중복되지 않는 작은 자동화를 구성하세요.
정상 입력·빈 입력·재실행·실패 이후 복구 결과를 기록합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
반복되는 업무의 입력과 결과를 정리하고, 작은 스크립트로 자료를 처리하며 실행 결과를 확인하는 방법을 다룹니다.
학습 주제
- 반복 업무와 처리 규칙
- 파일과 표 데이터 처리
- 실행 결과와 오류 기록
중급 목표
여러 처리 단계와 외부 서비스를 연결하여, 실패한 작업을 확인하고 중복 처리와 누락을 줄이는 자동화 방법을 다룹니다.
학습 주제
- API 연결과 데이터 매핑
- 예약 실행과 재시도
- 중복 방지와 검증
고급 목표
업무 위험과 운영 비용을 기준으로, 권한과 감사 기록 및 복구 가능한 처리 흐름을 갖춘 자동화 설계를 다룹니다.
학습 주제
- 승인과 권한 경계
- 멱등성과 실패 복구
- 운영 기록과 품질 점검
CS·알고리즘
컴퓨터와 데이터의 기본 원리를 익히고, 자료구조를 선택하며 여러 언어로 문제를 풀어 봅니다.
CS 기초
브라우저가 요청을 보내고 응답을 받는 흐름과 인증의 기초를 익힙니다.
선수 지식과 직접 확인할 것
선수 지식: HTML과 JavaScript 요청 코드의 기초를 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
개발자 도구에서 한 페이지의 요청 URL·상태·헤더·응답을 기록하세요.
서버 오류와 CORS 차단을 구분하고 쿠키·토큰이 전달되는 위치를 설명합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
웹에서 자주 만나는 네트워크와 운영체제의 기초 개념을 익혀, 브라우저 요청과 프로그램 실행을 설명하는 방법을 다룹니다.
학습 주제
- HTTP와 요청 응답
- 프로세스와 메모리
- 문자 인코딩과 데이터
중급 목표
네트워크와 실행 환경의 개념을 실제 증상에 연결하여, 요청 실패와 지연 및 자원 사용 문제를 분석하는 방법을 다룹니다.
학습 주제
- 연결과 이름 해석
- 동시성과 비동기 실행
- 브라우저 보안 경계
고급 목표
시스템의 자원 한계와 실패 조건을 근거로, 일관성과 성능 및 신뢰성 사이의 선택을 설명하는 방법을 다룹니다.
학습 주제
- 캐시와 일관성
- 병목과 자원 분석
- 실패 모델과 신뢰성
이산수학
명제·집합·관계·경우의 수·그래프를 예시와 함께 살펴봅니다.
선수 지식과 직접 확인할 것
선수 지식: 기본 사칙연산과 수식 읽기에 익숙하면 시작할 수 있습니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
간단한 조건문의 진리표와 집합 연산, 작은 그래프의 연결 관계를 직접 적으세요.
정의와 예시·반례를 함께 제시하고 계산 과정을 다른 사람에게 설명합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
명제와 집합 및 함수의 기본 표현을 익혀, 조건과 관계를 수학적으로 설명하고 간단한 논리를 점검하는 방법을 다룹니다.
학습 주제
- 명제와 논리 연산
- 집합과 함수
- 관계와 기본 증명
중급 목표
경우의 수와 그래프 및 점화식을 활용하여, 알고리즘 문제의 조건을 모델링하고 풀이 근거를 설명하는 방법을 다룹니다.
학습 주제
- 조합과 경우의 수
- 그래프와 연결 관계
- 귀납법과 점화식
고급 목표
추상적인 구조와 증명 기법을 근거로, 알고리즘의 정확성과 한계를 비교하고 복잡한 문제를 단순화하는 방법을 다룹니다.
학습 주제
- 불변식과 정확성 증명
- 이산 구조의 모델링
- 계수와 점근적 분석
자료구조
값 조회·중복 제거·순서 처리에 맞는 자료구조를 골라 사용합니다.
선수 지식과 직접 확인할 것
선수 지식: JavaScript 배열·객체·반복문·함수가 필요합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
중복 제거, 실행 취소 스택, 순서대로 처리하는 큐를 각각 구현하세요.
빈 입력·중복 값·연속 삽입과 제거를 확인하고 자료구조 선택 이유를 설명합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
배열과 연결 구조 및 기본 자료구조의 동작을 익혀, 자료를 저장하고 찾는 방식과 연산 비용을 비교하는 방법을 다룹니다.
학습 주제
- 배열과 연결 리스트
- 스택과 큐
- 집합과 맵
중급 목표
탐색과 우선순위 및 관계 표현에 맞는 자료구조를 선택하여, 여러 연산이 결합된 문제를 구현하고 분석하는 방법을 다룹니다.
학습 주제
- 트리와 힙
- 그래프 표현
- 해시와 탐색 비용
고급 목표
데이터 규모와 변경 패턴을 근거로, 자료구조의 공간 및 시간 비용을 비교하고 불변식을 검증하는 설계를 다룹니다.
학습 주제
- 불변식과 정확성 검증
- 복합 자료구조 설계
- 최악 비용과 분할 상환
알고리즘 풀이 · 5개 언어 실습
JavaScript·Python·Java·C++·C#으로 문제를 풀고 힌트와 정답을 비교합니다. 풀이 과정과 경계 조건을 함께 확인합니다.
선수 지식과 직접 확인할 것
선수 지식: JavaScript 조건·반복·함수·배열과 기본 자료구조를 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
이미 푼 문제 한 개를 해설 없이 다시 풀고 경계 입력 세 개를 추가하세요.
예상 출력과 실제 출력을 비교하고 시간 복잡도 및 다른 풀이의 장단점을 설명합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
입력과 출력 및 기본 문법을 활용하여, 문자열과 배열 중심의 문제를 풀고 예외 사례를 확인하는 방법을 다룹니다.
학습 주제
- 입출력과 문제 해석
- 문자열과 배열 문제
- 복잡도와 경계 사례
중급 목표
자료구조와 대표적인 탐색 기법을 조합하여, 문제 조건에 맞는 풀이를 선택하고 시간 초과를 개선하는 방법을 다룹니다.
학습 주제
- 탐색과 정렬 활용
- 그리디와 동적 계획
- 그래프 탐색과 상태
고급 목표
복합 조건과 큰 입력 규모를 분석하여, 풀이의 정확성을 증명하고 여러 접근의 성능 차이를 설명하는 방법을 다룹니다.
학습 주제
- 고급 탐색과 상태 압축
- 복합 자료구조 활용
- 정확성 증명과 최적화
모바일 앱
React와 TypeScript 기초를 바탕으로 화면 이동과 기기 환경을 고려한 앱을 만듭니다.
Expo
화면·목록·입력·화면 이동을 연결하며 작은 모바일 앱을 만듭니다.
선수 지식과 직접 확인할 것
선수 지식: React 컴포넌트·props·state와 TypeScript 기초를 익힙니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
목록과 상세 화면, 텍스트 입력, 안전 영역을 갖춘 작은 앱을 만드세요.
좁은 화면·키보드 표시·뒤로 이동을 확인합니다. 기기 설치와 원격 빌드는 별도 실행 항목으로 기록합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
모바일 화면과 상태 및 이동의 기본을 익혀, 기기에서 실행되는 작은 앱을 만들고 웹과의 차이를 이해하는 방법을 다룹니다.
학습 주제
- 앱 실행과 기본 화면
- 레이아웃과 사용자 입력
- 화면 이동과 상태
중급 목표
인증과 서버 데이터 및 기기 기능을 연결하여, 권한과 네트워크 상태 변화에 대응하는 앱 기능을 구현하는 방법을 다룹니다.
학습 주제
- 인증과 데이터 연동
- 기기 권한과 기능
- 오프라인과 오류 처리
고급 목표
플랫폼 차이와 배포 조건을 근거로, 성능과 상태 복구 및 운영 중 변경을 고려한 앱 구조를 설계하는 방법을 다룹니다.
학습 주제
- 목록과 화면 성능 분석
- 앱 배포와 갱신 전략
- 플랫폼 경계와 구조 설계
개발 기록
개발자 영어와 커리어·포트폴리오 과정을 통해 작업을 설명하고 경험을 정리합니다.
개발자 영어
작업 현황과 질문, 코드 검토 의견을 짧은 영어 문장으로 전달합니다.
선수 지식과 직접 확인할 것
선수 지식: 완벽한 문법보다 짧은 문장으로 의사를 전달하는 연습부터 시작합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
작업 현황, 막힌 점 질문, PR 설명을 각각 영어 두 문장으로 작성하고 소리 내어 읽으세요.
무엇을 했는지·어디서 막혔는지·어떤 도움이 필요한지가 전달되는지 확인합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
개발 문서와 오류 메시지에서 자주 쓰는 표현을 익혀, 필요한 정보를 찾고 짧은 작업 내용을 전달하는 방법을 다룹니다.
학습 주제
- 오류 메시지 읽기
- 문서의 지시와 조건
- 작업 설명과 질문
중급 목표
문제의 맥락과 재현 과정 및 제안 이유를 정리하여, 이슈와 코드 검토에서 오해를 줄이는 의사소통 방법을 다룹니다.
학습 주제
- 이슈와 재현 절차
- PR 설명과 검토 의견
- 제약과 대안 표현
고급 목표
설계의 근거와 불확실성을 분리해 설명하며, 기술적인 이견과 선택 사항을 문서로 조율하는 의사소통 방법을 다룹니다.
학습 주제
- 설계 제안과 선택 근거
- 불확실성과 위험 설명
- 기술 토론과 합의 기록
커리어·포트폴리오
프로젝트에서 맡은 역할과 해결 과정, 확인한 결과를 정리합니다.
선수 지식과 직접 확인할 것
선수 지식: 직접 설명할 수 있는 프로젝트나 업무 개선 사례 한 개를 준비합니다.
직접 확인할 것 · 아래 실습을 연습에 활용해 보세요.
사례 한 개를 문제·담당 범위·구현·결과의 네 문단으로 정리하세요.
실제 경험과 가정을 구분하고 확인 가능한 화면·코드·측정 근거를 연결합니다.
단계별 학습 목표
각 단계의 학습 목표입니다. 공개된 글은 위의 단계별 링크에서 바로 볼 수 있습니다.
초급 목표
학습과 프로젝트의 목표 및 작업 과정을 정리하여, 자신의 역할과 구현 결과를 근거와 함께 설명하는 방법을 다룹니다.
학습 주제
- 프로젝트 목표와 범위
- 역할과 구현 과정
- 근거와 회고 정리
중급 목표
문제 해결 과정과 선택한 대안을 비교하여, 지원 분야에 맞는 사례를 구성하고 설명의 부족한 부분을 개선하는 방법을 다룹니다.
학습 주제
- 문제 해결 사례 구성
- 설계 선택과 대안 비교
- 포트폴리오 검토와 개선
고급 목표
장기적인 성장 방향과 실제 경험을 연결하여, 복잡한 기술적 판단과 협업 기여를 검증 가능한 이야기로 구성하는 방법을 다룹니다.
학습 주제
- 복잡한 의사결정 설명
- 협업 기여와 영향 근거
- 성장 계획과 사례 관리
학습과 함께 읽기
새로운 발표는 빠른 소식에서, 하루의 흐름은 일일 AI 요약에서 확인하세요. 도구 사용법과 개발 경험도 따로 모았습니다.