Введение: Почему джуны спорят с сеньорами и уверены, что правы?
Представьте: в вашу команду приходит новый джун-разработчик. Он только окончил курсы, прочитал пару книг по Python и с горящими глазами заявляет: «Я готов делать сложные проекты! Дайте мне задачу посерьёзнее!». Вы даёте ему поправить баг в legacy-коде… Через два часа он возвращается с гордым видом: «Починил! Всё было просто!». А через неделю выясняется, что его «фикс» сломал половину функционала. Знакомо?
Это классический пример эффекта Даннинга-Крюгера — когда новички переоценивают свои навыки, не осознавая, насколько их знания поверхностны. В этой статье разберём:
- Как эффект мешает карьере джунов.
- Почему сеньоры часто сомневаются в себе, хотя знают в 100 раз больше.
- Как выйти из «долины отчаяния» и вырасти до мидла.
Что такое эффект Даннинга-Крюгера? Простыми словами
Эффект Даннинга-Крюгера — это когда человек, обладая минимальными знаниями, считает себя экспертом. Чем меньше он знает, тем увереннее спорит с профессионалами. Как сказал Дэвид Даннинг: «Чтобы понять, насколько ты некомпетентен, нужны те самые знания, которых тебе и не хватает».
Пример из IT:
Джун проходит онлайн-курс по JavaScript. Он выучил синтаксис, написал несколько скриптов и думает: «Я уже программист!». Он берётся за задачу сделать SPA-приложение, но не знает, как работать с API, не понимает асинхронность, а про security даже не слышал. Результат: код работает только на его ноутбуке, а в продакшене всё падает.
Кривая Даннинга-Крюгера: 4 этапа, через которые проходят все джуны
Давайте визуализируем путь от «пика глупости» до «плато стабильности» на примере карьеры разработчика.
1. Пик глупости: «Я гений!»
Уровень знаний: 10%, уверенность: 90%.
Что происходит:
Джун освоил базовые навыки: пишет циклы, знает, что такое ООП, может собрать простой сайт. Ему кажется, что программирование — это легко. Он критикует код сеньоров («Зачем тут столько проверок? Я бы написал в две строки!») и обижается на замечания.
Пример:
Вася прошёл курс по React и решил, что Redux — это «устаревшая фигня». Он пишет состояние приложения через useState, даже не пытаясь оптимизировать рендеринг. Когда приложение начинает тормозить, Вася винит «кривые браузеры», а не свой код.
Почему это опасно:
Новичок не видит своих ошибок, не учится на них и застревает в иллюзии компетентности.
Тут хорошо дополнит статья:
2. Долина отчаяния: «Я ничего не умею…»
Уровень знаний: 40%, уверенность: 20%.
Что происходит:
Джун сталкивается с реальными задачами: багами в продакшене, код-ревью с жёсткой критикой, необходимостью читать чужой код. Он понимает, что его знаний недостаточно, и теряет уверенность. Возникает страх: «А вдруг я не создан для программирования?».
Пример:
Маша, джун-тестировщик, впервые видит проект с микросервисами. Она не понимает, как искать баги в системе, где 20 компонентов взаимодействуют через брокер сообщений. Её самооценка падает, и она думает уйти из IT.
Как помочь:
На этом этапе критически важна поддержка ментора. Задача команды — показать, что «долина отчаяния» — это не конец, а старт роста.
3. Склон просветления: «Кажется, я начинаю понимать»
Уровень знаний: 60%, уверенность: 50%.
Что происходит:
Джун осознал свои пробелы и начал их заполнять. Он уже не лезет в споры, задаёт вопросы, изучает best practices. Уверенность растёт медленнее, чем знания, — это здоровый скепсис.
Пример:
Петя, джун-бекендер, после месяца работы с настоящим проектом понял, что его код на Python неэффективен. Он начал читать про алгоритмическую сложность, оптимизацию запросов к БД и переписал свой модуль, сократив время выполнения на 70%.
Лайфхак:
Лучший способ подняться по «склону» — делать петли обратной связи: код-ревью, ретроспективы, обсуждения архитектуры.
4. Плато стабильности: «Я знаю, что ничего не знаю»
Уровень знаний: 85%, уверенность: 70%.
Что происходит:
Разработчик становится мидлом. Он уверенно решает типовые задачи, но понимает, сколько ещё всего предстоит изучить (например, DevOps, advanced-алгоритмы, управление проектами). Его уверенность — не слепая, а основанная на опыте.
Пример:
Анна, мидл-разработчик, получила задачу реализовать авторизацию. Она не пишет код сразу, а изучает: OAuth2 vs JWT, как защититься от CSRF, стоит ли использовать готовые решения. Она знает, что любое решение имеет trade-offs.
Почему джуны не видят своих ошибок?
«Чем меньше вы знаете, тем быстрее принимаете решения. Джун думает: «Зачем читать документацию? Я и так всё понял!». Но в IT спешка приводит к багам, которые потом чинить дороже».
«Эффект Даннинга-Крюгера — часть обучения. Новички не могут оценить глубину темы, потому что у них нет «карты знаний». Они ещё не знают, чего не знают».
Как бороться с эффектом: советы для джунов и их менторов
Для джунов:
- Спрашивайте, а не утверждайте.
Вместо: «Я уверен, что тут нужно использовать наследование» — спросите: «Как лучше реализовать эту логику? Может, есть паттерн?». - Проходите код-ревью.
Не обижайтесь на критику. Каждая правка — урок. - Изучайте чужой код.
GitHub, open-source проекты, код коллег — смотрите, как решают задачи профессионалы.
Для менторов:
- Давайте обратную связь мягко.
Вместо: «Этот код — говно» — скажите: «Давай разберём, как оптимизировать запросы к БД здесь». - Создавайте «безопасную» среду.
Разрешите джунам ошибаться в тестовых задачах. Пусть сломают dev, но не продакшн. - Покажите «карту знаний».
Объясните, какие навыки нужны для перехода на следующий уровень: «Чтобы стать мидлом, тебе надо подтянуть базы данных и научиться писать тесты».
Заключение: Эффект Даннинга-Крюгера — не приговор
Да, джуны будут ошибаться и переоценивать себя. Но ваша задача как команды — помочь им пройти «долину отчаяния» и вырасти в профессионалов. Помните: даже сеньоры когда-то думали, что printf("Hello World!") делает их гуру программирования. Главное — не останавливаться в обучении и сохранять здоровый скепсис.
P.S. Если кто-то говорит: «Я всё знаю!» — покажите ему эту статью. 😉
Давай заключим сделку, я продолжаю писать - ты подписываешься на мою телегу. Win-Win подход.