Files
career-ops-vbleroy/reports/028-selecty-2026-07-07.md
redlineo d295c7f139
Release Please / release-please (push) Failing after 4m2s
Web CI / web typecheck + build (push) Successful in 3m39s
CodeQL Analysis / Analyze (javascript-typescript) (push) Failing after 1h1m49s
CodeQL Analysis / Analyze (go) (push) Failing after 1h1m49s
init
2026-07-13 10:14:00 +03:00

135 lines
20 KiB
Markdown
Raw Permalink 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.
# Оценка: Selecty — Senior Frontend Developer (Vue.js/Nuxt.js)
**Дата:** 2026-07-07
**Архетип:** Frontend Developer (Vue.js) — primary archetype, но заявленный уровень Senior
**Балл:** 2.0/5
**URL:** https://hh.ru/vacancy/134186766
**PDF:** не создан (балл < 3.0)
**Legitimacy:** High Confidence
---
## A) Резюме роли
| Параметр | Значение |
|---|---|
| Архетип | Frontend Developer (Vue.js) |
| Domain | IT-аутстаффинг/подбор персонала — Selecty размещает специалистов на клиентских проектах (не собственный продукт) |
| Function | Build (конкретный клиентский проект не назван в JD) |
| Seniority | Senior, явно заявлено "5 лет опыта Frontend-разработки" |
| Формат работы | Полностью удалённо |
| Размер команды | Не указан |
| Оформление | Не указано явно в JD |
| Зарплата | Не указана |
| TL;DR | Полностью удалённая Senior-роль на Vue/Nuxt через аутстаффинг-агентство — стек совпадает почти идеально, но два заявленных требования (5 лет опыта и английский B2+) — жёсткие несовпадения с текущим профилем кандидата. |
## B) Совпадение с CV
| Требование JD | Совпадение в CV |
|---|---|
| 5 лет опыта Frontend-разработки | ❌ **Пробел.** У кандидата ~1 год 8 месяцев непрерывного коммерческого опыта (с ноября 2024, «Здравсервис») + 10 месяцев заказной разработки в 2022 (ТулГУ) — итого не более ~2.5 лет суммарно, и точно не 5 лет в описанном формате |
| Vue 2/3 и Nuxt 2/3 коммерческий опыт | ⚠️ Vue 3 — прямое, сильное совпадение («Здесь ЕКОМ», «РМК»). **Nuxt — не в коммерческом стеке**; в CV указано только как «быстро осваиваю: Nuxt» (самозаявленная способность к обучению, не опыт) |
| JavaScript (ES6+) и TypeScript | ✅ Прямое совпадение — стек ЕКОМ включает TypeScript |
| Pinia state management | ✅ Прямое совпадение — Pinia в стеке ЕКОМ |
| REST API интеграция | ✅ Прямое совпадение (раздел «Сеть») |
| Unit- и E2E-тесты | ✅ Vitest (unit), Storybook, Playwright (E2E на РМК) |
| HTML/CSS, responsive, accessibility | ⚠️ Частичное — HTML5/CSS3 есть, но accessibility explicitly не упоминается в CV |
| **Английский B2+ (обязательно)** | ❌ **Пробел.** В CV указан уровень B1 |
**Пробелы:**
1. **Стаж (5 лет vs ~2.5 года суммарно, ~1.7 непрерывного)** — это hard blocker, явно сформулированный как численное требование в заголовке JD, а не косвенное ожидание.
- Может ли кандидат продемонстрировать смежный опыт? Частично — ведёт 3 продукта параллельно (ЕКОМ с нуля, РМК legacy, «Здесь Аптека»), это компенсирует "широтой", но не заменяет заявленные годы формально.
- План закрытия: явно называть масштаб ответственности вместо стажа, но не переименовывать себя в "Senior" в откликах — это создаёт риск отказа на скрининге ATS/рекрутера ещё до интервью.
2. **Английский B2+ (обязательно)** — hard blocker. У кандидата B1. Это стоит в JD как категоричное "mandatory" требование, не nice-to-have.
- Стратегия закрытия: нет быстрого решения за счёт CV — либо кандидат подтягивает английский до отклика (не быстрый путь), либо не подаётся на эту конкретную роль.
3. **Nuxt в коммерческом проекте** — nice-to-have судя по формулировке ("Vue 2/3 **и** Nuxt 2/3"), но указано наравне с Vue, что говорит о реальной важности для клиентского проекта. Смежный опыт есть (Vite, Vue Router, SSR-подобные паттерны в CV не описаны явно) — риск средний, не критичный сам по себе.
## C) Уровень и стратегия
**Уровень в JD:** Senior, 5 лет опыта (жёстко заявлено).
**Естественный уровень кандидата для архетипа Frontend (Vue.js):** Junior→Middle (переходный) по стажу, но с продакшн-масштабом задач выше типичного для этого стажа (greenfield-продукт с нуля, RBAC-дизайн).
**План "продать senior без обмана":** Вести с масштабом ответственности («спроектировала с нуля фронтенд системы для сети ~1200 аптек, включая архитектурное решение по RBAC») — но **не рекомендуется в принципе продавать эту роль как достижимую** при двух явных hard-блокерах (стаж + английский обязательный). Честная позиция: заявленные требования не соответствуют профилю, и попытка "продать" опыт при явном mandatory-требовании по английскому создаёт риск потери времени кандидата и рекрутера.
**План "если понизят уровень":** Маловероятен здесь — это не типичная вакансия с гибким грейдом, а конкретное численное требование от аутстаффинг-агентства под клиентский заказ (клиент диктует требования к специалисту). Понижение грейда для агентства менее вероятно, чем для продуктовой компании.
## D) Компенсация и спрос
Зарплата не раскрыта в JD. Рыночные данные (WebSearch, RU, июль 2026):
| Источник | Данные |
|---|---|
| Общие обзоры Senior Vue-разработчиков (Москва/СПб, 2026) | 480 000–650 000 ₽/мес — верхний диапазон для полностью удалённых Senior-ролей может быть ниже, если это аутстаффинг-ставка |
| Полностью удалённые Senior-роли | Обычно оплачиваются по рынку "домашнего" региона компании, а не региона кандидата — в пользу кандидата из Тулы |
| Специфика аутстаффинга (Selecty) | Ставка зависит от конкретного клиентского проекта — по отзывам сотрудников, компенсация формально трудоустроена (ТК РФ), ДМС со стоматологией, но реальный доход "зависит от клиента и проекта" |
**Оценка:** Даже если гипотетическая вилка окладов привлекательна для Senior-роли, вопрос не в деньгах, а в том, что кандидат, вероятнее всего, не пройдёт скрининг по двум явным численным требованиям (стаж + английский) до обсуждения зарплаты.
## E) План персонализации
| # | Раздел | Текущее состояние | Предлагаемое изменение | Почему |
|---|--------|--------------------|--------------------------|--------|
| 1 | Summary | Общий акцент на Vue3 + Flutter dual-track | Если всё же решено откликаться — вести исключительно с Vue 3 + TS + Pinia, без Flutter | Роль чисто Frontend Vue/Nuxt, Flutter — шум |
| 2 | Nuxt | Не упомянут как коммерческий опыт | Явно указать "Vite, Vue Router — быстро осваиваю Nuxt" честно, не выдавать за коммерческий опыт | Не фабриковать опыт, которого нет |
| 3 | Английский | B1 в CV | Не скрывать и не завышать — указать B1 прямо, при необходимости предложить пройти техническое интервью на английском для демонстрации реального уровня | Скрытое несоответствие "mandatory"-требованию хуже честного B1 |
| 4 | Масштаб задач | RBAC упомянут как один из пунктов | Вынести RBAC-дизайн и параллельное ведение 3 продуктов как компенсацию за стаж | Единственный реальный аргумент против формального пробела по годам |
| 5 | hh.ru отклик | — | Сопроводительное письмо явно объясняет несоответствие по стажу/английскому и почему кандидат всё же интересен | Прозрачность снижает риск немедленного отказа на скрининге |
## F) План собеседований
| # | Требование JD | История STAR+R | S | T | A | R | Reflection |
|---|---|---|---|---|---|---|---|
| 1 | Vue 3 в продакшене, архитектурные решения | RBAC-модель в «Здесь ЕКОМ» | Бэкенд не имел готовой модели прав доступа между отделами | Спроектировать и объяснить ролевую модель авторизации | Использовала ИБ-образование, спроектировала роли/группы/права, презентовала бэкенд-команде | Внедрено разграничение по отделам (логистика/заказы) | Нестандартный бэкграунд (ИБ) — реальное конкурентное преимущество, не просто "интересный факт" |
| 2 | Тестирование (unit/E2E) | Внедрение Playwright E2E на РМК | Legacy-проект без автотестов, регрессии находили вручную | Внедрить E2E-покрытие на критичных сценариях | Настроила Playwright, начала покрытие позитивных/негативных сценариев | Процесс тестирования на этапе внедрения, снижение ручной регрессии | Внедрение тестов в legacy — сложнее, чем в greenfield, требует приоритизации рисковых зон |
| 3 | Код-ревью, best practices | Feature Branching + обучение коллеги | Хаотичные релизы, "зависшие" фичи | Внедрить Git Flow и обучить команду | Обучила коллегу с 11-летним стажем, ввела процесс версионирования | Команда перешла на стабильные еженедельные релизы | Мягкие навыки (обучение старшего коллеги) не менее значимы, чем код |
| 4 | Диагностика продакшн-багов | Баг «Избранное» не открывалось | Жалобы пользователей, товары грузились одним запросом | Найти причину без готового отчёта от QA | Диагностировала проблему, реализовала постраничную загрузку | Жалобы прекратились | Проактивный дебаг до эскалации — ценно для распределённой команды |
| 5 | REST API / real-time интеграция | WebSocket-оповещения в РМК | Не было видимости, сколько аптек онлайн в реальном времени | Внедрить real-time канал оповещений | Реализовала WebSocket (WSS) с отметкой прочтения | Видимость статуса ~1200 аптек в реальном времени | Реальная система масштаба, close к enterprise-требованиям |
| 6 | Cross-team collaboration (с дизайнерами/бэкендом) | Редизайн кнопки «Избранное» и блока информации о заказе | Не было дизайнера, UI была неудобной | Взять на себя UI-проектирование и согласовать с командой | Самостоятельно спроектировала и внедрила изменения | Улучшенная эргономика интерфейса | Готовность закрывать пробел роли (дизайн) — сигнал проактивности |
**Рекомендуемый кейс:** «Здесь ЕКОМ» (RBAC + масштаб greenfield-продукта) — единственный проект, реально компенсирующий пробел по стажу для Senior-планки.
**Вопросы-ловушки:**
- «У вас 5 лет опыта, как заявлено в резюме?» → Не заявлять 5 лет. Честно: «около 2 лет коммерческого опыта, но веду 3 параллельных продукта, один — с нуля, включая архитектурное решение уровня выше типичного для этого стажа».
- «Какой у вас уровень английского?» → «B1, работаю над улучшением. Готова пройти техническое интервью на английском, чтобы показать реальный уровень понимания технической документации».
- «Есть ли коммерческий опыт с Nuxt?» → «Нет прямого коммерческого опыта, но уверенно работаю с Vite/Vue Router и быстро осваиваю новые фреймворки в экосистеме Vue — готова показать это на тестовом задании».
---
## Vibe команды
Судя по формулировкам JD, упоминаются код-ревью, cross-team collaboration с дизайнерами и бэкенд-разработчиками, а также "коммуникация рисков по срокам" — это скорее сигнал зрелого инженерного процесса, чем описание конкретной командной культуры. Прямых упоминаний автономии, менторства или гибкого графика нет. Стоит учитывать, что Selecty — аутстаффинг-агентство: реальная "вайб" команды будет зависеть от конкретного клиентского проекта, а не от самой компании-агентства — это стоит уточнять на собеседовании отдельно.
## G) Posting Legitimacy
**Assessment:** High Confidence
| Сигнал | Наблюдение | Вес |
|---|---|---|
| Свежесть | Опубликовано 6 июля 2026 (день перед оценкой) | Positive |
| Apply-кнопка | Активна, отклик доступен | Positive |
| Качество описания | Конкретный стек (Vue/Nuxt/TS/Pinia), чёткие требования, обязательный английский явно выделен | Positive |
| Компания | Selecty — аккредитованная IT-компания, номинант HR-Brand Award, рейтинг 4.7-4.69/5 на профильных площадках отзывов (Habr Career, Job True) | Positive |
| Бизнес-модель | Аутстаффинг — реальный проект/команда не названы в JD, что типично для этой модели найма, а не признак фиктивности | Neutral (контекстное объяснение, не red flag) |
| Reposting | По `data/scan-history.tsv` — первое появление этого URL в истории сканирования | Neutral |
**Context Notes:** Аутстаффинг-модель означает, что конкретный клиентский проект раскрывается только на этапе интервью — это нормальная практика для агентства, не признак ghost job.
---
## Извлечённые ключевые слова
Vue.js, Vue 3, Vue 2, Nuxt.js, Nuxt 2, Nuxt 3, Senior Frontend Developer, JavaScript ES6+, TypeScript, Pinia, REST API, unit-тесты, E2E-тесты, HTML5, CSS3, responsive design, accessibility, английский B2+, code review, cross-team collaboration, Core Web Vitals, Docker, удалённая работа, аутстаффинг
---
## Рекомендация
**Балл 2.0/5 — значительно ниже порога 4.0/5 (AGENTS.md, Ethical Use). Настоятельно рекомендуется не откликаться** в текущем виде:
1. Заявленный стаж (5 лет) — жёсткое числовое требование, кандидат не соответствует (~1.7-2.5 года).
2. Английский B2+ явно обозначен как **обязательный** — у кандидата B1, это второй независимый hard-блокер.
3. Nuxt указан как коммерческое требование наравне с Vue, у кандидата нет коммерческого опыта с ним.
4. Удалённый формат работы и стек Vue/TS/Pinia — единственные сильные плюсы, но они не перевешивают два независимых hard-блокера.
Если кандидат всё же хочет попробовать — рекомендуется отдельно поднять английский до подачи, а не подавать заявку в расчёте на "прокатит".