Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Открой для себя волшебный мир реальной рыбалки. Лови реальную рыбу на реальных водоемах! Исследуй новые рыболовные места и заполучи заветный трофей.

Реальная Рыбалка

Симуляторы, Мультиплеер, Спорт

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

IT + Опрос

С этим тегом используют

Программирование IT юмор Программист Юмор Работа Картинка с текстом Разработка Am I The Asshole Reddit (ссылка) Reddit Перевод Мат Вопрос Политика Все
104 поста сначала свежее
user5710014
user5710014
6 дней назад
Лига тыжпрограммистов

Мюсли в слух⁠⁠

Мюсли в слух Опрос, IT, Безопасность, DDoS, Вопрос, Спроси Пикабу, Информационная безопасность, Мат

Новость из ТГ-кагала, на которую наткнулся пару минут назад.

Я отношусь к тому поколению, что на информатике в школе училось использовать кнопочку Shift, и от руки писало диссертации о отличии Shift от Caps Lock.

Но всё же, на сколько я помню - DDoS атака - это когда на цифровой ресурс приходит overcock запросов от злонамеренных пользователей сети, перегружая систему, и, порой, приводящих к поломке оборудования.

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

Для обывателя это будет выглядеть как трёхсекундная загрузка сайта. А система в это время отпингуется, и скажет - что да, это молодой человек залез вот к себе в личный кабинет, посмотреть условия кредитов, и пропустит пользователя на ресурс. В противном случае будет что-то типа "нееее, братка, у тебя семьсот запросов и даже монитора нет, ты блять не человек, а хуйлуша с клушей" и сайт скажет что он "упал"?

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

Я далёк от IT, но панамку всё же оставлю:

👒

Как вам идея?
Всего голосов:
Показать полностью 1 1
[моё] Опрос IT Безопасность DDoS Вопрос Спроси Пикабу Информационная безопасность Мат
9
prodneupal
prodneupal
8 дней назад

Коллеги, как давно вы в айти?⁠⁠

Всего голосов:
Показать полностью 1
Опрос Карьера Профессия IT Айтишники
6
QuadratusAI
QuadratusAI
1 месяц назад

Как мы запустили голосовой стартап без команды мечты и миллионов⁠⁠

🔸 О чём будет эта статья:

Это история о запуске голосового продукта без инвестиций, без команды на 10 человек и без мак ноутбуков. Только идея, немного Python, желание автоматизировать то, что кажется очевидным, и Telegram-бот, который родился из расчетного долгого времени разработки.

Мы расскажем:

  • Как всё началось с простой мысли: «А что, если голос можно превратить в текст для быстрой записи?»
    Когда я понял, что традиционные методы записи не так эффективны, пришла идея использовать голос для быстрого и структурированного фиксирования мыслей.

  • Почему я не стал ждать «идеального момента»
    Желание решать проблему подтолкнуло меня к действиям без ожидания идеальных условий.

  • С какими трудностями столкнулся
    Трудности с реализацией и организацией были, но они только ускорили процесс поиска решений.

  • Как писал MVP на коленке
    Сделать быстро и с минимальными затратами — так появился первый прототип.

  • Как тестировали на друзьях и случайных людях
    Обратная связь от знакомых помогла улучшить продукт.

  • Почему Telegram оказался идеальной точкой входа
    Телеграм был простым и удобным инструментом для быстрого запуска проекта.


💡 Зачем это читать:

Если ты когда-то хотел запустить свой продукт, но откладывал из-за «недостатка ресурсов» — это история для тебя.

Если тебе интересно, как рождаются реально полезные вещи — из боли, рутин, неудобства — тебе сюда.

Если ты хочешь понять, как мыслит команда, которая делает сервис для реальных людей, а не питчей — ты на месте.


🛠️ О чём конкретно будем рассказывать:

  1. Зачем вообще всё это понадобилось
    – как идея родилась из личной рутины
    – голосовые, заметки, неуспевание фиксировать мысли
    – «хочу просто сказать и получить нормальный текст»

  2. С чего было начало технической части
    – Python + библиотеки для распознавания речи
    – эксперименты с Vosk, Whisper
    – первые сломанные скрипты и первая фраза, которую система распознала

  3. Почему Telegram и MVP за пару дней
    – запуск без фронта и лишней сложности
    – простой бот, отправляешь голос — получаешь текст
    – реакция друзей: «Эммм… Это ты сделал?»
    – как фиксили баги в реальном времени

  4. Работа с текстом: сделать не просто транскрипт, а читаемый текст
    – как начали «чистить» речь
    – от удаления "э-э", "ну", до перестроения структуры.
    – И создания правильного форматирования с разбиением на абзацы

  5. Сайт, демка, первые фидбеки
    – как собирали сайт для демонстрации
    – кто первые пользователи, как реагировали
    – какой фидбек оказался самым неожиданным

  6. Что было самым сложным
    – не техническая часть
    – не бот
    – а сделать так, чтобы продукт был «невидимым», простым и реально полезным

  7. Что будет дальше
    – продолжаем тестирование и доработку
    – активно собираем фидбек, чтобы сделать продукт ещё лучше
    – в ближайших статьях расскажем о новых фичах и о том, как развиваем систему дальше


  1. Как пришла мысль разработки продукта?

Я по профессии специалист по компьютерным сетям и программист. Основная часть моего времени уходит на работу с кодом, но иногда хочется разобраться и в чём-то новом. Так я решил изучить тему право интеллектуальной собственности — просто для себя.

Чтение началось бодро: статьи, материалы, заметки. Но через какое-то время заметил, что информации становится слишком много. Прочитал абзац — вроде понятно. Перешёл к следующему — и тут понял, что не могу вспомнить, что было в предыдущем. Всё смешивается. Начал ловить себя на том, что читаю одно и то же несколько раз, потому что просто не удерживается в голове.

Тогда я решил записывать. Казалось бы, логично: фиксировать ключевые мысли, чтобы потом не забыть. Сразу вспомнились студенческие конспекты — быстро записать и забыть. Но когда стал делать это сейчас, уже осознанно, стало понятно, что такое способ обучение крайне не эффективный.

Во-первых, я начал писать от руки — и быстро столкнулся с тем, что потом с трудом разбираю свой почерк. Иногда вообще не могу понять, что хотел сказать. Во-вторых, редактировать такие записи практически невозможно. Ошибся — надо зачеркивать. Хочешь вставить мысль — уже негде. Всё выглядит одинаково важным, найти нужное потом тяжело.

Я решил поискать, как люди в целом ведут конспекты, чтобы делать это эффективнее. Обратился к ChatGPT — он выдал список из семи основных техник:

7 популярных методов конспектирования:

  1. Метод Корнелла
    Разделение страницы на три части: ключевые слова, основные записи и краткое резюме. Это помогает структурировать информацию и облегчить повторение.

  2. Метод обрисовки (Outline)
    Классическая иерархия: заголовки и подпункты, удобен для логической структуры.

  3. Картирование (Mind Map)
    Основная тема в центре, от неё расходятся подтемы, помогает визуализировать связи.

  4. Метод боксов (Boxing Method)
    Информация делится на блоки, каждый с одной темой, что ускоряет поиск.

  5. Метод предложений (Sentence Method)
    Короткие предложения без структуры, удобно для быстрого фиксирования информации.

  6. Метод таблиц
    Информация в виде таблицы с терминами, определениями, примерами и комментариями, удобно для сравнений.

  7. Цифровой метод (Zettelkasten)
    Каждая мысль — отдельная карточка, между ними устанавливаются связи, идеален для долгосрочной базы знаний.

Каждый метод интересен по-своему, но все они требуют усилий: остановиться, переосмыслить, оформить. Иногда на это уходит больше времени, чем на само чтение — особенно если хочется не просто написать, а понять и потом использовать.

Я понял, что в моём ритме это не работает. Нужно было что-то быстрее и проще — тогда я начал экспериментировать.

Я заметил, что лучше всего усваиваю материал, когда пересказываю его. Даже не кому-то, а самому себе. Это помогает закрепить смысл в голове. Так родилась идея проговаривать ключевые мысли вслух.

Я стал читать абзац, а затем кратко пересказывать его на своём языке — без заучивания, просто чтобы проверить, понял ли я суть. В этот момент включал запись на телефоне. Получались короткие голосовые заметки по 20–30 секунд.

Позже я прослушивал их или переводил в текст с помощью распознавания речи. Это оказалось неожиданно удобно: голосовые фрагменты не перегружены деталями, в них остаётся главное — и это мои собственные формулировки.

Так я пришёл к формату, который действительно сработал: понятный пересказ — в аудио. Без лишней структуры и ручной писанины. А при необходимости — всё можно превратить в текст, структурировать, сохранить или передать системе, которая поможет с анализом.

Этот подход оказался значительно эффективнее привычных заметок. Я больше не пытался записать всё подряд — только то, что действительно понял. Это экономило время и помогало лучше усваивать материал.

Со временем появилась потребность автоматизировать процесс — и тогда я решил сделать веб-сервис, который бы помог сохранять и обрабатывать голосовые заметки. Для быстрого запуска я сначала настроил сохранение записей в Telegram, как самый простой и доступный способ. Подробно о реализации, сложностях и технических деталях расскажу чуть ниже.

Главное, что я понял — самый простой способ иногда оказывается самым эффективным. Важно просто найти тот формат, который подходит именно тебе.

2. С чего было начало технической части

Всё началось с идеи, которую я придумал в голове, и с опросов среди друзей, чтобы понять, кому этот продукт может быть полезен. Я быстро понял, что идея голосовых заметок и их автоматического преобразования в текст могла бы быть полезной в разных сферах: от образования и бизнеса до повседневных задач. Это стало основой для следующего шага.

Затем я начал изучать основные фреймворки для работы с распознаванием речи. В первую очередь обратил внимание на Python и библиотеки для распознавания голоса, такие как Vosk и Whisper, а также на коммерческие решения от крупных компаний, таких как Яндекс. Это дало мне представление о том, что доступно в плане технологий.

Мой первоначальный план был прост: я хотел превратить голос в текст, затем обработать текст с помощью алгоритмов для выделения ключевых слов и идей, а затем передать это пользователю через веб-интерфейс. Я выбрал Django для бекенда, так как он казался идеальным выбором для быстрого старта.

Приблизительный макет проекта Визуал

Как мы запустили голосовой стартап без команды мечты и миллионов Опрос, Python, IT, Чат-бот, Программирование, Стартап, Распознавание, Telegram, Mvp, Ux, Обратная связь, Продукты, Прототип, Автоматизация, Длиннопост

Я начал с экспериментов с различными фреймворками, включая Vosk и Whisper. Решение использовать локальные нейросети для распознавания голоса оказалось одним из наиболее подходящих вариантов, так как оно позволило работать без зависимости от облачных сервисов. Однако, после нескольких тестов и установки моделей для распознавания, я понял, что интеграция будет сложнее, чем я ожидал.

Вариант тестов английской модели (легкие быстрые модели для экспериментов)

Как мы запустили голосовой стартап без команды мечты и миллионов Опрос, Python, IT, Чат-бот, Программирование, Стартап, Распознавание, Telegram, Mvp, Ux, Обратная связь, Продукты, Прототип, Автоматизация, Длиннопост
Как мы запустили голосовой стартап без команды мечты и миллионов Опрос, Python, IT, Чат-бот, Программирование, Стартап, Распознавание, Telegram, Mvp, Ux, Обратная связь, Продукты, Прототип, Автоматизация, Длиннопост

Далее я провел оценку времени, которое займет реализация всего проекта: от разработки фронтенда и бекенда до интеграции голосового распознавания и создания пользовательского интерфейса. Примерные расчёты показали, что на весь процесс может уйти от 3 до 6 месяцев.

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

3. Почему Telegram и MVP за пару дней QuadratusAI

После серии тестов с распознаванием речи на базе Vosk и Whisper, а также после анализа конкурентов, стало ясно: времени на полноценную реализацию проекта — с фронтендом, бэкендом, пользовательским интерфейсом и всей обвязкой — нет. Разработка сайта с названием QuadratusAI, его подключение к распознаванию и создание визуального интерфейса могла бы занять месяцы. Это был бы хороший следующий шаг после получения обратной связи, но не первоочередной.

Я понял, что нужно запускаться максимально быстро, без лишних слоёв сложности. Так родилась идея Telegram-бота — простого, понятного и доступного для всех моих знакомых. Никакого веб-интерфейса, никаких регистраций — только Telegram, только голос и текст.

Я сел в выходные и полностью сосредоточился на создании минимального жизнеспособного продукта (MVP). На тот момент у меня не было опыта написания ботов для Telegram, и весь код оказался в одном файле — громоздком и запутанном. Я не до конца понимал, как правильно организовать взаимодействие с Telegram API, как обрабатывать разные события и команды. Несмотря на это, базовая логика работала: ты отправляешь голосовое сообщение — получаешь текст в ответ.

Первые пользователи, в основном друзья, были удивлены:
«Эммм… Это ты сделал?» — такой была типичная реакция.
Параллельно с этим шла "боевой режим" — баги и ошибки устранялись прямо во время использования. Например, где-то не обрабатывались ошибки при скачивании файла, где-то Telegram возвращал неожиданный формат. Всё это приходилось чинить на лету.

Позже я начал добавлять функциональность — например, подключил облачную текстовую нейросеть, чтобы дополнительно очищать распознанный текст, убирать артефакты речи, структурировать его. Следующим шагом стало выделение ключевых слов и добавление эмодзи, чтобы текст выглядел более живо и дружелюбно в формате Telegram-сообщений.

Также в планах появилось ещё множество идей: распознавание спикеров, интеллектуальная фильтрация, интеграция с внешними сервисами. Но запуск через Telegram дал главное — возможность быстро проверить гипотезу, получить реальные отклики и продолжать развивать идею без длительных задержек на подготовку.

Как мы запустили голосовой стартап без команды мечты и миллионов Опрос, Python, IT, Чат-бот, Программирование, Стартап, Распознавание, Telegram, Mvp, Ux, Обратная связь, Продукты, Прототип, Автоматизация, Длиннопост

QuadratusAI Bot

4. Работа с текстом: сделать не просто транскрипт, а читаемый текст

Распознавать речь — это только половина задачи. Вторая, не менее важная часть — превратить сырую транскрипцию в читабельный, структурированный текст, пригодный для восприятия.

На этом этапе началась работа с «очисткой» речи: удаление слов-паразитов, таких как «э-э», «ну», «короче», избавление от лишних пауз, повторов и артефактов устной речи. Одной только транскрипции было недостаточно — нужна была перестройка структуры фраз, чтобы текст был логически связанным и не терял смысла.

Все эти задачи решались через разные промты и тесты — постоянно пробовались новые интерпретации, варианты запросов к языковой модели. Цель была одна: оставить суть, вычистив шум. И шёл поиск оптимального баланса: чтобы и смысл сохранялся, и текст становился ближе к «человеческому» письму — со склонениями, правильным порядком слов и логикой изложения.

5. Сайт, демка, первые фидбеки

После создания рабочего Telegram-бота появилась идея подготовить демонстрационный сайт QuadratusAI.

Цель — презентовать проект, собрать первые отзывы и протестировать реакцию аудитории. Также это был шаг в сторону будущего полноценного веб-интерфейса.

Как мы запустили голосовой стартап без команды мечты и миллионов Опрос, Python, IT, Чат-бот, Программирование, Стартап, Распознавание, Telegram, Mvp, Ux, Обратная связь, Продукты, Прототип, Автоматизация, Длиннопост

Пример с использованием DeepSeek

Как мы запустили голосовой стартап без команды мечты и миллионов Опрос, Python, IT, Чат-бот, Программирование, Стартап, Распознавание, Telegram, Mvp, Ux, Обратная связь, Продукты, Прототип, Автоматизация, Длиннопост

Генерация сайта с помощью нейросетей

Для ускорения процесса разработки было решено использовать нейросети и ChatGPT.
План состоял в следующем: описать идею, получить сгенерированный HTML/CSS/JS-код и как можно быстрее развернуть результат.

Однако на практике генерация сайта оказалась далекой от идеала. В ответах модели были ошибки, неполные блоки, либо слишком сложная структура.
Была предпринята попытка использовать полный стек генерации, включая React + TypeScript, но пришлось дорабатывать код вручную, местами редактируя результат через Cursor (IDE), а местами просто «допиливая» вручную по частям.

Как мы запустили голосовой стартап без команды мечты и миллионов Опрос, Python, IT, Чат-бот, Программирование, Стартап, Распознавание, Telegram, Mvp, Ux, Обратная связь, Продукты, Прототип, Автоматизация, Длиннопост

Вместо задуманного чистого HTML + CSS + JS получилось решение на React + TypeScript + CSS, так как только в такой связке нейросеть выдавала более-менее стабильный результат.

Наполнение и оформление

После исправления основных багов началась работа по наполнению:

  • Вставка и оформление скриншотов демо-бота.

  • Подготовка визуальных блоков с описанием возможностей.

  • Перевод описания на английский язык для международной аудитории.

Сайт был размещён на бесплатном хостинге для сбора первых фидбеков.
Итоговая сборка и отладка заняли примерно неделю — иронично, но, как потом показалось, было бы быстрее написать всё с нуля вручную. Тем не менее, опыт стал важным шагом в проверке инструментов и подходов.

6. Что было самым сложным

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

Задача заключалась в создании интуитивно понятного и мгновенного взаимодействия без лишних шагов и ожидания. Чтобы пользователь не думал, куда нажимать или что ждать.

Архитектура была разделена на два компонента:

Первый — Telegram-бот. Он лёгкий и минималистичный, принимает голосовые сообщения и отправляет обратно текст. Обработка голоса не происходит на этом сервере, что делает его быстрым и простым.

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

Такой подход позволил разделить критическую логику от пользовательского интерфейса. Это обеспечило гибкость в масштабировании и обновлениях без риска повлиять на работу фронтенда. Система может тестироваться и улучшаться без видимых изменений для пользователя.

Результат — простота использования: отправил голосовое сообщение — получил готовый текст. Без загрузок и прогресс-баров. Вся сложная логика скрыта, что делает продукт «невидимым» для пользователя.

7. Что будет дальше

Мы уже добились немалых результатов. Простой, но мощный инструмент, который когда-то казался идеей, теперь полностью работает, избавляя от множества рутинных задач. Всё, что нужно сделать, это просто сказать — и система превращает ваш голос в чистый, структурированный текст.

От разработки до тестирования — мы сосредоточились на том, чтобы пользователю не приходилось думать о том, как всё работает. Бот в Telegram работает без лишних шагов и интерфейсов. Система обрабатывает голос, очищает его от ненужных слов, выделяет ключевые моменты и возвращает результат, как если бы это была самая естественная часть общения.

Но мы не останавливаемся. Уже сейчас мы собираем фидбек и работаем над улучшением функционала. Скоро появятся дополнительные возможности, которые сделают продукт ещё проще и удобнее. Мы уверены, что эта простота и эффективность помогут вам избежать сложностей с записью мыслей и идей в любой ситуации.

Пробуйте, и вы сами увидите, как это может быть полезно в повседневной жизни. Заходите на сайт, тестируйте в боте — и почувствуйте, как это работает.

Как вы чаще всего фиксируете свои идеи или заметки?
Всего голосов:

Сам бот: https://t.me/AudioFastAi_bot

Страница с проектом: https://quadratus-ai.netlify.app

Телеграмм канал: https://t.me/QuadratusAI

Показать полностью 7 1
[моё] Опрос Python IT Чат-бот Программирование Стартап Распознавание Telegram Mvp Ux Обратная связь Продукты Прототип Автоматизация Длиннопост
4
Партнёрский материал Реклама
specials
specials

А сколько у вас?⁠⁠

Вы когда-нибудь считали, сколько экономите с вашим кешбэком и скидками? Предлагаем провести небольшие вычисления (потому что считать выгоду всегда приятно).

Реклама Реклама. ПАО «Банк ВТБ», ИНН: 7702070139

Калькулятор Выгода
system.develop
system.develop
1 месяц назад
Серия Библиотке Питона

Что такое aiohttp⁠⁠

Что такое aiohttp Программирование, IT, Опрос

Это асинхронный ад

Библиотека для асинхронных HTTP-запросов, написанная для мазохистов, которые считают, что requests — это слишком просто. Если requests — это велосипед, то aiohttp — это велосипед с квадратными колёсами, который едет только в гору.

Зачем это нужно?
— Чтобы делать 100500 запросов одновременно (и получить 100500 ошибок одновременно).
— Чтобы гордо сказать: «Я пишу на асинхронном коде!» (а потом три дня дебажить RuntimeError: Event loop is closed).
— Чтобы понять, что asyncio — это не библиотека, а образ жизни (и боли).

Когда использовать?
✅ Если вам действительно нужно 10к RPS (но ваш сервер сдохнет на 500).
✅ Если вы любите разбираться в async/await (и ненавидите свою жизнь).
✅ Если requests кажется вам слишком стабильным и предсказуемым.

Когда НЕ использовать?
❌ Если вы думаете, что асинхронность — это «просто добавить async перед функцией».
❌ Если ваш код уже работает (и вам незачем его ломать).
❌ Если у вас аллергия на ошибки типа «aiohttp.client_exceptions.ServerDisconnectedError».


Пример кода (который сломается при первом же запуске)

Что может пойти не так?

🔹 Сервер не отвечает? Получай TimeoutError и сиди гадай, то ли сервер сдох, то ли DNS сломался.
🔹 Сессия закрылась раньше времени? Наслаждайся ClientSession is closed.
🔹 Слишком много запросов? Добро пожаловать в мир aiohttp.client_exceptions.TooManyRedirects.
🔹 SSL-сертификат кривой? Привет, aiohttp.client_exceptions.ClientConnectorCertificateError.


Вывод

aiohttp — это мощно, быстро и… очень больно. Если requests — это «пострелял из пистолета», то aiohttp — это «запустил ракету с заднего двора и надеешься, что она не упадёт тебе на голову».

Совет: Прежде чем лезть в aiohttp, выучи asyncio настолько, чтобы объяснить его пьяному другу в 3 часа ночи. Иначе будет очень грустно.


Хочешь разбор реальных кейсов? Залетай в канал, там мы пилим всяких ботов...

Показать полностью
[моё] Программирование IT Опрос
0
10
rostislavdugin
rostislavdugin
2 месяца назад
Молодые предприниматели

Мои 7 правил при собеседовании разработчиков⁠⁠

За последние несколько лет я перестроил свой процесс найма разработчиков, начал по-другому готовиться к собеседованиям и проверять нужные навыки. Как мне кажется, у меня получилось повысить свою продуктивность и научиться нанимать подходящих разработчиков для проектов, где я работаю.

Пару недель назад меня попросили помочь на техническом собеседовании для Senior/Lead backend-разработчика и поделиться опытом. В процессе я формализовал несколько правил, которых придерживаюсь при проверке кандидатов. Чем я и хочу поделиться.

Ниже — мои советы по проведению интервью с конкретными примерами. Уточню, что это не подробное руководство по найму на конкретную должность, а универсальные рекомендации для всех интервью с разработчиками.

Мои 7 правил при собеседовании разработчиков Опрос, IT, Программирование, Стартап, Разработка, Программист, Длиннопост

Содержание

  • Какой у меня опыт собеседований и как я пришёл к правилам ниже?

  • Собеседование, которое поменяло мой подход к собеседованиям

  • Правило 1. Качественное собеседование — единственный способ реально проверить навыки кандидата (а накрутка опыта стала стандартом индустрии)

  • Правило 2. Вакансия должна быть написана без пафоса и понятным языком

  • Правило 3. Под каждую позицию нужно определить, какие требования реально нужны и убрать те, которые нужны "теоретически"

  • Правило 4. План собеседования должен быть подготовлен заранее, никакого "сориентируюсь по ходу дела"

  • Правило 5. Собеседование нужно начинать со "смоллтока" и простых вопросов, чтобы снизить беспокойство кандидата

  • Правило 6. Нужно давать фидбек. Детальный конструктивный фидбек

  • Правило 7. На собеседовании должен присутствовать тот, кто будет непосредственным руководителем кандидата

  • Заключение

Какой у меня опыт собеседований и как я пришёл к правилам ниже?

Моя специализация — это Full-Stack разработка на Go (раньше Java). За последние 4 года я провёл ~150 собеседований и закрыл 12 позиций. В основном Middle / Senior backend разработчики и несколько фронтендеров (React, NextJS). Присутствовал при найме PMов, сотрудников поддержки, тестировщиков. Кстати, у меня есть канал, где я рассказываю о своей работе.

Впервые я попал на собеседование в роли собеседующего по принципу “ты же опытный разработчик, ты и собеседуй”. И я, без понимания, а как собственно-то собеседовать, пытался. Сначала гуглил вопросы по типу "ТОП-100 вопросов для Java разработчика" и пытался мучить ими кандидатов, импровизируя по ходу дела. Пытался повторять то, как меня собеседовали в разных местах. Туда же шли задачки с LeetCode, разговоры про устройство HashMap, байт-кода и другие оторванные от реальной работы вещи. Пытался докидывать специфические кейсы из своего опыта, которые в работе редко встречаются.

Мои 7 правил при собеседовании разработчиков Опрос, IT, Программирование, Стартап, Разработка, Программист, Длиннопост

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

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

Но все равно выходило как-то сумбурно и не было ощущения, что я реально качественно проверяю разработчиков. Забегая вперёд скажу, что это и была проблема: я проверял кандидата “в целом”, а не соответствие конкретной позиции и конкретным требованиям.

Собеседование, которое поменяло мой подход к собеседованиям

Однажды я попал на собеседование на позицию Senior Go разработчика к Ивану. Собеседование было в два звонка по часу и состояло из 5 логически разделенных блоков.

Я очень удивился, что мне не задавали вопросы про хардкорную техничку, которая не используется в работе. Не было алгоритмов. Не было ничего шаблонного, к чему я привык. Проверялись реально те навыки, которые у меня были и которые были бы полезны проекту. При этом всём — это была самая детальная проверка скиллов, которую я видел.

После собеседования я даже уточнил, а почему не было вопросов про планировщик, конкурентность, да и в целом глубоко не копали внутрянку Go. Ответ был (чуть вырванный из контекста, деталей все-таки больше):

В целом, если человек способен спроектировать систему, сделать код ревью и у него есть 3+ года опыта работы, то я верю, что он может писать качественный код. Собственно, это и проверяю вместе с инженерным мышлением.

С собеседования я вышел с ощущением, что хочу работать в этой команде с таким руководителем, который так подготовился к собеседованию. Для меня это был показатель экспертизы. Правда, справедливости ради, стоит сказать, что я не принял оффер на эту позицию. На другом месте бабло победило перевес по деньгам был слишком ощутимым.

Несмотря на мой отказ, через пару дней со мной связались и дали детальный фидбек. Причём не в формате “знал плохо”, а “на позицию ты подходишь, но вот куда смотреть, чтобы расти дальше”.

Даже нашёл сообщение с обратной связью:

Мои 7 правил при собеседовании разработчиков Опрос, IT, Программирование, Стартап, Разработка, Программист, Длиннопост

Очень старался уменьшать масштаб, чтобы влезло всё сообщение

В общем, так я увидел “как надо”. С каким впечатлением должны уходить те, кого собеседуют. Как выглядит реальная проверка знаний. И начал перестраивать свой процесс собеседований. А с Иваном мы продолжили общаться и он даже стал моим ментором в вопросах тимлидства / СТО.

Теперь перейдем к моим правилам, которых я использую как ориентир.

Правило 1. Качественное собеседование — единственный способ реально проверить навыки кандидата (а накрутка опыта стала стандартом индустрии)

По тем или иным причинам рынок поменялся. Накрутка опыта была всегда, но сейчас это почти что тренд. Хорошо это или плохо — не мне решать. Я бы сказал, мне без разницы. Но эта тенденция есть и она ещё сильнее заставляет учиться нормально собеседовать.

Мои 7 правил при собеседовании разработчиков Опрос, IT, Программирование, Стартап, Разработка, Программист, Длиннопост

Частенько встречаются такие резюме, начиная с Middle+

Поэтому к каждому сотруднику я подхожу по умолчанию как к черному ящику и реально проверяю знания. Включая техничку (фреймворки, базы, языки, дизайн систем) и софты (ответственность, умение выявлять требования, аргументировать позицию).

Требуемые навыки зависят от позиции: не нужно требовать от junior'a системный дизайн, от хардового MLщика умение вытаскивать продуктовые требования из заказчика, а от middle-фронтендера знать нюансы устройства V8 (за редким исключением, когда это реально требуется).

Разумеется, к собеседованию я сам готовлюсь серьезно. Не подготовился — нанял не того, не с теми скилламм и не решил задачи бизнеса (а скорее создал себе головную боль и потратил много денег).

Правило 2. Вакансия должна быть написана без пафоса и понятным языком

Довольно долго я писал вакансии заумным языком, добавляя побольше официоза. Мне почему-то казалось, что это делает меня и компанию солиднее. Со временем понял, что единственный результат — кандидаты не особо понимали, чем занимается "прорывная e-commerce" или "fintech" компания.

Ещё я вписывал в требования все умные слова, которые знал: Agile, DRY, SOLID, коммуникабельность, стрессоустойчивость, уровни изоляции, опыт с высокими нагрузками и т.д. По моей задумке, так откликнутся только те, кто всё это знает и умеет (ведь реально я проверять такие пункты не умел).

Опять же, со временем я понял, что наличие умных аббревиатур вообще не влияет на поток кандидатов. Обычно на них никто не обращает внимание, потому что примерно похожие аббревиатуры есть в ~80% вакансий. Общепринятые навыки нужно писать не в вакансии, а (внезапно) проверять на собеседовании.

Теперь я стараюсь не усложнять:

  • пишу простым языком, что делает компания;

  • что нужно будет делать сотруднику с примерами задач;

  • какие у нас минусы (например, полгода были стартапом и почти нет тестов) и плюсы (не печеньки и кофе, а свободный график или полная удаленка в любой стране).

Так больше разработчиков поймут, что вы делаете. И смогут решить, хотят ли они делать это вместе с вами. Бонусом опытные ребята могут оценить навык под названием "коротко содержательно изъясняться".

Приведу пример вакансии, которую мы переписали с моим знакомым, чтобы закрыть позицию:

Вакансия до:

Мы создаем LegalTech платформу для оказания комплексных юридических услуг. Наша миссия – сделать правовые решения максимально доступными для всех форм бизнеса. Сейчас мы работаем над MVP, принимаем важные архитектурные решения, закладываем фундамент будущей системы.

А еще мы формируем крутую техническую команду, и прямо сейчас ищем опытного Middle/Senior Backend Developer, который сможет применить свои знания для создания гибкой и масштабируемой архитектуры и реализации компонентов в команде единомышленников. В ближайших планах – прохождение ИТ аккредитации в Минцифры России.

Чем предстоит заниматься:

– работать по scrum в режиме стартапа
– участвовать в проектировании архитектуры – реализовывать компоненты системы
– участвовать в оценке задач
– делать ревью кода коллег по команде – участвовать в найме других членов команды – предлагать и (возможно) реализовывать изменения в воркфлоу, инфраструктуре, требованиях, новые фичи и т.д.
– взаимодействовать с другими командами проекта

Наши ожидания от идеального кандидата:
– опыт работы senior/middle+ разработчиком от 2 лет
– уверенные знания JavaScript, TypeScript
– опыт коммерческого применения Node.js и Nest от 2х лет
– опыт коммерческого применения PostgreSQL от 2х лет
– опыт работы в команде с использованием git, task tracker и scrum
– понимание принципов и опыт построения архитектуры современных веб-приложений, SDLC, KISS, DRY, безопасности веб-приложений
– опыт проведения code review других членов команды
– высокий уровень самоорганизации и ответственности, открытость к новому и внимание к деталям
– опыт написания автотестов будет плюсом
– опыт построения backend, работа с СУБД, брокерами сообщений будет большим плюсом

Что мы предлагаем:

— оформление по СЗ/ИП – гибкий график с основным рабочим таймфреймом 11-16ч (когда проходят основные встречи)
– отсутствие бюрократии, высокая скорость принятия решений и свобода действий при выборе решений и инструментов
– возможности профессионального и карьерного роста
– открытость компании к инициативам и потребностям сотрудников
— корпоративные скидки на организацию отдыха (в группе компаний есть направление - туризм)

Вакансия после

Мы создаем платформу для юридического сопровождения малого и среднего бизнеса. Большая (но не основная и не главная) часть функционала - кадровый электронный документооборот.

Пример задач: заполнение шаблонов PDF документов правильными данными, взаимодействие между работодателем и сотрудниками в части этих документов, подписание с помощью электронных подписей и тд.

Мы ищем опытного специалиста, который сможет взять ответственность за разработку и запуск бекенда для первой версии системы. Вы будете принимать архитектурные решения, делать API, проектировать связи в БД и решать в какое облако мы деплоим.

Наш стек:
— NestJS
— TypeScript
— PostgreSQL
— Docker (Docker Compose)
— TypeORM (можем взять с другой ORM)
— GitLab

Ожидаем, что вы умеете:
— брать ответственность за договоренности и закрывать взятые на себя обязательства в срок;
— декомпозировать задачи, переводя их с “бизнесового” на “технический” (докапываясь до сути, если недостаточно вводных);
— выдавать решения с оптимальным балансом “время \ цена \ качество” (предлагая, что стоит добавить или убрать в ТЗ);
— опыт в разработке на NodeJS от 3-5 лет (под грейд Senior \ Team Lead);
— опыт в запуске проектов с нуля;

Бонусы:
— нет легаси (вообще);
— свободный график, но с готовностью принимать встречи в ~8 часовом диапазоне (когда вся команда работает);
— даём свободу в принятии решений и инструментов;

Условия работы:
— оформление по СЗ/ИП (на период разработки MVP);
— корпоративные скидки на организацию отдыха (в группе компаний есть направление - туризм);
— потенциально IT аккредитация и отсрочка от армии;

Ключевые изменения:

  • убрали то, что подразумевается по умолчанию (всё, что касается навыка "нормально писать код") или вообще не нужно (например, брокеры сообщений);

  • упростили описание компании, привели конкретные примеры задач;

  • вписали, что действительно нужно с акцентом на софт скиллы, которые критичны для этой позиции.

После переписывания текста, субъективно, начали откликаться более опытные разработчики, которые могут и им интересно "затащить проект с нуля". А разработчики, которым комфортнее в рамках выстроенных процессов, наоборот, стали реже откликаться.

Кстати, лайфхак для Senior+ позиций: начинайте поиск с профильных чатов и через знакомых, а не хх.ру. Так выше шанс найти опытных ребят, которые не ищут работу прямо сейчас, но могут откликнуться на классную вакансию.

Правило 3. Под каждую позицию нужно определить, какие требования реально нужны и убрать те, которые нужны "теоретически"

Как я писал выше, довольно долго я проверял разработчика "на всё". Теперь, перед тем, как искать разработчика, я выписываю, что действительно требуется для текущей позиции (ещё раз спасибо Ивану, что объяснил мне это). А затем отдельно продумываю, что не нужно и какие скиллы допустимо иметь на более низком уровне. Или не иметь вообще.

От разных разработчиков нужны разные скиллы (как харды, так и софты), которые нужно проверять по-разному. Если обобщить: к каждой позиции свой набор требований и не нужно проверять сверх них. Лучше хорошо проверить нужные навыки, чем средне-плохо все.

Мои 7 правил при собеседовании разработчиков Опрос, IT, Программирование, Стартап, Разработка, Программист, Длиннопост

Пример по последнему кандидату (часть таблицы, ниже много пунктов по хардам)

Навскидку, пару общих примеров:

  • Миддл для позиции Х должен знать фреймворк А, уметь хорошо писать код и дружить с SQL. Но нестрашно, если не расскажет о трейдоффах микросервисов относительно монолита (ведь это решит техлид/синьор). А техлиду, как раз, нужно иметь навык "не раздуть стоимость инфраструктуры Kubernetes'ом на этапе MVP с 10 000 MAU".

  • Синьор для позиции Y должен дружить с разными подходами к кэшированию, быть в состоянии настроить шардирование или оптимизировать реплику MySQL на чтение. Но без разницы, если не слышал про бинарное дерево и чем отличается LinkedHashMap от TreeHashMap. В зависимости от позиции можем подзабить на софты.

  • Тимлид для позиции Z должен уметь вытягивать требования из заказчика и разгуливать конфликты. Чтобы потом декомпозировать задачи для разработчиков (допустим, product manager'а в проекте вообще нет). А фреймворк Х может знать средне, не уметь написать CTE запрос в PostgreSQL за 5 минут без ChatGPT и не знать точного определения CAP теоремы (для этого есть сеньоры / техлиды).

Обратите внимание, что каждое утверждение делается строго в рамках конкретной позиции.

Правило 4. План собеседования должен быть подготовлен заранее, никакого "сориентируюсь по ходу дела"

Перед собеседованием у меня всегда выписан список вопросов и возможные пути развития диалога. Всегда разные планы под разные позиции (даже если должность формально одна). Незапланированная импровизация меня обычно приводила к бессистемности.

Всегда есть список вопросов на втором мониторе по резюме кандидата и то, что я должен выяснить про его опыт. Есть список задач по софтсиллам (если это Senior+ позиция и они требуются для вакансии).

Если есть задачи на лайвкодинг — подготовлена вкладка и код. Причём обязательно 2 сайта с редакторами на случай, если первый не заработает у кандидата из-за VPN / локации.

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

Мои 7 правил при собеседовании разработчиков Опрос, IT, Программирование, Стартап, Разработка, Программист, Длиннопост

Если даю алгоритмы (изредка это действительно нужно)— они всегда разобраны с моей стороны, я знаю какие решения даже в теории возможны и в любой момент я готов подсказать / обсудить нюансы.

Важно: нельзя давать то, что сам не понимаешь или не встречал в работе. Например, мне были нужны алгоритмы только 1 раз в жизни под специфический проект с трейдингом.

5. Собеседование нужно начинать со "смоллтока" и простых вопросов, чтобы снизить беспокойство кандидата

Собеседования — это стресс для кандидата. Мы, человеки, волнуемся. Кровь отливает из головы, приливает к мышцам и бессознательно включается защитный режим "бей или беги" (ну или "замри и спрячься", что не особо-то и лучше).

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

Перед тем, как переходить к собеседованию — пообщайтесь 2-5 минут на отвлеченные темы. Спросите, как себя человек чувствует, не устал ли (особенно, если это вечер пятницы). Начните с лёгких вопросов, на которые кандидат точно ответит и почувствует уверенность в себе. Нужно несколько минут, чтобы разговориться, привыкнуть к собеседующему (особенно, если их несколько).

Если видите, что человек волнуется — проговорите, что это нормально. Объясните, что вы понимаете, какой это стресс, ничего страшного не происходит и напомните, как вы бывали в такой же ситуации. Это банально, но проговаривание — помогает людям (кстати, понимание таких моментов называется “эмпатия”).

Как разговор о Raspberry Pi спас собеседование

Где-то год назад я проводил собеседование, где кандидата прям клинило. От волнения он сбивался, чуть ли не заикался. При этом у человека за спиной лежал Raspberry Pi с какой-то кастомной системой охлаждения.

Я решил поговорить на отвлеченную тему, чтобы разрядить обстановку. Мне как раз стало интересно, как это он так сделал. И кандидат с радостью увлеченно рассказал!

Я прям увидел, что означает “создалась дружелюбная атмосфера”, человек перестало клинить, он раскрылся. Дальше всё пошло как по маслу, техническая экспертиза раскрылась.

Также я обратил внимание, что это особенно важно для девушек. Ко мне пришло осознание, что для девушек собеседования больший стресс. Всё-таки в IT есть перевес в мужскую сторону и периодически встречается самоутверждающиеся собеседующие, для которых решает пол. Поэтому особенно важно начать интервью на дружелюбной ноте, дать почувствовать уверенность в себе и только потом углубляться в более сложные темы.

Правило 6. Нужно давать фидбек. Детальный конструктивный фидбек

Больная тема в найме, особенно с большим потоком кандидатов. Наверное, после ~70% собеседований я не получил нормальную обратную связь. Встречал или "решили продолжить с другим кандидатом", или "вы не подходите на позицию \ грейд по итогам собеседования". Без деталей и конкретных рекомендаций, что именно улучшать.

Если вы провели собеседования, к вам пришёл человек и потратил 1-2 часа времени — дайте фидбек. Не зависимо от того, наняли ли вы человека или нет. Фидбек — это:

  • в чем вам понравились знания человека;

  • что не подошло под позицию;

  • что бы вы порекомендовали улучшить.

А не просто отписка "вы не подошли" или "мы остановились на другом кандидате".

Что-то хорошее всегда можно найти в любом человеке. В конце концов, если разработчик прошёл скрининг, значит что-то да умеет. Подсветите это “хорошее”. Это вселяет веру в себя, человек узнает про свои сильные стороны, меньше волнуется на следующих собеседованиях.

Затем распишите, что стоит “улучшить”. Это то, что требуется для вашей вакансии, но не хватило у кандидата. Например, на позиции нужно уметь шардировать данные, а кандидат не знал про хэши и способы шардирования в вашей БД. Или у вас финтех проект, а человек плохо знает про шифрование и его виды, не работал с округлениями и т.д.

Если человек подошёл, но другой кандидат оказался лучше или не сошлись зарплатные ожидания — так об этом и говорите. Сказав, что именно сравнивали и на что ориентировались.

Повторю: в обратной связи важно говорить именно про навыки, требуемые под конкретную позицию. А не абстрактные советы в духе “качать алгоритмы” или “разобраться в нюансах устройства JVM”, когда на должности нужно пилить CRUD’ы.

Обратная связь для кандидата нужна, прежде всего, собеседующему. Вот почему:

  • Если вы нанимаете — значит вы и занимаетесь менторством. Когда даёте обратную связь и подсвечивает зоны роста... вы учитесь давать конструктивную обратную связь своим сотрудникам. Это прямая задача руководителя, которая помогает расти команде в целом.

  • Расширение нетворка. Если вы хороший собеседующий и даёте нормальный фидбек, как бы это не было банально, люди к вам тянутся. Вашу компанию рекомендуют, хотят к вам в команду или даже могут предложить поработать у себя (такие кейсы я видел лично).

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

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

Правило 7. На собеседовании должен присутствовать тот, кто будет непосредственным руководителем кандидата

Этот пункт связан с такой субъективной вещью, как "совпадение по характерам".

Как правило, вы нанимаете человека, с которым проработаете в среднем 1-3 года. Бывает такое, что может быть несовпадение по характерам. Например, кандидат сильно опытнее руководителя и явно давит этим. Или человек сильно токсичит и руководитель понимает, что работать с таким человеком тяжело (или человеку с таким руководителем, хе-хе).

Это адекватная причина отказать, если есть понимание, что продуктивность коммуникаций снизится. Но обязательно дайте честный фидбек. Объясните, что по навыкам у человека всё хорошо и причина субъективная.

Пусть считает, что вы или нанимающий неправы, чем сомневается в себе (раз я принял субъективное решение — ответственность тоже на мне).

Но чтобы принимать решения на субъективных ощущениях — нужен тот, кто будет работать с человеком. Если вы нанимаете не к себе в команду, вы не можете выдвигать такие суждения. Фильтр “попой чувствую, что что-то не так” на культурное соответствие — не работает.

Заключение

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

Для меня они must have и, внедрив их, качество моих собеседований улучшилось. Я увидел отдачу в результативности разработчиков, стал более уверен в найме. Количество сильных специалистов, которые попадали ко мне в команду выросло.

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

Ну и, как полагается, у меня есть Telegram-канал, в котором я рассказываю про разработку, развитие SaaS-сервисов и управление IT проектами. В том числе о проблемах, которые возникают. Там же я выкладываю ссылки на новые статьи.

Проводите ли вы собеседования?
Всего голосов:
Показать полностью 6 1
[моё] Опрос IT Программирование Стартап Разработка Программист Длиннопост
3
KarelDeveloper
KarelDeveloper
3 месяца назад

В чем заключается основная проблема отечественной IT-индустрии?⁠⁠

В чем заключается основная проблема отечественной
IT-индустрии?

Опрос Вопрос Разработка Программирование IT Импортозамещение Короткопост Текст
20
3
rostislavdugin
rostislavdugin
4 месяца назад
Молодые предприниматели

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах⁠⁠

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

За последние 8 лет я запустил больше 5 своих пет-проектов. Для меня не было проблемой разработать что-то, а вот продавать — тяжело. Тем более денег на продвижение всегда было мало или не было совсем.

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

Предположим, вы разработали первую версию вашего IT сервиса. При этом плюс-минус корректно определили свою целевую аудиторию и продукт действительно нужен. Даже есть первые продажи. Итак, как выйти на стабильный прирост аудитории?

Дисклеймеры

  • Я говорю только о B2C SaaS веб проектах (в других опыта у меня нет). B2C SaaS — это когда вы продаёте что-то с помесячной оплатой конечному пользователю.

  • В статье раскрыт мой опыт, который работал конкретно в моих случаях. Я могу что-то не знать, где-то ошибаться, мои советы не применимы к 100% проектов.

Содержание

  • Почему я могу об этом говорить?

  • Способ 1: копирайт

    • Пример 1: чат для сайта

    • Пример 2: конструктор приложений в Telegram

    • Пример 3: мониторинг сайтов

  • Способ 2: партнёрская программа

    • Пример 1: 5-ти уровневая программа с низким чеком (чат для сайта)

    • Пример 2: 2-х уровневая программа с высоким чеком (конструктор Telegram приложений)

    • Пример 3: партнёрская программа без выплат

  • Способ 3: SEO через контекстную и баннерную рекламу (~$100-$200)

  • Заключение

Почему я могу об этом говорить?

Как я написал вначале статьи: за последние 8 лет я запустил больше 5 своих пет-проектов, которые пытался монетизировать (и ещё больше без монетизации). Часть из них у меня получилось сделать прибыльной. Два из них даже вышло продать в голодные времена (но не как в американских фильмах за миллионы долларов, к сожалению).

В качестве подтверждения скрин из личного кабинета платёжной системы с выручкой в ~750 000 рубелей (правда из статьи 1.5 летней давности, до продажи этих проектов):

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Сейчас цифра примерно х3 от приведенной выше. Пусть это всё равно немного, но дойти до этой цифры именно пет-проектами в одиночку — сложная задача.

За это время я попробовал большое количество способов продвижения: от закупки рекламы в Telegram и контент-маркетинга до переписывания сайта на Svelte под 99%'e SEO в PageSpeed и публикации проектов в каталоге стартапов. По ощущениям, негативного опыта у меня ~80% и это самое ценное, что я получил.

Следовательно, я считаю, что успел что-то понять (даже завёл канал, чтобы писать об этом).

Способ 1: копирайт

Копирайт — это когда что-то сделанное вашим проектом подписывается фразой “сделано в (название проекта)”. Как водяной знак, но для IT продуктов. По моему опыту, это самый рабочий способ бесплатно и быстро продвигать свой проект.

За счёт копирайта мы убиваем сразу нескольких зайцев:

  • получаем прямых пользователей (которые узнают про наш продукт);

  • монетизируем бесплатных пользователей (платят не деньгами, а сарафанным радио) и нам становится выгодно давать бесплатно пользоваться продуктом;

  • растим SEO за счёт трафика, который приходит через копирайт.

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

Если проект ничего не производит, подумайте над функцией “поделиться” информацией внутри продукта. Например, разрешите пользователям давать публичную ссылку на документы (в стиле Google Docs или ChatGPT) или аналитику (например, топ прослушиваний в Spotify).

Разумеется, у копирайта есть минус: нецелевой трафик. Иногда он может нагружать поддержку проекта (особенно, если поддержка — это вы). Проблема в том, что ваш копирайт путают с сайтами тех, кто пользуется вашим продуктом. Например, когда я делал чат для сайта, мне регулярно писали: "я оплатил, дайте трек номер", "где мой заказ", "ваш мастер плохо работает"...

Однако в любом случае копирайт даёт колоссальную отдачу. Приведу три примера.

Пример 1: Telegram чат для сайта

У меня был проект “Telegram чат для сайта”. Пользователь пишет в чат, сообщение прилетает владельцу в Telegram и там же он отвечает.

Когда посетители сайта открывали чат на сайте моих пользоваелей, в самом диалоге и внизу чата были ссылки на мой проект:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Две копирайт ссылки

У бесплатного тарифа копирайт был зашит в приветственном сообщении. Это давало полную окупаемость всем бесплатным пользователям. Многие пользователи никогда бы не заплатили, а так помогают распространять продукт.

Для платных тарифов было маленькое примечание слева внизу. Те, кому нужен такой же виджет — всё равно его находили.

В какой-то момент пользователи, пришедшие через копирайт, начали давать >50% всех регистраций. Скриншот из панели аналитики проекта вначале месяца ~год назад:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Скриншот из внутренней аналитики UTM-меток

Итого, конкретно этот проект за счёт копирайта стал рентабельным.

Пример 2: конструктор приложений в Telegram

Второй пример — это конструктор Telegram Mini приложений. Все бесплатные приложения после команды /start отправляют сообщения с копирайтом:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Копирайт в приветственном сообщении

По этому же принципу работаю все конструкторы ботов, все боты для управления каналами и группами. Часто вижу, как свои сообщения подписываю ИИ-боты, боты для генерации картинок и т.д.

Пример 3: мониторинг сайтов

У меня есть пет-проект, который занимается мониторингом сайтов. Я долго не мог придумать, как сделать так, чтобы пользователи рассказывали о проекте. Ведь я не делаю ничего, что можно переслать или показать.

Уточню, что целевая аудитория:

  • владельцы сайтов, администраторы и разработчики;

  • у которых в среднем 1-3 сайта;

  • которым проще заплатить $3, чем поднять своё open source решение или скрипт.

В какой-то момент ко мне пришло озарение: примерно 80% не готовы платить за использование (это нормальная конверсия). Но возможно готовы сделать что-то в обмен на бесплатный тариф!

Так появился "виджет мониторинга": пользователь добавляет в угол экрана виджет, что сайт мониторится, а мониторинг начинает работать бесплатно. Сам виджет добавляетя скриптом. При этом виджет связан с партнёрской программой, чтобы сильнее мотивировать его добавлять.

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Пример виджета для сайта

Пользователь мониторинга узнаёт о виджете или в личном кабинете:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Настройки виджета в личном кабинете

Или через уведомление, когда пробный период заканчивается:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Пример уведомления об отключении тарифа

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

Способ 2: партнёрская программа

Партнёрская программа — это когда вы даёте % от платежей пользователей или другие бонусы тому, кто их привёл. Пользователей нужно приглашать по UTM-метке (тогда вы сможете понять, кто кого приглашает).

Партнёрская программа может быть двух видов:

  • для ваших конечных пользователей, которые приглашают друзей;

  • для агентств, маркетологов и арбитражников, которые льют трафик на ваш сайт;

В зависимости от этих категорий меняется тип бонуса:

  • арбитражникам, маркетологам или агентствами давайте % от подписок (причем хороший — 30%-50%, чтобы было выгодно работать), желательно в несколько уровней;

  • вашим пользователям предлагайте бонусный тариф или плюшки в продукте (обычно чек в ~1к от подписок им неинтересен, а больше вы дать и не сможете);

Важно №1: всегда автоматизируйте партнёрскую программу.

Перед тем, как включиться в работу, "потенциальные партнёры" проверяют вас на корректность подсчёта. Если в личном кабинете не будут меняться цифры после регистрации по UTM-метке — с вами вряд ли будут работать.

Важно №2: не жадничайте.

Всегда есть соблазн "не дать слишком много". Я часто замечал это и за собой, и владельцами других проектов. Поставьте себя на место того, кто ведёт к вам пользователей: стали бы вы работать за 20% или за чек в 200 рублей? Вряд ли. Спокойно давайте 50%, если это укладывается в экономику. Лучше недополучить прибыль, чем не получить её вообще.

Пример 1: 5-ти уровневая программа с низким чеком (чат для сайта)

Вот пример реферальной программы в 5 уровней для Telegram чата для сайта. Здесь выплата идёт с каждой оплаты пользователя:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Скриншот с сайта

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

Принцип следующий:

  • первый пользователь регистрируется по UTM-метке;

  • второй пользователь регистрируется по UTM-метке первого (которая прописана в копирайте);

  • ...

  • вы поднимаете весь граф регистраций, высчитываете % от каждого пользователя и делаете выплату.

Пример 2: 2-х уровневая программа с высоким чеком (конструктор Telegram приложений)

Следующий пример взят из моего текущего проекта (правда уже не "пет", а полноценного IT продукта с командой). Здесь монетизация идёт по трём статьям:

  • прямая первая продажа (50% от в среднем ~$500-$1 500);

  • % от оборота клиента (1% от в среднем ~$500-$20 000 \ мес);

  • % с чека за поддержку (50% от в среднем ~$50-$200)

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Личный кабинет партнёрской программы

В силу того, что проект имеет достаточно высокий чек на каждом из этапов, партнёров привлекать намного легче. Этим занимается отдельный выделенный человек только под партнёров. При этом партнёрам нужно давать sales kit, помогать с определением ЦА, помогать на демо звонках (специфика высокого чека).

Пример 3: партнёрская программа без выплат

Вот пример для SaaS проекта с низким чеком, где не выходит мотивировать деньгами, но выходит мотивировать платным тарифом:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Партнёрская программа без денег

Разумеется, в таком сценарии отдача значительно ниже, чем в варианте с деньгами. Но и в целом доходность проекта ниже и чек не такой интересный для тех, кто может привлекать пользователей. Это не отменяет того, что ваш проект растёт за счёт ваших же пользователей — и это главное.

Способ 3: SEO через контекстную и баннерную рекламу (~$100-$200)

SEO — это, если очень упрощенно, когда мы делаем сайт так, чтобы он был вверху поисковой выдачи в Google и Яндекс под ключевые запросы. Для двух моих самых успешных пет-проектов основной трафик шёл через SEO (как минимум, пока не начинал работать копирайт).

Вначале своей истории поисковики подкидывали вверх выдачи сайты, на которые было больше всего ссылок (примерно до ~2010 года). Затем начали учитывать поведенческие факторы и общий трафик сайта. Сейчас поведенческие факторы в приоритете.

А ещё, как показал слив Яндекса (который заимствовал многие механики у Google), поисковики учитывают рекламу как ранжирующий фактор.

Следовательно, делаем следующие шаги:

  1. Оптимизируем сайт на хотя бы ~75% по PageSpeed (но обязательно в зелёную зону для фактических посетителей).

  2. Проходим стандартный чек-лист SEO оптимизации.

  3. Вкладываем $25-$50 в неделю в рекламу по ключевым фразам.

К нам пойдут переходы. Появится трафик и поведенческие факторы. Если рекламу поддерживать, нас будут постепенно подкидывать в выдаче. Если денег вкинуть много, попасть в ЦА и сайт хорошой — можно занять первые места. Но не забываем считать рентабельность и помним, что реклама умеет отлично сжигать любой бюджет.

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

Пример PageSpeed чата для сайта

Важно:

  • рекламу лучше лить постоянно и по чуть-чуть, чем один раз и много;

  • не пытайтесь оценивать стоимость каждого лида, наша задача просто получать трафик.

В контекстной рекламе я разбираюсь достаточно слабо и для проекта ниже откручиваю ~$100 в месяц. Вот скриншот моих кампаний в личном кабинете Яндекс Директа для проекта по мониторингу сайтов:

3 способа продвижения пет-проектов (почти) без бюджета на конкретных примерах Опрос, IT, Стартап, Разработка, Программирование, Длиннопост

В идеале, конечно, углубиться в тонкости настройки рекламы. Там очень много нюансов по подбору фраз, очистки спамных площадок, обучения нейронки поисковиков. Однако начните хоть с чего-то и постепенно улучшайте.

Заключение

Продвижение для меня было всегда самой сложной и нелюбимой часть при развитии пет-проектом. При этом эта часть — самая важная. Хороший проект сам себя не рекламирует, к сожалению. Да и никто не сказал, что все мы дружно делаем хорошие проекты.

Существует очень большое количество способов, которые можно использвать для продвижения. Причём многие из них не работают до тех пор, пока сильно не углубишься. Например, полноценное SEO (не через контекст) требует долгих усилий от полугода сразу по многим направлениям. Оптимизация рекламных кампаний тоже требует бюджеты и долгие корректировки.

Я постарался собрать те способы, которые оказались самыми эффективными для меня по соотношению цена-качество, и которые можно применить для большинства SaaS проектов. Даже если вы разрабатываете их в одиночку. Это был мой опыт, полученный за несколько лет попыток в маркетинги и спустя далеко не одну тысячу слитых инвестированных долларов.

На написание статьи ушло много времени. Поэтому, если она вам понравилась или оказалась полезной, поставьте, пожалуйста, лайк 💙. Это мотивирует писать объемные статьи и рассказывать конкретику из своего опыта.

Ну и, как полагается, у меня есть Telegram-канал, в котором я рассказываю про разработку (я, все-таки, в первую очередь разработчик), развитие SaaS-сервисов и управление IT проектами. Там же я выкладываю ссылки на новые статьи.

Монетизируете ли вы свои пет-проекты?
Всего голосов:
Показать полностью 12 1
[моё] Опрос IT Стартап Разработка Программирование Длиннопост
0
Партнёрский материал Реклама
specials
specials

Раз проценты, два проценты⁠⁠

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

Реклама Реклама. ПАО «Банк ВТБ», ИНН: 7702070139

Калькулятор Выгода
ItIsArtur
ItIsArtur
4 месяца назад

Что подарить на 14 февраля программисту?⁠⁠

День святого Валентина – это отличный повод сделать приятное любимому человеку. Но если твой партнер – программист, обычная коробка конфет или плюшевый мишка могут не впечатлить. Что же подарить разработчику, чтобы он реально обрадовался?

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

💡 Вот 10 идей подарков, которые понравятся любому программисту – от стильных гаджетов до мемных вещей!

Механическая клавиатура с подсветкой

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Кружка с подогревом USB

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Лампочка-пиксельарт

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Футболка с IT-шуткой

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Мини-проектор звездного неба

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Плюшевый осьминог

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Настольная лампа с RGB-подсветкой

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Подписка на Spotify

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Красивый коврик для мыши

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Arduino

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Купить

Сравнительная таблица

Что подарить на 14 февраля программисту? Опрос, Подарки, Программист, 14 февраля - День святого Валентина, IT, Праздники, Любовь, Отношения, Семья, Конкурс, Длиннопост

Побеждает ардуино и осьминог :) На самом деле можно купить и то и то, осьминог будет помогать 🐙.

Что лучше?
Всего голосов:

Конкурс

А еще подарок можно просто выиграть!

🔥 Прими участие в конкурсе идей чат-ботов ко Дню святого Валентина! 🔥

💡 Что нужно сделать?

1️⃣ Придумать интересную идею чат-бота, связанную с 14 февраля.

2️⃣ Отправить свою идею в бота: @ValentineBotIdeas_bot

3️⃣ Дождаться голосования 14 февраля с 12:00 и поддержать лучшие идеи!

🏆 Призы и голосование

✔ 14 февраля с 12:00 мы запустим голосование за лучшие идеи.

✔ В 19:00 подведём итоги и объявим победителей!

✔ Победители получат призы офигенные призы 🎁!

📢 Отправляй свою идею прямо сейчас! 👉 @ValentineBotIdeas_bot

🔥 Подписывайся на канал, чтобы не пропустить обновления! 🚀

Показать полностью 12 1
Опрос Подарки Программист 14 февраля - День святого Валентина IT Праздники Любовь Отношения Семья Конкурс Длиннопост
2
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии