06 / 06 · Команда

🎓 Онбординг: с первого дня до уверенного CC

Структурированный план для нового разработчика в команде: что сделать в первый день, чек-листы на неделю, типичные ошибки и прогресс-трекер навыков.

🎓
Для кого: Tech Lead и Senior, которые вводят нового разработчика в команду. И для новичков — всё что нужно знать с первого дня работы с CC.

✅ Чек-лист: День 1

Всё что должен сделать новый разработчик в первый день, чтобы начать продуктивно работать с CC.

1
Установить Claude Code
Установка CLI через npm
⏱ 5 минут
npm install -g @anthropic-ai/claude-code
2
Войти в аккаунт Anthropic
Авторизация через CLI или браузер
⏱ 3 минуты
claude auth login
3
Клонировать репозиторий проекта
Получить доступ к кодовой базе команды
⏱ 10 минут
git clone [repo-url] && cd [project-dir]
4
Прочитать корневой CLAUDE.md проекта
Главный документ: архитектура, стек, запреты, соглашения. Без этого нельзя начинать работу с CC.
⏱ 15–20 минут
cat CLAUDE.md
5
Запустить CC и пройти верификацию CLAUDE.md
Попросите CC воспроизвести ключевые правила из CLAUDE.md. Если что-то неправильно понял — CLAUDE.md неполный.
⏱ 10 минут
claude → "Что написано в нашем CLAUDE.md? Перечисли ключевые правила."
6
Изучить структуру проекта через CC
CC помогает быстро понять структуру незнакомого проекта лучше, чем чтение документации
⏱ 20 минут
claude → "Объясни архитектуру проекта. Какие основные модули? Как данные проходят от API до UI?"
7
Запустить локальную среду разработки
Docker Compose + зависимости + база данных
⏱ 15 минут
docker compose up -d && composer install && npm install && php artisan migrate
8
Запустить тесты
Убедиться что все тесты проходят на вашей машине. Если нет — сразу разобраться с помощью CC.
⏱ 10 минут
php artisan test && npm run test
9
Настроить персональный CLAUDE.md
Создать ~/.claude/CLAUDE.md с личными предпочтениями: стиль ответов, языки, уровень детализации
⏱ 10 минут
nano ~/.claude/CLAUDE.md
10
Пройти первый раздел обучающего сайта
Beginner раздел: базовые концепции CC. Можно пропустить если уже знаком с CC.
⏱ 45 минут
https://claude.rosveb.ru/beginner/
11
Сделать первую маленькую задачу с CC
Реальная небольшая задача из backlog'а. Под руководством ментора, чтобы сразу получить обратную связь.
⏱ 30–60 минут
Начните с задачи "хорошо определена + небольшой scope + есть тесты"
12
Познакомиться с командным workflow
Как создаём ветки, делаем PR, проводим ревью. Специфика работы CC в нашем процессе.
⏱ 15 минут
Прочитайте CONTRIBUTING.md и docs/workflow/
13
Настроить редактор (VS Code / Cursor)
Расширения для Laravel, Vue, TypeScript. Cursor с Claude встроен — отличная альтернатива для IDE-использования CC.
⏱ 15 минут
code --install-extension bmewburn.vscode-intelephense-client && code --install-extension Vue.volar
14
Установить MCP инструменты команды
Список MCP серверов, которые использует команда, должен быть в CLAUDE.md или docs/setup/mcp.md
⏱ 20 минут
Обычно: файловые инструменты, Figma MCP, возможно database MCP
15
Созвониться с ментором: итоги дня
15-минутный созвон: что получилось, что непонятно, приоритеты на завтра. CC можно использовать прямо на созвоне для демонстрации.
⏱ 15 минут
Цель Дня 1: Рабочая среда, понимание CLAUDE.md команды, первая маленькая задача выполнена с CC. Не пытайтесь за один день изучить всё — важно начать, а не охватить.

📅 Чек-лист: Неделя 1

20 задач на первую неделю. Распределены по дням — но темп можно адаптировать под реальные задачи проекта.

День 2
  • Изучить Advanced раздел сайта (2 часа)
  • Освоить /compact для длинных сессий CC
  • Создать свои первые 5 шаблонов промптов
  • Разобрать одну существующую фичу проекта через CC
День 3
  • Первый самостоятельный PR с CC (без ментора)
  • Пройти code review через CC перед отправкой
  • Изучить наши команды и hooks в .claude/
  • Написать первый тест с помощью CC
День 4
  • Освоить работу с git worktrees
  • Попробовать параллельную работу: 2 задачи одновременно
  • Настроить компактные ответы CC для рутинных задач
  • Изучить MCP инструменты проекта глубже
День 5
  • Expert раздел сайта: прочитать 2 статьи
  • Добавить свои правила в личный CLAUDE.md
  • Ретроспектива с ментором: что улучшить в процессе
  • Написать первую документацию через CC
Дни 6–7 (по желанию)
  • Best Practices раздел: изучить 2–3 эксперта
  • Попробовать CC для задачи вне основного стека
  • Обновить личный CLAUDE.md по итогам недели
  • Поделиться находками с командой

📋 Шаблон CLAUDE.md для новичка

Готовый минимальный CLAUDE.md для нового члена команды. Скопируйте, адаптируйте под себя и проект.

# [Имя] — Рабочая конфигурация Claude Code
# Создан: [дата]
# Проект: [название проекта]

## Мой стек
- Backend: Laravel 11, PHP 8.3
- Frontend: Nuxt 3, Vue 3, TypeScript
- БД: PostgreSQL 16
- Контейнеризация: Docker Compose
- Тесты: Pest v2 (PHP), Vitest (JS)

## Стиль ответов Claude
- Отвечай на русском языке
- Краткость важна — не пиши вступления типа "Конечно, я помогу..."
- Сразу давай рабочий код
- Объясняй "почему" только если я спросил
- При ошибках: сначала объясни причину, потом решение

## Правила нашего проекта (из командного CLAUDE.md)
- Архитектура: Domain-Driven Design (app/Domains/)
- Логика ТОЛЬКО в Service классах, не в Controller
- Tenant isolation обязательна везде
- Все внешние данные проходят валидацию (Form Requests)
- Тесты пишем для каждой новой функции
- PSR-12 код-стиль + наш .php-cs-fixer.php

## Мои личные правила
- При сложных задачах сначала составляй план, потом пиши код
- Показывай diff изменений, не полные файлы целиком
- Указывай какие тесты нужно запустить после изменений
- Предупреждай если задача крупнее чем кажется

## Что нельзя делать (из правил команды)
- Не хардкодить секреты и credentials
- Не менять структуру папок без обсуждения
- Не изменять миграции уже применённые на prod
- Не публиковать порты 80/443 (только Caddy)
- Не трогать .env.production файлы

## Мои частые задачи
- Создать новый Laravel endpoint: [наш стандартный паттерн]
- Создать Vue компонент: Composition API + TypeScript
- Написать Pest тест: Feature тест для API endpoint
- Исправить N+1: добавить eager loading через with()

## Ссылки
- Проектный CLAUDE.md: [путь]
- Обучающий сайт: https://claude.rosveb.ru
- Командные промпты: docs/cc-prompts/
- Наш стек docs: docs/architecture.md
💡
Тонкость для опытных: CLAUDE.md — живой документ, а не разовая настройка. Опытные разработчики обновляют его после каждой значимой сессии: добавляют правила которые сработали, убирают устаревшие ограничения, уточняют стек. Хорошей практикой является добавить в конец файла секцию «Что сработало недавно» — она напомнит Claude о паттернах которые оказались удачными в предыдущих сессиях.

🚨 Топ-10 ошибок новичков с CC

#1
Принимать код CC без проверки
CC иногда ошибается — особенно в деталях: неправильный импорт, устаревший синтаксис, несовместимый API. Новичок видит "красивый код" и сразу коммитит. Потом непонятные баги.
всегда запускай тесты и проверяй в браузере. CC — помощник, решение принимаешь ты.
#2
Слишком широкие промпты
"Создай мне весь backend для нашего SaaS" — CC напишет что-то, но не то что вам нужно. Без контекста о вашей архитектуре, стиле, ограничениях результат будет generic.
декомпозируйте задачу. Лучше 10 конкретных промптов, чем 1 широкий.
#3
Не читать командный CLAUDE.md
Без знания правил команды CC будет нарушать архитектурные соглашения, использовать неправильный стиль, игнорировать специфику проекта. Всё придётся переделывать.
прочитай CLAUDE.md проекта полностью в первый день. Это 15 минут, которые сэкономят часы.
#4
Использовать CC как поисковик
"Как работает Promise?" "Что такое Docker volume?" — CC ответит, но это не лучший путь. Теряется время, контекст расходуется на знания, а не на задачу.
общие знания — Google/документация. CC — для конкретных задач вашего проекта.
#5
Игнорировать потерю контекста
В длинной сессии CC постепенно "забывает" начало разговора. Новичок продолжает задавать вопросы, но CC отвечает без учёта предыдущего контекста. Несогласованные ответы.
используй /compact регулярно. Начинай новую сессию CC для новой задачи. Держи контекст коротким.
#6
Просить CC исправить ошибку без контекста
"Вот ошибка, исправь" без стектрейса, без кода, без описания что происходит. CC угадывает и часто угадывает неправильно.
давайте полный контекст: стектрейс + файл + что вы ожидали + что получили. CC тогда даёт точный ответ.
#7
Просить CC написать весь файл целиком при каждом изменении
Регенерация 200-строчного файла ради добавления одной функции. Дорого по токенам, риск потерять ваши ручные правки, медленно.
"Добавь метод X в класс Y. Покажи только изменённую часть."
#8
Не использовать CC для дебаггинга
Новички часто тратят часы на баг самостоятельно, боясь "что CC не поможет". CC отлично справляется с дебаггингом если дать полный контекст.
"Я потратил 20 минут и не могу найти проблему. Помоги разобраться." — это нормальный промпт.
#9
Не обновлять CLAUDE.md когда находишь правила
Нашли важное правило в коде ревью? Научились от CC новому паттерну? Не записываете в CLAUDE.md — значит следующий раз снова будете объяснять CC то же самое.
CLAUDE.md — живой документ. Обновляйте его каждый раз когда узнаёте что-то важное о проекте.
#10
Ожидать что CC знает текущее состояние вашего кода
"Добавь метод как мы делали вчера" — CC не помнит вчера. Каждая сессия начинается с нуля (если не использовать memory). Без контекста — нерелевантный ответ.
всегда давайте CC нужный контекст: "вот наш паттерн из файла X, сделай аналогично для Y".

📖 Как читать чужой CLAUDE.md

Попали в новый проект и открыли CLAUDE.md команды. Что искать в первую очередь:

1. Архитектурные решения (читать в первую очередь)
Как организован код — папки, модули, слои (Controller → Service → Repository)
Паттерны: DDD, MVC, микросервисы, монолит. Каждый влияет на то где писать логику
Запрещённые подходы: "не использовать статичные методы", "не писать бизнес-логику в controllers"
2. Стек и версии
Точные версии фреймворков — Laravel 11 vs 10 имеет значимые различия в API
Какие библиотеки уже используются — не изобретать велосипед, использовать то что есть
Что запрещено использовать и почему (часто причина инфраструктурная или историческая)
3. Важные ограничения
Безопасность: multi-tenancy, JWT настройки, роли и права
Производительность: лимиты запросов, N+1 правила, кеширование
Инфраструктура: какие порты заняты, как настроен прокси, Docker сети
4. Командные соглашения
Именование: файлов, классов, переменных, SQL полей, API роутов
Язык кода: русские комментарии или английские, какой язык в промптах
Git соглашения: формат commit messages, ветки, PR правила

📄 Командные соглашения: шаблон rules/ структуры

Tech Lead создаёт структуру командных правил. CC читает эти файлы из CLAUDE.md через импорты.

rules/
├── architecture.md      # DDD структура, слои, паттерны
├── security.md          # Tenant isolation, secrets, auth
├── coding-style.md      # Именование, PSR-12, Prettier
├── database.md          # Migrations, индексы, N+1 запреты
├── testing.md           # Pest конвенции, coverage требования
├── git.md               # Ветки, commits, PR процесс
├── api.md               # REST контракты, versioning, errors
└── performance.md       # Query limits, кеш, lazy loading
# Проект: [Название]

## Архитектура и правила
@rules/architecture.md
@rules/security.md
@rules/coding-style.md
@rules/database.md

## Тестирование
@rules/testing.md

## Процессы команды
@rules/git.md
@rules/api.md

## Инфраструктура
- OS: Windows Server 2025 + WSL2 + Docker
- Proxy: Caddy (не публикуем 80/443, только proxy-сеть)
- PostgreSQL: shared_buffers=4GB, work_mem=64MB
- Reverse proxy добавление: proxy add domain.ru container:port

## Контекст проекта
[описание продукта и целей]

## Стек
- Backend: Laravel 11 (PHP 8.3 + Octane)
- Frontend: Nuxt 3 (Vue 3 + TypeScript)
- DB: PostgreSQL 16 + Redis 7
- Tests: Pest v2 + Vitest
- CI/CD: GitHub Actions
# Безопасность

## Tenant Isolation (КРИТИЧЕСКИ ВАЖНО)
- ВСЕ запросы к БД ДОЛЖНЫ фильтроваться по tenant_id
- Используй TenantScope global scope или явный ->where('tenant_id', ...)
- Policy классы всегда проверяют tenant владения
- Тест: создай два tenant, убедись что данные изолированы

## Secrets и Credentials
- НИКОГДА не хардкодить секреты в код
- Все чувствительные данные через .env
- .env файлы в .gitignore (кроме .env.example)
- Production secrets в GitHub Secrets или Vault

## Authentication
- API: Laravel Sanctum (не JWT самодельный)
- Token lifetime: 7 дней по умолчанию
- Refresh tokens: реализованы в AuthService
- Проверка прав: Policy классы, не if-else в controller

## Webhooks
- Stripe: обязательно Webhook::constructEvent() верификация
- ЮKassa: проверка IP адресов из официального списка
- Логируй все webhook события в webhook_logs таблицу

📊 Прогресс-трекер навыков CC

Таблица для оценки текущего уровня и понимания что развивать дальше.

Навык Базовый Средний Эксперт
Написание промптов Базовый Простые вопросы и задачи Средний Контекстные промпты с примерами и ограничениями Эксперт Шаблоны промптов, цепочки, метапромпты
CLAUDE.md Базовый Базовый CLAUDE.md с описанием проекта Средний Правила, запреты, импорт из rules/ Эксперт Командный шаблон, обновление по результатам
MCP инструменты Базовый Знает что такое MCP, использует базовые Средний Настраивает MCP серверы, использует Figma MCP Эксперт Пишет свои MCP инструменты для команды
Управление контекстом Базовый Знает о длине контекста, использует /compact Средний Грамотно дозирует контекст, чистит лишнее Эксперт Context engineering, оптимизация под задачи
Git + CC workflow Базовый Одна ветка + CC для задач Средний Git worktrees, параллельные задачи Эксперт Multi-agent, автоматизация через hooks
Code review с CC Базовый Просит CC проверить свой код Средний CC делает self-review перед PR Эксперт Автоматическое ревью через hooks + CI
Отладка через CC Базовый Даёт ошибку, CC предлагает решение Средний Структурированный контекст для CC, быстрый поиск причины Эксперт CC отлаживает производительность, сложные баги
Тестирование через CC Базовый CC пишет простые unit тесты Средний TDD с CC, edge cases, тесты безопасности Эксперт Автоматическая генерация тестов для всего проекта
Архитектурные решения Базовый Следует существующей архитектуре Средний Обсуждает архитектуру с CC, выбирает паттерны Эксперт CC как архитектурный советник, проектирует системы
Onboarding других Базовый Сам разобрался, другие — не его задача Средний Помогает коллегам разобраться с CC Эксперт Пишет командные CLAUDE.md, создаёт обучение

🤝 Менторство через CC: старший помогает новичку

Как старший разработчик использует CC для обучения новичков без постоянного присутствия.

📚 Парная работа через CC
  • Новичок формулирует задачу — ментор помогает улучшить промпт
  • CC генерирует решение — ментор объясняет почему CC так сделал
  • Обсуждение альтернатив: "а что если попросить CC иначе?"
  • Разбор ошибок CC вместе — учит критическому мышлению
📋 Задание через CC
  • Ментор описывает задачу в CLAUDE.md временно
  • Новичок решает с CC, ментор проверяет результат
  • CC знает о задаче и направляет без ментора
  • Новичок учится ставить задачи через CLAUDE.md
🔍 Code Review через CC
  • Новичок делает PR → CC проводит self-review
  • Ментор видит что CC нашёл и что пропустил
  • Обсуждение: "CC прав? Почему? Что ещё важно?"
  • Постепенно новичок начинает сам находить проблемы
🧩 Обучение паттернам
  • "Попроси CC объяснить Repository паттерн на примере нашего кода"
  • CC объясняет с примерами из реального проекта
  • Новичок сразу видит применение, не абстрактный пример
  • Ментор уточняет и добавляет нюансы нашего проекта
📝 Документирование через CC
  • Новичок изучил модуль — просит CC помочь задокументировать
  • Документация фиксирует понимание и видна менторе
  • Ошибки в документации = ошибки в понимании — легко найти
  • Формирует привычку документировать всё через CC
⚡ Асинхронное менторство
  • Ментор записывает в CLAUDE.md типичные вопросы новичков
  • CC отвечает на эти вопросы даже когда ментора нет
  • Новичок работает самостоятельно, ментор проверяет раз в день
  • Эффективно: ментор не отвлекается постоянно
Я новый разработчик в команде. Ментор попросил меня разобраться с модулем Billing.

Помоги мне понять:
1. Как работает наш BillingService? Объясни простыми словами
2. Что делает TenantBillingScope и зачем он нужен?
3. Как данные идут от создания подписки до записи в БД?
4. Что может пойти не так в этом модуле?

Покажи примеры на основе реального кода из файла app/Domains/Billing/

После объяснения задай мне 3 вопроса чтобы проверить понимание.
Главный принцип онбординга: CC не заменяет ментора — он умножает его эффективность. Ментор задаёт направление и стандарты, CC помогает новичку двигаться быстро и самостоятельно. Инвестиция в хороший командный CLAUDE.md окупается с первого нового разработчика.