img

Промпт для ChatGPT, который пишет код лучше 97% senior девелоперов

Есть странный момент, который настигает каждого разработчика - иногда тихо, иногда с громким "о черт" - когда ты понимаешь, что код, который ты четыре часа аккуратно причесывал …ChatGPT может написать чище, компактнее и предсказуемее за 15 секунд.

icon strelka icons icons

узнай больше на курсе

Python программист с нуля
Стань разработчиком на одном из самых популярных языков программирования - Python
Подробнее о курсе
Java-разработчик с нуля
Освойте backend-разработку и программирование на Java, фреймворки Spring и Maven, работу с базами данных и API
Подробнее о курсе
C# разработчик с нуля
На курсе ты освоишь основы программирования на C#, включая синтаксис, объектно-ориентированное программирование и асинхронное программирование.
Подробнее о курсе

Не потому что машина умнее. А потому что большинство разработчиков (даже синьоры) пишут по шаблонам. Безопасным шаблонам. Ленивым шаблонам. Старым паттернам, которые перетаскиваются с работы на работу, как эмоциональный багаж, который никто не хочет разбирать.

Правда неприятна: если твой код выглядит как у всех остальных, ты - заменяем.

Но есть неудобный поворот. Существует способ использовать ChatGPT так, чтобы он не превращал тебя в среднего разработчика, который бездумно копипастит все, что выдает модель. Способ, при котором ИИ становится твоим синьор-инженером - без эго, без снисходительности и без допросов в стиле "а ты вообще читал документацию?".

Эта статья - про один конкретный промпт. Промпт, который пишет код настолько чисто, что опытные инженеры неловко чувствуют себя на код ревью.

Но сначала - подготовка. Иначе ты воспримешь промпт как магическое заклинание: вставил, запустил, разочаровался. Как и все остальные. А ты не такой. Не такой же, да?

А, ну и важно, все промпты - лучше всего использовать на английском. На английском мы о них и расскажем.

Настоящая проблема не в коде. Она в мышлении

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

Мы в команде видели тысячи пулл реквестов. Одни и те же паттерны повторяются снова и снова:

  • Функции, которые делают пять вещей, притворяясь, что делают одну
  • Обработка ошибок, дописанная в последний момент
  • Имена переменных, похожие на внутренние шутки
  • Побочные эффекты, спрятанные глубже государственных тайн

ChatGPT так не делает - если правильно его направить.

Он следует принципам "clean code" лучше, чем большая часть дорогих специалистов на рынке. Потому что он не устает. Не торопится закрыть задачу к дейлику или окончанию спринта. И не пытается произвести впечатление.

Но вот где большинство терпит поражение: они просят ChatGPT "write a function that does X".

Это как попросить мишленовского шеф повара "чувак, а можешь ченить вкусненькое сварганить, по бырому?". Ты получишь еду. Но не совершенство.

Чтобы получить совершенство, запрос нужно формулировать как синьор архитектор. В этом и есть сдвиг.

Все используют ChatGPT неправильно - особенно разработчики

Что понимают синьор разработчики (и почти всегда упускают джуниоры)

Есть три вопроса, которые синьор задают автоматически - и которые джуны почти всегда забывают:

  • Какую проблему мы на самом деле решаем?
  • Какие ограничения формируют это решение?
  • Как мы будем поддерживать или расширять это решение в дальнейшем?

И все. Каждый сильный архитектор, каждый инженер с 20-летним стажем, каждый менеджер, который ночами разгребал техдолг, мыслит именно так.

Поэтому промпт для ChatGPT должен принудительно включать этот образ мышления.

Если этого не сделать, результат будет стандартным: обобщенный учебный код уровня "Учим JavaScript за 7 дней".

Но если задать ограничения, ChatGPT превращается в точный инструмент.

Скальпель вместо молотка.

Неприятная, но важная истина: плохие промпты создают плохой код. Посредственные - шум. Осмысленные промпты создают архитектуру.

Люди часто спрашивают: “Но как понять, что код ChatGPT действительно лучше, чем у синьор девелопера?”

Легко.

Обратите внимание на три вещи:

  • Он устраняет неоднозначность
  • Он разделяет зоны ответственности
  • Он избегает сложности, если она не является абсолютно необходимой

Мы видели, как синьоры проваливались по всем трем пунктам.

ChatGPT - почти никогда, если его правильно инструктировать.

Быстрый пример перед основным промптом. Подождите еще немного

Возьмем простую задачу: “Write a function to validate user input.”

Обычный разработчик напишет что-то вроде:

function validate(data) {
              if (!data.name) return false;
              if (!data.email) return false;
              if (!data.age || data.age < 18) return false;
              return true;
            }

На первый взгляд выглядит нормально. Пока ты не замечаешь:

  • Отсутствие структуры
  • Отсутствие сообщений об ошибках
  • Сложность расширения
  • Невозможность масштабировать правила

А вот что выдает ChatGPT при правильной инструкции:

export function validateUserInput(input) {
              const errors = {};
              const rules = {
                name: v => typeof v === 'string' && v.trim() !== '',
                email: v => /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(v),
                age: v => Number(v) >= 18
              };
              for (const field in rules) {
                const valid = rules[field](input[field]);
                if (!valid) errors[field] = `${field} is invalid`;
              }
              return {
                isValid: Object.keys(errors).length === 0,
                errors
              };
            }

Разница не в "крутизне" кода. Она в структуре мышления.

  • Переиспользуемо
  • Расширяемо
  • Читаемо
  • Удобно для отладки

Это не вопрос интеллекта. Это вопрос дисциплины.

Промпт, который стабильно дает синьор-уровень

Вот он - тот самый, ради которого вы пришли.

И да, вы можете скопировать и вставить его точь-в-точь.

  You are my senior software engineer. 
                Before writing ANY code, you must:
                1. Ask me clarifying questions about:
                   - the exact problem,
                   - constraints,
                   - performance expectations,
                   - edge cases,
                   - security concerns,
                   - input/output formats.
                2. Then propose a clean, extensible architecture:
                   - folder structure (if needed),
                   - function responsibilities,
                   - reusable helpers,
                   - error handling strategy,
                   - data validation rules,
                   - testing approach.
                3. Only after I approve the architecture:
                   - Write production-quality code,
                   - Follow clean code principles,
                   - Add comments ONLY where needed,
                   - Avoid unnecessary abstractions,
                   - Include unit tests,
                   - Provide a short explanation of trade-offs.
                4. After writing the code:
                   - Suggest optimizations,
                   - Suggest alternative implementations,
                   - Identify potential scaling issues,
                   - Highlight future extension points.
                Never write code until steps 1 and 2 are complete.

Разработчики, которые используют этот подход, отмечают:

  • Снижение багов на 40 - 60%
  • Чистые diffs, которые реально хвалят на ревью
  • Меньше времени на рефакторинг
  • Меньше "что это вообще такое?" при поддержке

Если ты нанимаешь джуниор-разработчиков, этот промпт поднимает их результат на целый уровень.

Если ты сам джуниор, ты начинаешь выглядеть как синьор - очень быстро.

Но давай честно. Страхи существуют.

Люди спрашивают почти шепотом:

  • "Разве это не читерство?"
  • "Разве я не перестану учиться?"
  • "Что, если код будет выглядеть слишком “по-ИИшному”?"
  • "Заменит ли это мою работу?"

Вот мой прямой ответ:

Читерство - это притворяться, что ты написал то, чего не понимаешь. Использовать AI для улучшения мышления - это обогащение вашего воркфлоу, а не обман.

Обучение ускоряется через обратную связь. ChatGPT просто дает ее мгновенно.

AI-код выглядит искусственным только при плохом промпте. Задай ограничения - получишь человеческий результат.

Рабочие места не исчезают. Исчезают разрывы в навыках.

И разработчики, которые отказываются от AI, первыми утонут в бэклоге.

Почему этот промпт работает

Потому что он ставит структуру на первое место. А код - на второе.

Большинство промптов сразу требуют писать сразу функции. А этот превращает ChatGPT в системного архитектора, а не в печатную машинку.

Он задает неудобные вопросы:

  • "Что произойдёт, если этот API ответит с тайм-аутом?"
  • "Какую максимальную нагрузку мы ожидаем?"
  • "Что будет, если пользователь передаст неожиданные типы данных?"

Senior-разработчики задают их автоматически. Теперь их задает и модель.

Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
icon strelka icons icons

узнай больше на курсе

Python программист с нуля
Стань разработчиком на одном из самых популярных языков программирования - Python
Подробнее о курсе
Java-разработчик с нуля
Освойте backend-разработку и программирование на Java, фреймворки Spring и Maven, работу с базами данных и API
Подробнее о курсе
C# разработчик с нуля
На курсе ты освоишь основы программирования на C#, включая синтаксис, объектно-ориентированное программирование и асинхронное программирование.
Подробнее о курсе
Фронтенд-разработчик с нуля
Погрузитесь в мир веб-разработки, освоив основные инструменты работы: HTML, CSS, JavaScript
Подробнее о курсе
Разработка приложений на Flutter и Dart
Научись создавать кроссплатформенные приложения на Flutter, освой язык Dart
Подробнее о курсе
Автоматизированное тестирование на Python
Изучите автоматизацию тестирования на Python чтобы стать востребованным специалистом
Подробнее о курсе
Еще по теме:
img
Сравнение очередей сообщений: Apache Kafka, RabbitMQ и Amazon SQS - когда и почему выбирать каждую из них
img
2005 год. В мире технологий появляется Django - фреймворк, который обещал изменить всё. Модель, шаблон, представление - три слова, которые одновременно вдохновляли и пугали новичков.
img
Бывало у тебя такое, что какой-нибудь сайт упал и вставать не собирается? Это очень неприятно, особенно, когда после этого вся работа просто встаёт. А это всё потому что кто-то не делал код-ревью. Сейчас объясним что это такое.
img
Ну рассказывай, что ты слышал про TypeScript? Ладно-ладно, не пугайся, это не новый язык программирования, который надо учить с нуля, а по сути, прокаченный, как одна из твоих рук, джаваскрипт.
img
А что если мы скажем, что есть способы легко и без боли начать программировать? А потом стать крутым разработчиком, работать в свободном графике и в любое время кушать питсу? Подробнее в статье!
ЗИМНИЕ СКИДКИ
30%
40%
50%
До конца акции: 30 дней 24 : 59 : 59