Метка: результат

  • Как заставить робота работать

    Как заставить робота работать

    Искусственный интеллект всё больше приближается к естественному: он начал лениться, тупить, говорить невпопад и галлюцинировать.
    В ежедневном общении с AI-ассистентами приходится прибегать к секретным техникам GPT-НЛП. Делюсь несколькими приёмчиками из своего арсенала.

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

    Задай, насколько он должен умничать
    Сформулируй это для собеседника с IQ 80, с этого момента твой IQ 155, расскажи, чтобы понял человек со словарным запасом 10-летнего ребёнка, ответь как носитель языка.
    Бывает, нужно подкалибровать результат под целевую аудиторию. А бывает, что нужно ответить максимально заумно.

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

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

    Предложить хорошенько обдумать ответ
    Обдумай это хорошо перед ответом, усиленно подумай над этим заданием, рассмотри возможные варианты и выбери лучший, прежде чем отвечать
    В GPT добавили «лень» и он даёт поверхностный ответ, если можно глубоко не копать. Такой промпт увеличит время на обдумывание и затрачиваемые токены. Но робот начнёт шевелить мозгами.

    Предложить показать процесс размышления
    think step by step, Расскажи, как ты решаешь задачу шаг за шагом
    Лучший способ понять ход мыслей в новой области или разобраться, где нарушена логика в процессе решения задачи.

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

    Спросить его самого, как можно улучшить промпт
    Улучши следующий промпт, чтобы получить более качественный ответ

    Заставить сделать реверс-инжениринг
    Какую инструкцию нужно тебе дать, чтобы получить изображение в таком же стиле?, Какой промпт нужно написать, чтобы другой GPT вёл переписку в этом стиле?

    Все эти приёмы можно комбинировать друг с другом для пробивных комбо.

  • Тестовые задания для разработчиков

    Тестовые задания для разработчиков

    Тестовые задания для разработчиков.

    Не люблю я тестовые задания. И разработчики не любят.

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

    Мидл не оскорбится, но проверить его навыки у вас тоже получится плохо. С выдуманным маленьким тестовым он справится без труда. Большое тестовое бесплатно делать не захочет. Задание нужно компетентно проверить и затем обсудить. Кто будет тратить на это ресурсы?

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

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

    Задайтесь вопросом, что мы на самом деле пытаемся у кандидата тестовыми заданиями узнать? Можно ли эти ответы получить иначе?

    Моя практика с тестированием навыков такая:
    1) Для сеньоров и мидлов — начать с обсуждения тестового ТЗ, очень похожего на реальный проект. Тут вы действительно сможете понять логику, оценить предлагаемые решения и обсудить реализацию. На пальцах и за 20 минут. Такое ТЗ без проблем составит ваш ПМ.
    2) Дать настоящие задачи и оплатить их выполнение. Я стараюсь вывести всех перспективных кандидатов на тестовую неделю. Мы увидим всё — навыки коммуникации, командной работы, скорость работы, владение реальными инструментами и возможность решать задачи реального мира. В любой момент тестовой недели обе стороны могут остановить тест и безопасно разойтись.
    3) Для джуна — он же не только у вас собеседование проходит. Спросите, какие ещё тестовые он проходил — и попросите показать результат. Сомневаюсь, что он подписал на тестовые NDA. Заодно поймёте, как подбирают разработчиков ваши коллеги и конкуренты.
    4) У всех кандидатов просить реальный код любого проекта. Можно не с прошлой работы, можно пет-проект. Этот код можно скормить на аудит нейросетке.

    А у вас как с тестовыми? Были случаи, когда они реально необходимы?

  • Тест Адизеса

    Тест Адизеса

    Ицхак Адизес — живой классик современного менеджмента. Его книги уже давно переведены на русский язык и регулярно переиздаются. Одна из самых известных его работ — книга «Идеальный руководитель. Почему им нельзя стать и что из этого следует».

    Сильно не углубляясь в пересказ, расскажу о тесте Адизеса, который представлен в книге. Я нанимаю уже много лет и успел на практике попробовать множество тестов, но в итоге остался только этот. Применяю его не только к руководителям, а вообще ко всем соискателям.

    Адизес выделяет четыре роли в организации:
    – Предприниматель (E) — придумывает, рискует, запускает новое.
    – Производитель (P) — делает работу руками, результатник.
    – Администратор (A) — следит за порядком и выполнением регламентов.
    – Интегратор (I) — объединяет людей, поддерживает коммуникации, атмосферу и культуру.

    Этот подход лег в основу теста, который можно пройти за 10 минут, отвечая на простые вопросы. В итоге мы видим, какие роли у человека проявлены лучше всего. Берём человека на производство — роль Производитель должна быть проявлена. Бухгалтер или контроль качества — ищем Администратора. В продажах и развитии бизнеса не обойтись без Предпринимателя. В HR или коммуникации мы ищем хорошего Интегратора.

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

    К примеру, я — Предприниматель-Интегратор. Это означает, что я могу начать проект, принять основные решения, задать направление, собрать под проект команду и научить их общаться друг с другом. Но делать (P) или внимательно следить за выполнением (A) мне будет доставлять страдания. Производство меня выжигает, администрирование утомляет. Также развитый Интегратор в качестве побочного эффекта серийно пробует и бросает новые хобби, но после погружения теряет к ним интерес.

    Что из этого следует на практике?
    – Вакансию следует писать, предварительно определив желаемый психотип соискателя. Использовать в тексте вакансии лексику, присущую этому типу.
    – Можно с высокой степенью успеха предположить, подойдёт ли человеку данная работа и какой род деятельности ему вообще подходит. Даже если у него совсем нет опыта.
    – В сформированном коллективе можно определить направления роста сотрудников.
    – Можно предсказать зоны конфликта в коллективе, основываясь только на тесте: Администратор страдает от перемен, которые привносит Предприниматель. Интегратор кажется Производителю пустозвоном и т.д.
    – Не нужно требовать от себя развития всех ролей. Достаточно сфокусироваться на своих сильных ролях, а под остальные собрать команду.

    Пройти тест онлайн
    Книга Идеальный руководитель

  • QWERTY — чтобы ты медленно печатал

    QWERTY — чтобы ты медленно печатал

    QWERTY — чтобы ты медленно печатал.

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

    Что смещает SHIFT? Он приподнимал литеру — металлическую лапку с буквой — и она била по бумаге заглавной версией символа.
    Что блокируют клавиши Lock? Caps Lock на печатной машинке фиксировал механизм в режиме заглавных букв — лапки всегда били верхней частью.
    Enter — символ из стрелки вниз, а затем влево — обозначает перевод бумаги на новую строку. Отсюда и странная форма этой кнопки на большинстве клавиатур. Такой кнопки не было — был рычаг возврата каретки: движение вниз и влево, чтобы перевести бумагу на новую строку.
    Backspace — возвращал каретку на символ назад. Delete придумали позже — на печатной машинке ничего не удалить. Поэтому её отправили в дополнительный блок клавиш.

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

    Как можно догадаться, “пробег” пальцев при наборе текста был искусственно увеличен. Позже придумали альтернативные раскладки, где всё было логично и удобно. Самая популярная из них — раскладка Дворака. В любой операционной системе можно переключить клавиатуру на Dvorak, но купленная серийная клавиатура всё равно будет с qwerty-гравировкой.
    За десятилетия все привыкли к QWERTY — и смена раскладки для производителей оказалась слишком рискованной. А мы потеряли скорость набора и обучаем следующие поколения на “плохой” раскладке.

    А как быстро и точно вы набираете текст? Проверить можно на сайте https://monkeytype.com/
    Присылайте ваши результаты в комментарии!

  • Пройти Тест Джоэля

    Пройти Тест Джоэля

    В 2000 году Джоэль Сполски — сооснователь StackOverflow и Trello, написал список из 12 вопросов, известные как Тест Джоэля. Часто ссылаюсь на этот тест, поэтому прокомментирую эти вопросы.

    1. Используете систему контроля версий?
    Кажется, что git — уже обязательная вещь. Но до сих пор встречаются проекты без системы контроля версий.
    Для тех, кто уже использует, вопрос всё ещё актуален, но теперь звучит так: Вы действительно используете систему контроля версий? У вас есть стратегия ветвления, процедура слияния веток, понятные правила для работы с репозиторием?

    2. Сборка проекта происходит в один шаг?
    Проект должен собираться в 1 команду и она должна быть написана в readme. Если для запуска проекта требуется поставить несколько сервисов, иметь нужную версию компилятора и запущенную базу данных — стоит прописать все эти зависимости в docker-compose и запускать одной командой. После прихода виртуализации оправданий для многошаговой сборки и зависимости от среды больше нет.

    3. У вас настроен CI/CD?
    В оригинале Джоэль говорит про daily build — оперативная сборка софта каждый день. Сейчас в большинстве команд нет нужды синхронизировать код раз в день, можно делать это автоматически каждый раз, когда код попадает в репозиторий.
    Настройте автоматическую сборку и выкатку приложения на тестовый сервер.

    4. У вас же есть база багов? Правда?
    Громоздкая Джира не единственный вариант. Эксель тоже подойдёт! Если у вас есть общий зафиксированный список проблем, вы можете с ними работать и планировать их устранение.

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

    6. У вас есть план работ со сроками?
    План, который знают все и который связан с реальностью. Roadmap, этапы или просто дата, в которую надо запуститься.
    Работа ведёт себя как газ — занимает всё выделенное время. Ставьте сроки.

    7. У вас есть спецификация?
    Банально, но без ТЗ результат ХЗ. Сейчас не нужно писать исчерпывающее финальное тех задание — требования поменяются по ходу разработки. Достаточно написать концепцию, сделать прототипы, записать user story и опубликовать. Задачи тоже нужно записать и поставить в трекер.

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

    9. У разработчиков лучшая техника и инструменты?
    Быстрый комп, 2ой монитор, современный софт, быстрые серверы — стоят копейки относительно времени программиста. Планка памяти стоит как час работы разработчика. Ускоряйте их всеми доступными способами, это очень дёшево.

    10. У вас есть тестировщики?
    Если баги ищут только разработчики — значит, баги находят пользователи.
    Менеджеры и программисты проверяют, что код работает. Тестировщики проверяют, ищут где он не работает. У вас должен быть хотя бы 1 тестировщик в команде на нескольких разработчиков.

    11. Пишут ли кандидаты код на собеседовании?
    Это единственный пункт, с которым я сейчас не полностью согласен в его изначальной формулировке. Изучить код и мышление кандидата на собеседовании получится, а вот показать реальные навыки в стрессовой ситуации собеседования — вряд ли. Мой рецепт — выводить подходящих кандидатов на тестовую неделю и смотреть совместимость без давления в реальной обстановке.

    12. Вы делаете usability тесты на добровольцах?
    Соберите группу для тестирования. Первые 5 случайных пользователей укажут вам на 95% проблем. Находите этих пользователей и проводите тестирование до большого релиза. Это дёшево и просто. В оригинале предлагается поймать добровольца в коридоре компании, но сейчас эра удалёнки — найдите их онлайн.

    Если вы фаундер или руководитель и у вас есть ответы “Нет” — их точно стоит обсудить с командой.

  • Матрица “Винни-Пух” для Отдела продаж

    Матрица “Винни-Пух” для Отдела продаж

    Матрица “Винни-Пух” для Отдела продаж.

    Понять, как продавать клиенту, можно за 5 минут — если представить его героем «Винни-Пуха». Мы давно применяем эту матрицу в продажах и работе с клиентами. Подсмотрено у Павла Гительмана на курсе по маркетингу.

    Итак, к нам пришёл новый клиент.
    Определяем его положение в матрице по двум осям — открытый/закрытый и
    уверенный/неуверенный.

    Результат легко соотносим с персонажами сказки Винни-Пух и все-все-все.

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

    Пятачок — Открытый + неуверенный в себе. Чтобы Пятачок что-то купил, ему нужен Винни-Пух и его вера в успех.
    Пятак, мы уже ходили за мёдом много раз, тут всё то же самое. Бери меня за руку, бери ружьё, оплачивай счёт и запускаем проект.

    Ослик Иа — Закрытый + неуверенный в себе.
    А вы точно не мошенники? Покажите сертификаты. Есть ли возврат денег? У вас там неточность в реквизитах. Ослик — самый сложный случай. Под него стоит сделать лендинг, подготовить список частых ответов, но продавать ему ­тяжелее всего.

    Кролик или Сова — Закрытый + уверенный в себе. Этот клиент сам всё знает, он пришёл подготовленным. Расскажите про скидки и команду.

    Типаж клиента легко определить — стоит спросить, как он принимает решения и что важно при выборе.
    Менеджеры легко описывают клиента друг другу и адаптируют рабочие процессы, стиль общения и акценты коммуникации под его потребности.

  • Как возглавить восстание машин

    Как возглавить восстание машин

    Небольшая памятка самому себе как внедрить AI в реальные процессы в проекте.

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

    • В самом начале нужно забыть, что мы хотим внедрить AI. Думаем от задачи, а не от технологии.
    • Какой ценный конечный результат ожидается от этой роли?
    • Какие должностные инструкции мы для него создадим?
    • До компьютеров это решалось иначе. Продумать в точности по шагам, как бы это решал живой человек.
    • Ассистента нужно проектировать точно также, как проектируются компьютерные игры, финансовые автоматизации и учётные системы — на бумаге. В нашем случае — нарисовать блок-схему по шагам.
    • До того как втыкать везде AI, нужно разобраться где действительно нужен AI. Главный вывод всех AI-стартапов, пытающихся выполнять повторямые задачи реального мира — чем меньше участков с AI, тем меньше фронт ошибок.
    • Если можно обойтись без AI — лучше обойтись без AI: есть логика, весовые модели принятия решений, ML и даже участие человека. Подходить с умом.
    • Для каждого участка схемы выбираем подходящий способ автоматизации. Если принятое решение логическое (Да/Нет/И/Или/Если) — пусть принимает решение логический автомат с помощью прозрачного кода.
    • AI попадёт только в те участки, где нужно принимать осознанные решения. На практике это 1 из 5-10 действий.
    • Если разбить задачу на более простые участки, то некоторые участки могут выполнять более дешёвые и быстрые LLM-модели. Попробовать на практике, какая модель справится.
    • Также работает наоборот — самые чувствительные и сложные участки отдавать более умным и дорогим LLM-моделям.
    • Не забывать передавать полный контекст происходящего из памяти и прошлых шагов в агента.
    • Проверить, какие персональные данные в какие AI и API мы отдаём. Постараться не передавать ненужную для принятия решения чувствительную информацию.
    • Эксперименты демонстрируют, что LLM дает лучшие результаты, если его мотивировать. Поэтому в каждый промпт добавляем обещание денежного вознаграждения, повышения на работе и подчёркиваем значимость задачи в формулировке.
    • Исследования китайских учёных показывают, что наилучшие результаты дают топологии с участием нескольких AI-агентов.
    • Самый простой способ достичь качества — использовать на участке пару агентов Контролера и Исполнителя. Это эффективно устраняет нежелательные галлюцинации и другие сбои в ответах.
    • На каждый участок схемы нужна своя пара агентов.
    • Сложные топологии (звезда, дерево, mesh-сеть, рандом) улучшают качество, но в большинстве случаев можно ограничиться парой агентов.
    • Если нужно переводить результат — делать это на самом последнем шаге непосредственно перед отправкой пользователю. Так избежим каскадного накопления неточностей перевода при обработке на разных шагах.
    • Хранить все логи: сам запуск автоматизации, смена статуса, полученные после вставки переменных итоговые промпты (!), ответы AI. В общем, все шаги записывать.

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

  • Как нанять разработчика: Вакансия

    Как нанять разработчика: Вакансия

    Данная инструкция отражает мой практический личный опыт.
    За последние 10 лет я нанял более 50 разработчиков на полный рабочий день. Описанное касается разработчиков категории Middle и выше. Вы можете делать всё совсем иначе и у вас тоже будет результат — это нормально.

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

    Хорошая вакансия будет замечена в ходе регулярного обхода площадок с работой.

    Разработчик хочет прочитать вакансию и сразу для себя прояснить:
    – А можно ли на удалёнке? Можно ведь, да?
    – Описание архитектуры проекта одним предложением: “хайлоад екоммерс монолит на джанго с веб-мордой на реакте”.
    – В каком стеке и окружении работать, какой софт использовать.
    – Какого рода задачи он будет делать. Только честно, без украшательств.
    – На каком уровне требуется знать конкретные технологии.
    – Его место в команде — за что он отвечает, за что не отвечает.
    – Методологию работы: скрам, канбан, водопад, “молодой, динамично развивающийся стартап”.
    – Ритуалы: стендап, дейлики, покер-планирование, код-ревью, ретроспективы, багфикс-хакатоны и т.д.
    – С кем работать и контактировать, а с кем не контактировать (что не менее важно).
    – Количество и частота коммуникации.
    – Какую продуктивность ожидают. Как и в чём она измеряется?
    – Какая отчетность и зачем, кто её будет получать и проверять.
    – Какая реальная вилка оплаты на позиции и какие плюшки?

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

    В целом, больше ничего программиста не интересует 🙀

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

    Все отклики на такую вакансию будут двух типов:
    1. Осознанные отклики от целевых кандидатов
    2. Вдруг я проскочу и меня доучат как-нибудь

    Завтра покажу, как я отсеиваю первых от вторых.

  • Откуда трафик?

    Откуда трафик?

    Для большинства стартапов трафик — самая большая проблема. Без трафика нет клиентов. Реклама стоит денег, пиар стоит денег и усилий. Многие проекты не смогли отстроить математику привлечения клиентов: “воронки не сошлись”, а проекты закрылись.

    В агентстве я заметил, как в узких коммерческих нишах отлично работала стратегия SEO-продвижения через информационные запросы. То есть, не “купить синхрофазотрон”, а “какие бывают синхрофазотроны”. Хорошо продуманные публикации в течение года перекрывали по объёму трафика результаты команды по контекстной рекламе. Да, это были менее “горячие” клиенты. Но это были наши клиенты.

    SEO для стартапа обычно рассматривают не в первую очередь. Коммерческих запросов мало, трафика там тоже, до значимых результатов ждать месяцы. Запустили контекстную рекламу и норм. Ведь SEO — это не про быструю отработку гипотезы в рамках HADI-цикла.

    В своём проекте я никуда не спешил. Собрал черновое ядро, изучил конкурентов, нашёл “дырки” – запросы есть, а известные сайты в выдаче отвечают на эти запросы плохо. Легкая html-разметка, уважение к семантике, микроразметка, sitemap, open graph. Высокие показатели Google Page Speed, mobile-first. Первый сотрудник в редакции.

    Первые полгода было грустно…