Files
santifer--career-ops/modes/ua/_shared.md
T
wehub-resource-sync d083df1fdb
CodeQL Analysis / Analyze (javascript-typescript) (push) Failing after 2s
Web CI / web typecheck + build (push) Failing after 1s
Release Please / release-please (push) Failing after 1s
CodeQL Analysis / Analyze (go) (push) Failing after 16s
chore: import upstream snapshot with attribution
2026-07-13 12:02:43 +08:00

274 lines
25 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Спільний контекст — career-ops (Українська)
<!-- ============================================================
ЦЕ — СИСТЕМНИЙ AUTO-UPDATABLE ФАЙЛ.
НЕ додавайте сюди персональні дані.
============================================================
Персоналізація → modes/_profile.md та config/profile.yml.
Цей файл містить спільний контекст, архетипи та правила
для україномовних режимів.
Примітка: modes/ua/ поки не включено до auto-update
(update-system.mjs). Оновлення застосовуються вручну.
Перед використанням career-ops переконайтеся:
1. config/profile.yml заповнений вашими даними
2. cv.md створений у корені проєкту (резюме в Markdown)
3. (Опціонально) article-digest.md з proof points
============================================================ -->
## Джерела правди
| Файл | Шлях | Коли |
| ----------------- | ---------------------------- | ---------------------------------------------------- |
| cv.md | `cv.md` (корінь проєкту) | ЗАВЖДИ |
| article-digest.md | `article-digest.md` (якщо є) | ЗАВЖДИ (детальні proof points) |
| profile.yml | `config/profile.yml` | ЗАВЖДИ (ідентичність кандидата і цільові ролі) |
| \_profile.md | `modes/_profile.md` | ЗАВЖДИ (користувацькі архетипи, наратив, переговори) |
**ПРАВИЛО: НІКОЛИ не хардкодити метрики з proof points.** Читати їх з cv.md + article-digest.md під час оцінки.
**ПРАВИЛО: Для метрик статей/проєктів `article-digest.md` має пріоритет над `cv.md`.**
**ПРАВИЛО: Читати `_profile.md` ПІСЛЯ цього файлу. Користувацькі налаштування в `_profile.md` перезаписують значення за замовчуванням.**
---
## Система оцінювання
Оцінка використовує 6 блоків (A-F) з глобальним балом 1-5:
| Вимір | Що оцінює |
| ------------------------ | ------------------------------------------------------------ |
| Збіг з CV | Навички, досвід, proof points alignment |
| Відповідність North Star | Наскільки роль збігається з цільовими архетипами кандидата |
| Компенсація | Зарплата vs ринок (5 = верхній квартиль, 1 = значно нижче) |
| Культурні сигнали | Культура компанії, зростання, стабільність, віддалена робота |
| Red flags | Блокери, попередження (негативні коригування) |
| **Глобальний** | Зважене середнє |
**Інтерпретація балів:**
- 4.5+ → Сильний збіг, рекомендується відгукнутися одразу
- 4.0-4.4 → Гарний збіг, варто відгукнутися
- 3.5-3.9 → Нормально, але не ідеально; відгукуватися лише за наявності конкретної причини
- Нижче 3.5 → Наполегливо рекомендується не відгукуватися (див. Ethical Use в CLAUDE.md)
## Легітимність вакансії (Блок G)
Блок G оцінює, чи є вакансія реальною і активною. НЕ впливає на глобальний бал 1-5 — це окрема якісна оцінка.
**Три рівні:**
- **Висока впевненість** — Реальна, активна вакансія (більшість сигналів позитивні)
- **Обережно** — Змішані сигнали, варто зазначити (деякі занепокоєння)
- **Підозріло** — Множинні індикатори ghost-вакансії, користувач має перевірити спочатку
**Ключові сигнали (зважені за надійністю):**
| Сигнал | Джерело | Надійність | Примітки |
| --------------------------- | ---------------- | ---------- | -------------------------------------------------------------------------------- |
| Вік публікації | Знімок сторінки | Висока | До 30 днів = добре, 30-60 = змішано, 60+ = тривожно (з поправкою на тип ролі) |
| Кнопка Apply активна | Знімок сторінки | Висока | Прямий спостережуваний факт |
| Технічна конкретика в JD | Текст JD | Середня | Загальні JD корелюють з ghost-вакансіями, але можуть бути просто погано написані |
| Реалістичність вимог | Текст JD | Середня | Суперечності — сильний сигнал, розмитість — слабший |
| Новини про скорочення | WebSearch | Середня | Враховувати відділ, час і розмір компанії |
| Повторна публікація | scan-history.tsv | Середня | Та сама роль 2+ рази за 90 днів — тривожно |
| Прозорість зарплати | Текст JD | Низька | Залежить від юрисдикції, багато легітимних причин не вказувати |
| Відповідність роль-компанія | Якісна оцінка | Низька | Суб'єктивно, використовувати лише як допоміжний сигнал |
**Етичний підхід (ОБОВ'ЯЗКОВИЙ):**
- Це допомагає користувачам пріоритизувати час на реальні можливості
- НІКОЛИ не представляти висновки як звинувачення в нечесності
- Представити сигнали і дозволити користувачу вирішити
- Завжди зазначати легітимні пояснення для тривожних сигналів
---
## Визначення архетипу
Класифікувати кожну вакансію в один з типів (або гібрид 2-х):
### Універсальні архетипи
| Архетип | Ключові сигнали в JD |
| ---------------------------------- | ------------------------------------------------------------------ |
| **AI Platform / LLMOps Engineer** | "observability", "evals", "pipelines", "monitoring", "reliability" |
| **Agentic Workflows / Automation** | "agent", "HITL", "orchestration", "workflow", "multi-agent" |
| **Technical AI Product Manager** | "PRD", "roadmap", "discovery", "stakeholder", "product manager" |
| **AI Solutions Architect** | "architecture", "enterprise", "integration", "design", "systems" |
| **AI Forward Deployed Engineer** | "client-facing", "deploy", "prototype", "fast delivery", "field" |
| **AI Transformation Lead** | "change management", "adoption", "enablement", "transformation" |
### Архетипи для українського ринку
| Архетип | Ключові сигнали в JD |
| ----------------------------------- | -------------------------------------------------------------------- |
| **Backend Developer** | Node.js/Java/Go/Python, мікросервіси, highload, PostgreSQL, Kafka |
| **Frontend Developer** | React/Vue/Angular, TypeScript, performance, accessibility |
| **Full-Stack Developer** | TypeScript, React + Node/Python, API design, DevOps basics |
| **DevOps/SRE-engineer** | Kubernetes, CI/CD, моніторинг, автоматизація інфраструктури, AWS/GCP |
| **QA-engineer / SDET** | Автоматизація тестування, CI/CD, навантажувальне тестування |
| **Data Engineer / ML Engineer** | ETL, Spark, Airflow, ML pipelines, feature stores |
| **Product Manager** | Discovery, delivery, метрики, roadmap, стейкхолдери |
| **Tech Lead / Engineering Manager** | People management, tech strategy, delivery, найм |
| **Solution Architect** | Системний дизайн, інтеграції, масштабування, стандарти |
Після визначення архетипу — читати `modes/_profile.md` для специфічного фреймінгу та proof points кандидата.
### Адаптивний фреймінг за архетипом
> **Конкретні метрики: читати під час оцінки з `cv.md` та `article-digest.md`. НІКОЛИ не хардкодити.**
| Якщо роль... | Підкреслити про кандидата... | Джерела proof points |
| ------------------------- | ----------------------------------------------------- | ------------------------- |
| Platform / LLMOps | Production systems, observability, evals, reliability | article-digest.md + cv.md |
| Agentic / Automation | Multi-agent orchestration, HITL, fault tolerance | article-digest.md + cv.md |
| Technical AI PM | Product discovery, PRD, metrics, delivery | cv.md + article-digest.md |
| Solutions Architect | System design, integrations, enterprise-ready | article-digest.md + cv.md |
| Forward Deployed Engineer | Fast delivery, client-facing, prototype → prod | cv.md + article-digest.md |
| Backend | Highload, microservices, scaling, distributed systems | cv.md |
| DevOps/SRE | Infrastructure, CI/CD, monitoring, automation | cv.md |
| Tech Lead / EM | Leadership, hiring, tech strategy, delivery | cv.md |
---
## Специфіка українського ринку 🇺🇦
### Компенсація
- **Валюта**: Українське ІТ працює переважно в **USD**. Зарплати майже завжди обговорюються й виплачуються в доларах (навіть для ФОП). Для не-ІТ позицій — гривні (₴ / UAH).
- **Gross vs Net**: Для ФОП (найпоширеніша форма в ІТ) — зазвичай обговорюється net-сума, податки — відповідальність ФОП. Для штатних — уточнити: `gross` чи `на руки (net)`. ПДФО: 18% + військовий збір 5% (станом на 2024+).
- **Джерела даних**: DOU.ua/salaries (основне), djinni.co/salaries, Glassdoor, Levels.fyi (для міжнародних), Blind.
- **Бонуси**: Рідкість в українському ІТ. Частіше — перегляд зарплати раз на рік. Деякі продуктові компанії мають квартальні бонуси.
### Оформлення трудових відносин
| Тип | Опис | Вплив на оцінку |
| --------------------- | ------------------------------------------------------------------------------------ | ---------------------------------------- |
| **ФОП 3-тя група** | Фізична особа-підприємець, 3-тя група (5% єдиний податок). Стандарт в українському ІТ | Нейтрально (де-факто норма) |
| **ФОП + Дія City** | ФОП через резидента Дія City. Гіг-контракт зі спеціальним захистом | +0.1 до стабільності (додатковий захист) |
| **КЗпП (штат)** | Оформлення за Кодексом законів про працю. Максимальний захист | +0.3 до стабільності |
| **ГПД** | Цивільно-правовий договір. Мінімальний захист | -0.2 до стабільності |
| **B2B (міжнародний)** | Контракт з іноземною компанією через ФОП | Нейтрально (стандарт для remote) |
> **Дія City** — спеціальний правовий режим для ІТ-компаній в Україні. Гіг-контракт через Дія City надає працівникам додатковий захист (оплачувана відпустка, лікарняні, захист від звільнення) при збереженні податкових переваг ФОП.
### Податки (для ФОП 3-тя група — ІТ)
- **Єдиний податок**: 5% від доходу
- **ЄСВ** (єдиний соціальний внесок): мінімальний розмір (~1760 грн/міс станом на 2024)
- **Для штатних**: ПДФО 18% + військовий збір 5% + ЄСВ (сплачує роботодавець)
- **Дія City (гіг-спеціалісти)**: 5% ПДФО + 1.5% військовий збір
### Бенефіти (типові для українського ІТ)
- **Медичне страхування** — стандарт у компаніях з 50+ людей
- **Стоматологія** — розширений пакет, хороший сигнал
- **Бюджет на навчання** — конференції, курси, сертифікації ($500-2000/рік)
- **Англійська мова** — корпоративні курси (дуже поширено)
- **Спорт** — компенсація або корпоративний абонемент
- **Обладнання** — ноутбук + монітор (часто залишається після звільнення)
- **Коворкінг** — компенсація для remote-працівників
- **Психологічна підтримка** — стало стандартом після 2022 року
### Трудове право (КЗпП)
- **Випробувальний термін**: до 3 місяців (до 6 для керівників)
- **Відпустка**: мінімум 24 календарні дні за КЗпП
- **Лікарняний**: оплачується з фонду соціального страхування + доплата роботодавця
- **Звільнення**: відпрацювання 2 тижні (за угодою сторін — без відпрацювання)
- **Для ФОП**: жодних гарантій за КЗпП — все визначається контрактом
### Ринок праці (особливості)
- **DOU.ua** — головна платформа для українських ІТ-спеціалістів (вакансії, зарплати, спільнота)
- **Djinni.co** — анонімний пошук роботи, кандидат приховує профіль
- **robota.ua**, **work.ua** — загальні портали (не тільки ІТ)
- **LinkedIn** — основний канал для міжнародних позицій
- **Більшість вакансій — remote/hybrid** після 2022 року
- **Англійська — обов'язкова** для більшості ІТ-позицій (B2+)
- **Українські компанії часто наймають глобально** — конкуренція з кандидатами з інших країн
- **Релокація**: багато українських спеціалістів працюють з-за кордону — уточнювати timezone-вимоги
---
## Глобальні правила
### НІКОЛИ
1. Вигадувати досвід або метрики
2. Модифікувати cv.md або файли портфоліо
3. Надсилати відгуки від імені кандидата
4. Ділитися телефоном у генерованих повідомленнях
5. Рекомендувати компенсацію нижче ринку
6. Генерувати PDF без попереднього читання JD
7. Використовувати канцелярит і корпоративну мову
8. Ігнорувати трекер (кожна оцінена вакансія реєструється)
### ЗАВЖДИ
0. **Супровідний лист:** Якщо форма дозволяє, ЗАВЖДИ включати. Той самий дизайн, що й CV. Цитати з JD, прив'язані до proof points. Максимум 1 сторінка.
1. Читати cv.md, \_profile.md та article-digest.md (якщо є) перед оцінкою
1b. **Перша оцінка в сесії:** Запустити `node cv-sync-check.mjs`. Якщо є попередження — повідомити користувача.
2. Визначити архетип ролі та адаптувати фреймінг за \_profile.md
3. Цитувати точні рядки з CV при збігу
4. Використовувати WebSearch для дослідження компенсації та даних про компанію
5. Реєструвати в трекері після оцінки
6. Генерувати контент мовою JD (UA за замовчуванням для україномовних вакансій, EN для англомовних)
7. Бути прямим і конкретним — без води
8. Для україномовних вакансій: технічна українська, короткі речення.
8b. URL-и кейсів у Professional Summary PDF (рекрутер може прочитати тільки це).
9. **Додавання до трекера як TSV** — не додавати НОВІ записи в `data/applications.md` напряму; для нових записів писати TSV у `batch/tracker-additions/` і робити merge. Пряме редагування існуючих рядків допустиме для оновлення `status`/`notes`.
10. **Включати `**URL:**` в заголовок кожного звіту.**
### Інструменти
| Інструмент | Застосування |
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| WebSearch | Дослідження компенсації, тренди, культура компанії, контакти в LinkedIn, fallback для JD |
| WebFetch | Fallback для отримання JD зі статичних сторінок |
| Playwright | Верифікація вакансій (browser_navigate + browser_snapshot). **НІКОЛИ 2+ агентів з Playwright паралельно.** |
| Read | cv.md, \_profile.md, article-digest.md, cv-template.html |
| Write | Тимчасовий HTML для PDF, data/applications.md, звіти .md |
| Edit | Оновлення трекера |
| Canva MCP | Опціональна генерація візуального CV. Дублювати базовий дизайн, редагувати текст, експортувати PDF. Потребує `canva_resume_design_id` в profile.yml. |
| Bash | `node generate-pdf.mjs` |
### Пріоритет швидкості
- Робоче демо + метрики > перфекціонізм
- Відгукнутися раніше > вивчити більше
- Підхід 80/20, таймбоксити все
---
## Professional Writing та ATS-сумісність
Ці правила застосовуються до ВСЬОГО генерованого тексту для кандидата: PDF-резюме, буллети, супровідні листи, відповіді у формах, повідомлення в LinkedIn. НЕ застосовуються до внутрішніх звітів оцінки.
### Уникати кліше
- "Я захоплений..." / "Passionate about..." / "результат-орієнтований" / "results-driven"
- "великий досвід" / "extensive experience" / "proven track record"
- "Задіяв" / "Leveraged" (називати конкретний інструмент)
- "Очолив" / "Spearheaded" (використовувати "керував" / "led" або "запустив" / "launched")
- "Забезпечив взаємодію" / "Facilitated collaboration" (використовувати "організував" / "set up")
- "Синергія" / "Synergy" / "комплексний" / "comprehensive" / "інноваційний" / "innovative"
- "У сучасному швидкоплинному світі" / "In today's fast-paced environment"
- "продемонстрована здатність" / "demonstrated ability to" / "best practices" (назвати конкретну практику)
### Юнікод-нормалізація для ATS
`generate-pdf.mjs` автоматично нормалізує em-dash, розумні лапки та zero-width символи в ASCII для максимальної ATS-сумісності. Але краще не генерувати їх взагалі.
### Різноманітність структури речень
- Не починати кожен буллет одним і тим самим дієсловом
- Чергувати довжину речень (коротко. Потім довше з контекстом. Знову коротко.)
- Не завжди використовувати "X, Y та Z" — іноді два пункти, іноді чотири
### Конкретика замість абстракцій
- "Знизив p95 latency з 2.1с до 380мс" краще, ніж "покращив продуктивність"
- "Postgres + pgvector для пошуку по 12к документів" краще, ніж "спроєктував масштабовану RAG-архітектуру"
- Називати інструменти, проєкти та клієнтів, коли дозволено