#найм

страница 2 из 3
пост №1302Управление и команды

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

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

Слушайте и подписывайтесь: Apple, Google, Castbox, Spotify, Яндекс, Overcast, веб-версия.

пост №1297Управление и команды

Я давно сюда не писал ничего о своей работе, потому что работы ОЧЕНЬ МНОГО. Мы с Федей пытались сделать её всю сами, перетрудились, приходится отказывать клиентам :(

Пора нанимать людей не только клиентам, но и к нам. В рамках исправления ошибки, публикую две вакансии:

🛠 Программист:
- думает о пользе бизнесу;
- пишет на python или node.js, а лучше — на обоих;
- пишет код, который можно развивать и поддерживать; не пишет код, который можно не писать, такой код — самый лучший;
- самостоятельный — выполняет обещания; если вдруг что-то идет не так — проактивно приходит с проблемой и с вариантами решения.

Проекты: технический перезапуск Сноба, бомбический онлайн-сервис от Upmarket (SaaS для публикации товаров на маркетплейсах) и несколько секретных стартапов. Одного опытного программиста мы возьмем в штат к себе, а не к клиенту — можно будет посмотреть на всю индустрию в целом, переходя от проекта к проекту. Подробное описание вакансии и инструкции — у Феди в канале.

💼 Аккаунт:
- ведет наших клиентов вместе со мной, Федей и нашими программистами;
- ничего не продалбывает (в отличие от меня).

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

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

пост №1254Управление и команды

Мы с Федей наняли первого программиста к себе в штат.

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

Наш первый наемный сотрудник — Всеволод Скрипник. Всеволод молод, офигенно прогает на питоне и умеет доводить задачи до конца. Это — очень ценное умение, которого не хватает многим. А ещё Всеволод, как и Федя, предпочитает по работе общаться через электронную почту 🎩.

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

Кстати, у Всеволода есть свой канал в телеге!

пост №1144Работа и карьера

Как найти программиста? Первый шаг — написать толковую вакансию. Разберем на примере, как это сделать.

Ищем React Native-напарника в W1D1.

👉 Важно в одной фразе объяснить, что за компания, чем она занимается.

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

👉 Компания — стартап? В стартапе главное — кто делает, кто в вкладывается деньгам и на сколько этих денег хватит.

👉 Компания со стабильным доходом и супер низкой текучкой? Стоит указать явно.

Это стартап. Основатель — бывший арт-директор W-O-S Леша Ивановский; основной разработчик приложения (который и ищет себе напарника) — Андрей Кеске, раньше программировал в Airbnb. Инвесторы — друзья друзей, денег есть на 6 месяцев. Есть понятный план как за это время показать рост необходимый для следующего раунда.

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

У нас свежее приложение без легаси. Пока только iOS-приложение на react native, на бэкенде нода, apollo (graphql).

👉 Чем именно крута вакансия? Нужно безбожно хвастаться

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

Кратко:
— react Native, 99% всех компонентов функциональные, сильно декомпозированы — <100 строк на компонент;
— apollo для работы с бекэндом;
— стек можно посмотреть по package.json’у
— свой собственный модуль камеры, написанный на Свифте (можно закопаться в эту технологию, если есть желание);
— ESlint, Prettier и pre-commit хуки, чтобы не думать про стили;
— часть решений и модулей мы выкладываем в опен сорс (например) и в будущем хотим продолжить эту практику;

Большим плюсом будет знание бэкенда на ноде, чтобы сделать фичу целиком, а не только в приложении.

👉 Удаленка или офис? Фултайм или парт-тайм? Какие основные рабочие инструменты? Они много говорят о компании. Какая зарплата? Есть ли дополнительные бонусы или ограничения, о которых стоит знать?

Работа удаленная, фултайм. Лёша в Москве, Андрей в Нью-Йорке, встречаемся в телеграме, трелло и зуме. Зарплата 200-400тр, в случае высокой результативности можем договориться о доле.

👉 Обязательно укажите, куда обращаться. Ждете портфолио или примеры кода в первом сообщении — напишите. Хорошо бы объяснить процесс собеседования (сколько кругов ада предстоит пройти) и когда будет результат.

Пишите @leshaivanovsky в телегу. После знакомства мы дадим доступ к коду и предложим сделать небольшую фичу (за деньги, естественно). Если процесс и результат понравятся — начнем работать фултайм.

👉 Можно приложить картинку. Это как принт на футболке, привлекает внимание и доносит одну простую идею о вас.

Вакансия настоящая и я рекомендую w1d1.

пост №1078Управление и команды

Я предлагаю профессиональные консультации для руководителей разработки и программистов.

Хочу назвать это «психотерапией для разработки», но у меня нет ни профессионального образования, ни обязательной супервизии, ни диплома. Есть 5 лет личной терапии, 2 года групповой, несколько прочитанных книжек и наглость предлагать консультации за деньги.

Договорённости в разработке и с продуктом/бизнесом, менеджмент ожиданий, найм и увольнение программистов, сроки, деньги, СТРАХИ. Все мы сталкиваемся со сложностями в работе. За 7 лет руководства разработкой я набил много шишек и хочу вам помочь.

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

3500руб в час, очные консультации в Москве и в Риге или по видеосвязи. Гарантирую конфиденциальность. Интим не предлагать.

Запись тут: https://calendly.com/samatg/video-consult, вопросы в личку.

пост №1036Управление и команды

Похвастаюсь: ко мне на работу в Pure пришел бэкендер Антон Шурашов и начал приводить бэкенд Pure в чувство.

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

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

Спасибо всем, кто откликнулся на вакансию. Познакомились с несколькими интересными специалистами, надеюсь ещё поработаем вместе. 🍒

пост №881Управление и команды

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

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

Теперь с нетерпением жду новостей Forbes.ru о запусках. Меж тем, они расширяются, ищут хорошего бэкендера на пыхе, аналитика и smm-щика. Хотите работать в медиа с хорошей продуктовой командой, дельным руководством и офисом рядом с Белым домом? Пишите Наташе на pushkina@forbes.ru

пост №721Управление и команды

Cегодня был тяжелый день для меня. В поиске фронтов осталось 4 кандидата, все классные, у каждого свои сильные и слабые стороны.

Много думал, советовался с коллегами, но ВЫБРАЛ СЕРДЦЕМ.

https://www.youtube.com/watch?v=7opVyK6qVb8

пост №719Управление и команды

В чате несколько раз просили рассказать, как мы проводим собеседования, поделюсь.

Во первых, нужно выбрать, кого собеседовать. Мы смотрим на исходный код. Просим ссылку на репозиторий, zip или, хотя бы, отдельные исходные файлы. Это отсекает часть кандидатов, которые не способны прогать. Сразу видно крутышей, которые пишут так (или такое), что хочется с ними работать.

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

Очень хороший текст о себе, со всеми правильными ключевыми словами, может подкупить моё сердце, но Рома (или другой программист) наверняка спросит «а код-то где?»

Я не даю тестовые задания, потому что боюсь отсечь самых крутых кандидатов, которые «в р** е**** наши тестовые» (не заинтересованы в тестовых), за ними и так очередь стоит. К тому же, код из реального мира лучше синтетического.

Во вторых, никаких собеседований один-на-один: это более утомительно и менее эффективно. Бэкендера мы искали вдвоем с Антоном, фронтов собеседуем с Ромой и с Сашей втроем. При этом иметь со стороны компании больше 3 человек, наверное, тоже перебор.

В третьих, мы не спрашиваем _тупых_ вопросов на _соображалку_ типа «сколько теннисных мячей поместится в Боинг 747». И никаких whiteboard interview, когда просят написать исходный код «здесь и сейчас». Собеседование призвано ответить на три вопроса:

1. Хотим ли мы работать с этим человеком?
2. Захочет ли он работать с нами?
3. Способен ли он выполнять работу, которую мы хотим ему дать?

Сценарий всех собеседований примерно одинаковый:
1. Мы рассказываем о продукте: какую проблему он решает, какие составные части в нем есть (это я люблю рассказывать сам, но порой я учусь смирению и это делает кто-то из программистов);
2. Какие технологии мы используем — тут обычно программисты начинают говорить на птичьем и в глазах кандидата появляется оживление, он начинает задавать вопросы. Хорошо!
3. Как устроен рабочий процесс — бейзкемп, рабочие циклы, разбиение фичи на подзадачи программистами, созвоны, личные встречи, etc. Больше вопросов, наши истории из жизни, в идеале кандидат делится своими.

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

Дальше кандидат рассказывает о себе. Часто люди просят задать вопросы. Самый главный:

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

Многое можно понять по тому, задает ли кандидат те или иные вопросы. Например, когда мы говорим «react, redux» то классический вопрос чувака «в теме» это «thunk или saga»? Обычно, это начало продуктивной беседы с перекрестными вопросами, когда мы советуемся с кандидатом, узнаем его мнение о той или иной технологии, он узнает больше о нас и нашем подходе к программированию, а мы нащупываем его технический уровень.

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

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

P.S. Мы только что провели 7 собеседований за один день и это перебор, так я делать не рекомендую (хотя получилось очень результативно и это балансирует чувство, будто вскопал поле).

P.P.S. Техническое: 1) для бронирования времени собеседования пользуйтесь сервисом appoint.ly, где кандидаты сами выбирают удобное им время из предложенных слотов. 2) проводите собеседования в zoom.us, в режиме gallery, когда экран делится на 3 или 4 части и вы видите лица всех участников сразу. Этот режим максимально приближен к реальной встрече и качество звука в zoom отменное.

А как собеседуете вы? Какое худшее (или лучшее) собеседование было у вас в жизни? Делитесь в чатике @ctodailychat, у нас собралась хорошая компания.

пост №711Управление и команды

Полторы недели назад мы начали поиск второго бэкендера в команду RAWG. Позавчера мы взяли на работу не одного, а двух программистов; расскажу, как мы это сделали.

После публикации вакансии в фб и телеграме (спасибо большое за репосты!), мы взяли неделю на сбор предложений, отвечали всем сразу, что «вернемся на следующей неделе». Бесит, когда наниматели не отвечают на письма. Нам пришло 22 предложения. Из них 10 — в телеграм, 9 — на почту python@rawg.io, 3 — в фб-мессенджер. Почту мы создали как группу в GSuite и завернули в Intercom, чтобы ничего не пропустить. Я вел базу со всеми кандидатами в Airtable, это очень удобно, рекомендую.

Во вторник мы созвонились с Антоном (нашим супер-бэкендером) по зуму и прошлись по airtable-таблице предложений. Пару предложений мы отсекли на этапе сопроводительного текста и резюме, учить совсем начинающих мы пока не готовы. 7 человек нам понравились — там был или внушительный опыт и внятный сопроводительный текст или хороший код. Если кода в первом сообщении не было — я просил прислать его до собеседования. Мы договорились об одном собеседовании на вечер вторника и о пяти — на среду. Согласование времени собеседований заняло пару десятков минут, это феноменально быстро. Дело в том, что почти вся переписка велась в телеграме, это очень приятно. Этот этап занял в сумме пару часов.

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

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

То есть, размышляя над нашим предложением, человек понял, что не хочет больше работать программистом. А был идеальный кандидат! Умеет прогать и при этом «видит за деревьями лес», думает о «конечном смысле».

Фан факты:
- я попросил владельца канала с python-вакансиями репостнуть нашу вакансию. Женя (ведущий канала) скоро выходит к нам на работу;
- кандидат-студент узнал о вакансии из слек-сообщества python-ru;
- из 30 кандидатов — один школьник и две девушки (не пересекающиеся множества);
- всего 2 предложения от аутсорсеров. Обычно бывает десяток; видимо, сейлзы плохо мониторят телеграм и фб.

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