Итоги С++ Zero Cost Conf 2024
В субботу мы провели 4-ю С++ Zero Cost Conf. Как и в предыдущие годы, я был в программном комитете (ПК), готовил часть спикеров и вёл конференцию на сцене.
Отношусь к конференции как к своему детищу, поэтому после ухода из Яндекса продолжаю её делать.
Занимательные факты, о которых вряд ли ещё где-то расскажут.
👉 Готовить конференцию мы начали, ещё когда я работал в Order Capital. Я специально ставил себе обеды на время созвонов ПК, чтобы быть уверенным, что это не вредит работе 😃
👉 После прогона я попросил Сергея Слотина убрать часть материала, потому что мы не влезали в тайминг. Следующий прогон он начал со слов: «Я тут добавил слайдов...» 😆
👉 У нас было больше 2 докладов на одно место в программе — самый высокий конкурс за все 4 года
👉 Я две недели занимался с тренером по публичным выступлениям, чтобы вести конференцию в этот раз
Советую посмотреть:
— Сергей Слотин — Memory Puzzlers
— Ваня Ходор — NRVO: что такое и как не сломать
— Константин Владимиров — Проблемы и решения в крупных C++-проектах на примере генератора LLVM-snippy
— Андрей Аксёнов — Ускорение парсинга большого количества TSV
И все остальные доклады конференции. Она в этом году выдалась крайне богатой на ценный материал 👍
В субботу мы провели 4-ю С++ Zero Cost Conf. Как и в предыдущие годы, я был в программном комитете (ПК), готовил часть спикеров и вёл конференцию на сцене.
Отношусь к конференции как к своему детищу, поэтому после ухода из Яндекса продолжаю её делать.
Занимательные факты, о которых вряд ли ещё где-то расскажут.
👉 Готовить конференцию мы начали, ещё когда я работал в Order Capital. Я специально ставил себе обеды на время созвонов ПК, чтобы быть уверенным, что это не вредит работе 😃
👉 После прогона я попросил Сергея Слотина убрать часть материала, потому что мы не влезали в тайминг. Следующий прогон он начал со слов: «Я тут добавил слайдов...» 😆
👉 У нас было больше 2 докладов на одно место в программе — самый высокий конкурс за все 4 года
👉 Я две недели занимался с тренером по публичным выступлениям, чтобы вести конференцию в этот раз
Советую посмотреть:
— Сергей Слотин — Memory Puzzlers
— Ваня Ходор — NRVO: что такое и как не сломать
— Константин Владимиров — Проблемы и решения в крупных C++-проектах на примере генератора LLVM-snippy
— Андрей Аксёнов — Ускорение парсинга большого количества TSV
И все остальные доклады конференции. Она в этом году выдалась крайне богатой на ценный материал 👍
Важное объявление о рекламе в этом канале
— Она будет.
— Редко — не чаще 1 раза в месяц.
— Полезная — только то, что я сам проверил и посчитал ценным, потому что дорожу вами.
— Нужна мне, чтобы были ресурсы на создание контента в этом канале.
— Она будет.
— Редко — не чаще 1 раза в месяц.
— Полезная — только то, что я сам проверил и посчитал ценным, потому что дорожу вами.
— Нужна мне, чтобы были ресурсы на создание контента в этом канале.
Есть ли польза от Copilot на большой кодовой базе?
У меня уже был пост о том, как я пользовался AI-ассистентом для написания кода. Но мне хотелось пойти дальше и с помощью GitHub Copilot реализовать фичу, которая затрагивает несколько файлов в большой кодовой базе. И посмотреть, как GitHub Copilot проявит себя на такой задаче.
Я долго продумывал, как снять на эту тему видео так, чтобы оно не было длинным и скучным и в то же время показывало GitHub Copilot в деле. И у меня получилось!
Сегодня предлагаю вашему вниманию новое видео на моём YouTube-канале — Есть ли польза от Copilot на большой кодовой базе? У меня получился честный всесторонний обзор реальных возможностей GitHub Copilot.
Примеры:
✅ Copilot сам пишет CMakeLists.txt
✅ Copilot понял, как пользоваться кастомным unittest framework'ом и написал тесты на несуществующую фичу
❌ Copilot удалил весь код из файла
❌ Проще оказалось написать самому
✅ Copilot сам пишет парсер
Напишите в комментариях, какие возможности Github Copilot я не рассмотрел в видео.
У меня уже был пост о том, как я пользовался AI-ассистентом для написания кода. Но мне хотелось пойти дальше и с помощью GitHub Copilot реализовать фичу, которая затрагивает несколько файлов в большой кодовой базе. И посмотреть, как GitHub Copilot проявит себя на такой задаче.
Я долго продумывал, как снять на эту тему видео так, чтобы оно не было длинным и скучным и в то же время показывало GitHub Copilot в деле. И у меня получилось!
Сегодня предлагаю вашему вниманию новое видео на моём YouTube-канале — Есть ли польза от Copilot на большой кодовой базе? У меня получился честный всесторонний обзор реальных возможностей GitHub Copilot.
Примеры:
✅ Copilot сам пишет CMakeLists.txt
✅ Copilot понял, как пользоваться кастомным unittest framework'ом и написал тесты на несуществующую фичу
❌ Copilot удалил весь код из файла
❌ Проще оказалось написать самому
✅ Copilot сам пишет парсер
Напишите в комментариях, какие возможности Github Copilot я не рассмотрел в видео.
YouTube
Есть ли польза от Copilot на большой кодовой базе?
Мой телеграм-канал о росте в программировании —https://www.tgoop.com/+0m9S8LRxrWxjM2Vi
Курс «Алгоритмический фундамента программиста» — https://stepik.org/a/62940
«Пояса по C++» — https://cppcourse.ru
В интернете часто можно услышать мнение, что генеративный ИИ скоро…
Курс «Алгоритмический фундамента программиста» — https://stepik.org/a/62940
«Пояса по C++» — https://cppcourse.ru
В интернете часто можно услышать мнение, что генеративный ИИ скоро…
"В чём сила C++, брат?"
Завтра, 8 августа, буду выступать на новом разработческом митапе вот с таким необычным названием.
Главная тема — а имеет ли смысл изучать С++ сейчас или давно пора переходить на Rust? 😃
В митапе можно поучаствовать онлайн — регистрация и программа доступны на сайте https://cpppower.ru
Мне досталась большая роль в этом мероприятии.
1️⃣ Буду участвовать в дискуссии, зачем сейчас изучать С++
2️⃣ Выступлю с докладом, на каких образовательных подходах построены наши "Пояса по С++"
3️⃣ Вместе с Пашей Филоновым проведём демо-версию нашего тренинга по зарплатным переговорам "Выше вилки"
Присоединяйтесь. Увидимся 8 августа и узнаем, в чём же сила С++, брат? 😉
Завтра, 8 августа, буду выступать на новом разработческом митапе вот с таким необычным названием.
Главная тема — а имеет ли смысл изучать С++ сейчас или давно пора переходить на Rust? 😃
В митапе можно поучаствовать онлайн — регистрация и программа доступны на сайте https://cpppower.ru
Мне досталась большая роль в этом мероприятии.
1️⃣ Буду участвовать в дискуссии, зачем сейчас изучать С++
2️⃣ Выступлю с докладом, на каких образовательных подходах построены наши "Пояса по С++"
3️⃣ Вместе с Пашей Филоновым проведём демо-версию нашего тренинга по зарплатным переговорам "Выше вилки"
Присоединяйтесь. Увидимся 8 августа и узнаем, в чём же сила С++, брат? 😉
cpppower.ru
Главная страница
Скорость ответа здорового человека
На прошлой неделе были собесы в пару подразделений Сбера. Через час (!) после каждого из них ко мне вернулись рекрутеры со словами: «Илья, всё ок. Давай планировать следующий этап».
Я честно не понимаю, почему это не всегда занимает именно так мало времени. Не понимаю, почему порой между собесом и «ок/не ок» проходит неделя, а то и больше.
В случае со Сбером это были обычные первичные секции: пописали код, поговорили за опыт, алгоритмы и структуры данных. Люди поняли, что я не верблюд и сразу предложили двигаться дальше — нормальный процесс здорового человека. Когда я в Яндексе вёл секции с написанием кода, то в 99% случаев сразу после их окончания понимал, прошёл человек или нет. Я сразу заполнял фидбек и, надеюсь, его так же быстро передавали кандидату.
Жаль, что часто бывают обратные ситуации: приходится по 5-7 рабочих дней ждать, не понимая, зажёг ты на секции или провалил 😕😰
Рекрутеры, которые на меня подписаны (я знаю, вы есть 😉), расскажите, пожалуйста, в комментариях, из-за чего случаются такие большие задержки в ответах кандидату после первых секций с написанием кода.
На прошлой неделе были собесы в пару подразделений Сбера. Через час (!) после каждого из них ко мне вернулись рекрутеры со словами: «Илья, всё ок. Давай планировать следующий этап».
Я честно не понимаю, почему это не всегда занимает именно так мало времени. Не понимаю, почему порой между собесом и «ок/не ок» проходит неделя, а то и больше.
В случае со Сбером это были обычные первичные секции: пописали код, поговорили за опыт, алгоритмы и структуры данных. Люди поняли, что я не верблюд и сразу предложили двигаться дальше — нормальный процесс здорового человека. Когда я в Яндексе вёл секции с написанием кода, то в 99% случаев сразу после их окончания понимал, прошёл человек или нет. Я сразу заполнял фидбек и, надеюсь, его так же быстро передавали кандидату.
Жаль, что часто бывают обратные ситуации: приходится по 5-7 рабочих дней ждать, не понимая, зажёг ты на секции или провалил 😕😰
Рекрутеры, которые на меня подписаны (я знаю, вы есть 😉), расскажите, пожалуйста, в комментариях, из-за чего случаются такие большие задержки в ответах кандидату после первых секций с написанием кода.
Почему вы дали мне оффер?
Я снова пустился в увлекательный процесс собеседований. За последние 3 недели их у меня было очень много. Собрал кучу интересного опыта: как ценного, так и возмутительного. Буду постепенно им делиться.
С одной компанией дошёл до оффера 🎉 Приятно 🤗 В то же время я засучил рукава, чтобы как следует разобраться, насколько мы друг другу подходим. Если собеседование — это такое первое свидание, где мы просто присматриваемся друг к другу, то оффер — это предложение жениться 😆 Во всех местах, откуда я уходил по собственному желанию, я проработал минимум 3 года, так что на этапе оффера я стараюсь поговорить с потенциальными коллегами максимально открыто и на довольно острые темы.
Я попросил поставить мне встречу с потенциальным руководителем и непосредственными коллегами и принёс на неё список вопросов. Мне кажется, они весьма дерзкие — интересно, какое мнение у вас.
— Почему вы дали мне оффер?
— Какой результат на моей позиции позволяет претендовать на высокую оценку на performance review?
— Какими качествами нужно обладать, чтобы преуспеть в вашей команде?
— Расскажите, за что в прошлый раз уволили человека в вашем отделе и как это происходило?
— Если со мной обращаться так-то и так-то, я буду идеальным сотрудником, а если так-то и так-то — то жутко неудобным и бесполезным. Вам такое подходит?
Когда я только начинал делать такие встречи, мне было очень не ловко. Я чувствовал себя засранцем, который пытается рыться в грязном белье вместо того, чтобы с улыбкой обсуждать, как мы вместе будем идти в светлое будущее 😈 Но сейчас чувствую себя весьма спокойно.
Ведь принятие оффера — это и правда серьёзный шаг, который определяет жизнь на годы вперёд, и хочется получить больше уверенности, что удастся сработаться с людьми и преуспеть на работе. А ответы на такие вопросы помогают лучше понять, что для компании важно, какие у неё на самом деле ценности и чего именно они ожидают от меня.
Понятно, что это не панацея — с дубайской компанией я тоже проводил такую встречу, но это не уберегло от mismatch'а, но все равно укрепляет фундамент для принятия решения.
Как вам вопросы? Что вы обычно делаете, получив оффер?
Я снова пустился в увлекательный процесс собеседований. За последние 3 недели их у меня было очень много. Собрал кучу интересного опыта: как ценного, так и возмутительного. Буду постепенно им делиться.
С одной компанией дошёл до оффера 🎉 Приятно 🤗 В то же время я засучил рукава, чтобы как следует разобраться, насколько мы друг другу подходим. Если собеседование — это такое первое свидание, где мы просто присматриваемся друг к другу, то оффер — это предложение жениться 😆 Во всех местах, откуда я уходил по собственному желанию, я проработал минимум 3 года, так что на этапе оффера я стараюсь поговорить с потенциальными коллегами максимально открыто и на довольно острые темы.
Я попросил поставить мне встречу с потенциальным руководителем и непосредственными коллегами и принёс на неё список вопросов. Мне кажется, они весьма дерзкие — интересно, какое мнение у вас.
— Почему вы дали мне оффер?
— Какой результат на моей позиции позволяет претендовать на высокую оценку на performance review?
— Какими качествами нужно обладать, чтобы преуспеть в вашей команде?
— Расскажите, за что в прошлый раз уволили человека в вашем отделе и как это происходило?
— Если со мной обращаться так-то и так-то, я буду идеальным сотрудником, а если так-то и так-то — то жутко неудобным и бесполезным. Вам такое подходит?
Когда я только начинал делать такие встречи, мне было очень не ловко. Я чувствовал себя засранцем, который пытается рыться в грязном белье вместо того, чтобы с улыбкой обсуждать, как мы вместе будем идти в светлое будущее 😈 Но сейчас чувствую себя весьма спокойно.
Ведь принятие оффера — это и правда серьёзный шаг, который определяет жизнь на годы вперёд, и хочется получить больше уверенности, что удастся сработаться с людьми и преуспеть на работе. А ответы на такие вопросы помогают лучше понять, что для компании важно, какие у неё на самом деле ценности и чего именно они ожидают от меня.
Понятно, что это не панацея — с дубайской компанией я тоже проводил такую встречу, но это не уберегло от mismatch'а, но все равно укрепляет фундамент для принятия решения.
Как вам вопросы? Что вы обычно делаете, получив оффер?
GitHub Copilot исправит баги в твоём API
Продолжаю исследовать возможности AI-ассистентов написания кода. Ранее на эту тему были
— пост про ожидания и реальность от использования Codeium в реальной кодовой базе
— видео с добавлением новой фичи с помощью GitHub Copilot в большую кодовую базу (😉 YouTube, 😄 ВКонтакте)
А на прошлой неделе GitHub Copilot удивил меня тем, что обнаружил баг в API класса, который я написал. Сегодня хочу об этом рассказать.
Для одного тестового задания мне понадобилось написать аллокатор поверх кольцевого буфера: запрашиваешь у него сколько-то байт, и он выделяет их с "конца" буфера. Освобождать память можно только с "начала" буфера. Сперва я сделал вот такой интерфейс:
Метод
После этого я стал писать тесты на
Ошибка в том, что мой API позволял освобождать память не только с "начала" буфера, но и внутри. А это противоречит идее кольцевого буфера. Заметив это, я поменял API вот так:
Теперь
Прелесть этой истории в том, что Copilot помог мне найти ошибку почти сразу после её допущения и не дать плохому API расползтись по коду 💪
В следующем посте расскажу ещё одну историю, как мне неожиданно помог Copilot. А сейчас поделитесь, какую пользу от AI-ассистентов написания кода извлекаете вы.
Продолжаю исследовать возможности AI-ассистентов написания кода. Ранее на эту тему были
— пост про ожидания и реальность от использования Codeium в реальной кодовой базе
— видео с добавлением новой фичи с помощью GitHub Copilot в большую кодовую базу (
А на прошлой неделе GitHub Copilot удивил меня тем, что обнаружил баг в API класса, который я написал. Сегодня хочу об этом рассказать.
Для одного тестового задания мне понадобилось написать аллокатор поверх кольцевого буфера: запрашиваешь у него сколько-то байт, и он выделяет их с "конца" буфера. Освобождать память можно только с "начала" буфера. Сперва я сделал вот такой интерфейс:
class RingBufferAllocator {
public:
explicit RingBufferAllocator(std::span<char> arena);
struct Iterator { ... }; // Абстрагирует переход через край буфера
std::optional<Range<Iterator>> Allocate(size_t bytes);
void Deallocate(Range<Iterator> range);
};
Метод
Allocate
возвращает пару итераторов либо std::nullopt
, если в буфере недостаточно места. И мне показалось логичным в Deallocate
передавать тот Range
, который вернулся из Allocate
. После этого я стал писать тесты на
RingBufferAllocator
и попросил Copilot сделать это за меня. Первый же его тест выявил ошибку в моём API:TEST(RingBufferAllocatorTest, AllocateAndDeallocate) {
std::array<char, 16> arena; // Example arena with 16 bytes
RingBufferAllocator allocator(arena);
// Allocate 8 bytes
auto range1 = allocator.Allocate(8);
ASSERT_TRUE(range1.has_value());
EXPECT_EQ(range1.value().size(), 8);
// Allocate 4 bytes, total 12 bytes allocated
auto range2 = allocator.Allocate(4);
ASSERT_TRUE(range2.has_value());
EXPECT_EQ(range2.value().size(), 4);
allocator.Deallocate(*range2); // <--- OOPS. THE BUG IS HERE
auto range3 = allocator.Allocate(8);
ASSERT_TRUE(range3.has_value());
EXPECT_EQ(range3.value().size(), 8);
}
Ошибка в том, что мой API позволял освобождать память не только с "начала" буфера, но и внутри. А это противоречит идее кольцевого буфера. Заметив это, я поменял API вот так:
class RingBufferAllocator {
public:
explicit RingBufferAllocator(std::span<char> arena);
struct Iterator { ... };
// Tries to allocate from the end of the ring buffer
std::optional<Range<Iterator>> Allocate(size_t bytes);
// Deallocates the first `bytes` bytes from the beginning of the ring buffer
void Deallocate(size_t bytes);
};
Теперь
Deallocate
тоже принимает количество байт и освобождает их только с "начала" буфера.Прелесть этой истории в том, что Copilot помог мне найти ошибку почти сразу после её допущения и не дать плохому API расползтись по коду 💪
В следующем посте расскажу ещё одну историю, как мне неожиданно помог Copilot. А сейчас поделитесь, какую пользу от AI-ассистентов написания кода извлекаете вы.
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub Copilot поможет тебе пройти собеседование
Как и обещал в прошлый раз, расскажу ещё одну историю про неожиданную выгоду от использования Copilot'а. Я проходил необычное собеседование, которое называется «production code». Смысл такой — тебе описывают задачу, которая у людей реально возникла на практике, и описывают в какой инфре и каком окружении будет выполняться твой код. А ещё говорят: «Пиши код так, как ты это делаешь на работе. В удобной IDE. Надо гуглить — гугли, надо спросить ChatGPT — спрашивай. И пошарь весь экран, пожалуйста».
Ну я включил VPN, запустил VS Code с GitHub Copilot, открыл chat.openai.com. А ещё скопировал описание задачи в комментарии в исходник, чтобы не переключаться постоянно между IDE и браузером. Важно: заметная часть описания задачи — это весьма детальное описание алгоритма обработки данных.
Стал писать код: объявил структуры данных, проинициализировал их... И тут вижу — а Copilot за меня пишет алгоритм их обработки точь-в-точь как описано в задаче! 🤯 Мне оставалось только читать этот код и убеждаться, что там нет багов (а их не было).
То есть он "прочитал" описание задачи в комментариях, понял, как её выполнить с помощью объявленных структур данных, и просто написал код! Волшебство 🪄
Интервьюер никак не комментировал, что код за меня писал Copilot. Ну и справедливости ради важно сказать, что основная сложность задачи была не в реализации этой логики. Однако важный бонус в том, что Copilot сэкономил мне прилично времени.
Надеюсь, я добавил вам мотивации использовать AI-ассистент написания кода, если вы ещё этого не делаете 😉
Как и обещал в прошлый раз, расскажу ещё одну историю про неожиданную выгоду от использования Copilot'а. Я проходил необычное собеседование, которое называется «production code». Смысл такой — тебе описывают задачу, которая у людей реально возникла на практике, и описывают в какой инфре и каком окружении будет выполняться твой код. А ещё говорят: «Пиши код так, как ты это делаешь на работе. В удобной IDE. Надо гуглить — гугли, надо спросить ChatGPT — спрашивай. И пошарь весь экран, пожалуйста».
Ну я включил VPN, запустил VS Code с GitHub Copilot, открыл chat.openai.com. А ещё скопировал описание задачи в комментарии в исходник, чтобы не переключаться постоянно между IDE и браузером. Важно: заметная часть описания задачи — это весьма детальное описание алгоритма обработки данных.
Стал писать код: объявил структуры данных, проинициализировал их... И тут вижу — а Copilot за меня пишет алгоритм их обработки точь-в-точь как описано в задаче! 🤯 Мне оставалось только читать этот код и убеждаться, что там нет багов (а их не было).
То есть он "прочитал" описание задачи в комментариях, понял, как её выполнить с помощью объявленных структур данных, и просто написал код! Волшебство 🪄
Интервьюер никак не комментировал, что код за меня писал Copilot. Ну и справедливости ради важно сказать, что основная сложность задачи была не в реализации этой логики. Однако важный бонус в том, что Copilot сэкономил мне прилично времени.
Надеюсь, я добавил вам мотивации использовать AI-ассистент написания кода, если вы ещё этого не делаете 😉
А как это на самом деле?
Миссией этого канала всегда было показывать, как на самом деле устроено IT изнутри. Именно поэтому я в деталях рассказываю о своих собеседованиях, делюсь успехами и неудачами.
Вокруг нас, с одной стороны, много маркетинга, который рассказывает о безоблачной жизни сотрудников бигтехов😎 , а с другой стороны — много слухов и разговоров, в какую соковыжималку превратились IT-компании 🤕. Я же стараюсь рассказывать реальные истории со всеми их яркими и грязными сторонами.
Следуя этой миссии, сегодня делюсь, как мой хороший друг, не меняя работу, вырастил доход на 30%, имея уже высокую зарплату.
Я взял у него интервью, из которого вы узнаете:
✅ Причины, по которым начальник на самом деле может отказывать в повышении
✅ Где брать мотивацию продолжать переговоры после нескольких подряд отказов
✅ Как выстраивать диалог с руководителем, чтобы ваши достижения невозможно было обесценить
✅ Какими качествами обладают самые ценные сотрудники
Посмотрите наше интервью и пишите в комментариях, что ценного для себя вынесли
—😉 YouTube
—😄 ВКонтакте
Миссией этого канала всегда было показывать, как на самом деле устроено IT изнутри. Именно поэтому я в деталях рассказываю о своих собеседованиях, делюсь успехами и неудачами.
Вокруг нас, с одной стороны, много маркетинга, который рассказывает о безоблачной жизни сотрудников бигтехов
Следуя этой миссии, сегодня делюсь, как мой хороший друг, не меняя работу, вырастил доход на 30%, имея уже высокую зарплату.
Я взял у него интервью, из которого вы узнаете:
✅ Причины, по которым начальник на самом деле может отказывать в повышении
✅ Где брать мотивацию продолжать переговоры после нескольких подряд отказов
✅ Как выстраивать диалог с руководителем, чтобы ваши достижения невозможно было обесценить
✅ Какими качествами обладают самые ценные сотрудники
Посмотрите наше интервью и пишите в комментариях, что ценного для себя вынесли
—
—
Please open Telegram to view this post
VIEW IN TELEGRAM
C++20: The Good Parts
Готовлю сейчас материал о возможностях С++20, которые уже применяются для создания production кода. Хочу сверить свои ощущения с общественным мнением.
Поделитесь, пожалуйста, в комментариях, что из С++20 вы применяете в своём production коде.
Готовлю сейчас материал о возможностях С++20, которые уже применяются для создания production кода. Хочу сверить свои ощущения с общественным мнением.
Поделитесь, пожалуйста, в комментариях, что из С++20 вы применяете в своём production коде.
Думал, C++ — всё, что нужно. Ошибался!
В последний год я очень много сил вкладываю в проект «Выше вилки». Это тренинг по переговорам о зарплате для айтишников.
Расскажу, почему я, разработчик, занялся soft skill'ами и ради чего развиваю этот проект.
Какие переговоры за деньги, Илья? Просто качай hard'ы
Многие годы я думал именно так 👆 Я был уверен, что достаточно расти как разработчику: изучать технологии, глубже постигать C++ и т.д. А об остальном позаботится компания: вовремя даст мне проект на вырост, повысит зарплату, чтобы я не нуждался в деньгах, укажет, что мне надо изучить для следующего шага вперёд. И знаете... Лет 5 у меня так и работало 😉 Но потом это розовое представление о карьере перестало совпадать с реальностью.
И что у тебя пошло не так?
Всё чаще я стал слышать, что «надо больше перформить». Я пытался выяснить, а что это значит? Как понять, сколько я перформлю сейчас и «больше» — это сколько? Ответы на эти вопросы я не получал.
Как-то раз на объявлении результатов performance review руководитель сказал мне: «Илья, в этом полугодии ты прям много наперформил, поэтому у тебя повышенная оценка». А я оборачиваюсь назад и понимаю, что работал так же как и в предыдущем полугодии, и не понимаю, почему сейчас больше, а тогда было меньше. И руководитель, конечно, не может внятно объяснить разницу.
Илья, ты разобрался, в чём дело?
Мне понадобилось время, чтобы понять, что идёт не так и чего мне не хватает, чтобы снова кайфовать от работы. Примерно 2 года назад я понял, что наряду с хорошим владением технологиями важно научиться эффективно коммуницировать с людьми на работе. А это очень обширная тема: там и личные границы, и работа с манипуляциями, и формирование чётких договорённостей, и т.д.
Я стал проходить различные тренинги и обучения по коммуникациям. И там заметил важный недостаток — на них было очень много теории, но чтобы поучаствовать в практике, приходилось буквально распихивать других участников.
И что дальше?
Уходя из Яндекса, я уже понимал, что хочу сделать школу коммуникации для айтишников, чтобы они не повторили мой путь, а сразу наряду с C++ развивали навык договариваться о важных для себя вещах.
Следуя советам для начинающих предпринимателей, я начал с очень узкой темы — переговоров о зарплате. Я на своём опыте знаю, как тяжело многим айтишникам обсуждать деньги. Сразу всплывает много стыда, вины, тревоги😱 В комнату врывается самозванец со своим «Ты ещё не знаешь досконально C++23! За что тебе больше платить-то?»
И мы создали тренинг, в котором каждый участник гарантированно получает практику — вам не надо никого распихивать, тренинг спроектирован так, что все отрабатывают переговорные приёмы на специально подобранных кейсах.
И что у вас есть сейчас?
Проекту «Выше вилки» уже больше года. За это время мы провели 14 тренингов. Мы начинали с однодневного 4-часового тренинга. Сейчас — это 10 дней, на протяжении которых мы проводим 4 зум-созвона: 2 посвящены переговорам за оффер, 2 — переговорам с руководством о повышении зарплаты без смены работы. Между созвонами даём домашние задания, а также время на отдых.
За год через тренинг прошло более 40 человек: разработчики, аналитики, лиды, дизайнеры, data scientists и т.д. Многие по итогам получили желаемые повышения.
Что ещё планируешь делать?
Моя цель — набор продуктов, которые учат эффективно справляться с самыми частыми ситуациям в IT. Наряду с флагманским продуктом «Выше вилки» есть ещё два:
— тренинг «Нет» — по эффективным и экологичным отказам
— онлайн-курс «Зарплатная эволюция» — если вы не хотите тренировать переговоры, но желаете изучить теорию
А как узнать побольше?
Всё про тренинг «Выше вилки» можно узнать на его сайте. Ещё в среду в специальном телеграм канале я проведу эфир «Как зарабатывать больше без переработок». Буду рассказывать в том числе и про тренинг. Приходите ✌️
Подводя итог, хочу сказать, что с определённого этапа карьеры коммуникация с другими людьми начинает играть определяющую роль в вашем успехе. Это навыки, которые вы осваиваете 1 раз, а используете потом всю жизнь. Я вношу в это вклад.
В последний год я очень много сил вкладываю в проект «Выше вилки». Это тренинг по переговорам о зарплате для айтишников.
Расскажу, почему я, разработчик, занялся soft skill'ами и ради чего развиваю этот проект.
Какие переговоры за деньги, Илья? Просто качай hard'ы
Многие годы я думал именно так 👆 Я был уверен, что достаточно расти как разработчику: изучать технологии, глубже постигать C++ и т.д. А об остальном позаботится компания: вовремя даст мне проект на вырост, повысит зарплату, чтобы я не нуждался в деньгах, укажет, что мне надо изучить для следующего шага вперёд. И знаете... Лет 5 у меня так и работало 😉 Но потом это розовое представление о карьере перестало совпадать с реальностью.
И что у тебя пошло не так?
Всё чаще я стал слышать, что «надо больше перформить». Я пытался выяснить, а что это значит? Как понять, сколько я перформлю сейчас и «больше» — это сколько? Ответы на эти вопросы я не получал.
Как-то раз на объявлении результатов performance review руководитель сказал мне: «Илья, в этом полугодии ты прям много наперформил, поэтому у тебя повышенная оценка». А я оборачиваюсь назад и понимаю, что работал так же как и в предыдущем полугодии, и не понимаю, почему сейчас больше, а тогда было меньше. И руководитель, конечно, не может внятно объяснить разницу.
Илья, ты разобрался, в чём дело?
Мне понадобилось время, чтобы понять, что идёт не так и чего мне не хватает, чтобы снова кайфовать от работы. Примерно 2 года назад я понял, что наряду с хорошим владением технологиями важно научиться эффективно коммуницировать с людьми на работе. А это очень обширная тема: там и личные границы, и работа с манипуляциями, и формирование чётких договорённостей, и т.д.
Я стал проходить различные тренинги и обучения по коммуникациям. И там заметил важный недостаток — на них было очень много теории, но чтобы поучаствовать в практике, приходилось буквально распихивать других участников.
И что дальше?
Уходя из Яндекса, я уже понимал, что хочу сделать школу коммуникации для айтишников, чтобы они не повторили мой путь, а сразу наряду с C++ развивали навык договариваться о важных для себя вещах.
Следуя советам для начинающих предпринимателей, я начал с очень узкой темы — переговоров о зарплате. Я на своём опыте знаю, как тяжело многим айтишникам обсуждать деньги. Сразу всплывает много стыда, вины, тревоги
И мы создали тренинг, в котором каждый участник гарантированно получает практику — вам не надо никого распихивать, тренинг спроектирован так, что все отрабатывают переговорные приёмы на специально подобранных кейсах.
И что у вас есть сейчас?
Проекту «Выше вилки» уже больше года. За это время мы провели 14 тренингов. Мы начинали с однодневного 4-часового тренинга. Сейчас — это 10 дней, на протяжении которых мы проводим 4 зум-созвона: 2 посвящены переговорам за оффер, 2 — переговорам с руководством о повышении зарплаты без смены работы. Между созвонами даём домашние задания, а также время на отдых.
За год через тренинг прошло более 40 человек: разработчики, аналитики, лиды, дизайнеры, data scientists и т.д. Многие по итогам получили желаемые повышения.
Что ещё планируешь делать?
Моя цель — набор продуктов, которые учат эффективно справляться с самыми частыми ситуациям в IT. Наряду с флагманским продуктом «Выше вилки» есть ещё два:
— тренинг «Нет» — по эффективным и экологичным отказам
— онлайн-курс «Зарплатная эволюция» — если вы не хотите тренировать переговоры, но желаете изучить теорию
А как узнать побольше?
Всё про тренинг «Выше вилки» можно узнать на его сайте. Ещё в среду в специальном телеграм канале я проведу эфир «Как зарабатывать больше без переработок». Буду рассказывать в том числе и про тренинг. Приходите ✌️
Подводя итог, хочу сказать, что с определённого этапа карьеры коммуникация с другими людьми начинает играть определяющую роль в вашем успехе. Это навыки, которые вы осваиваете 1 раз, а используете потом всю жизнь. Я вношу в это вклад.
Please open Telegram to view this post
VIEW IN TELEGRAM
Почему ты хочешь быть тимлидом?
На эфире проекта «Выше вилки», о котором я рассказывал в предыдущем посте, участник попросил помочь ему выстроить тактику переговоров с руководством, чтобы перейти из разработчика в тимлиды.
Естественно, нашим первым вопросом было — «А почему ты хочешь стать тимлидом?» 🧐 Участник выдал только одну причину — больше денег 💰 Дальше мы с ним ушли в разговор о том, что помимо «из сильного разработчика превратиться в так себе менеджера» есть другие способы получить больше денег, при этом оставаясь в зоне своих компетенций.
Это напомнило мне мой доклад 2022 года «Зачем мне быть CTO?» на конференции SouthHub. В IT и правда бытует мнение, что с определённого момента быть «просто сеньором» уже как-то некруто, и надо обязательно идти в тимлиды и дальше по менеджерской ветке.
Всё же, когда вы идёте в тимлиды, важно, чтобы на вопрос «зачем?» звучали слова «больше ответственности», «вносить больший вклад», «реализовать больше своих идей», «помочь развиваться другим» и т.д. Тогда в этом есть смысл. Состояние «больше денег» 🤑 или «стать круче» 💪 точно можно достичь, оставаясь не простым, а крутым сеньором. Об этом я и рассказывал на SouthHub, и за 2 года доклад не потерял актуальности.
Приглашаю вас к просмотру😉
На эфире проекта «Выше вилки», о котором я рассказывал в предыдущем посте, участник попросил помочь ему выстроить тактику переговоров с руководством, чтобы перейти из разработчика в тимлиды.
Естественно, нашим первым вопросом было — «А почему ты хочешь стать тимлидом?» 🧐 Участник выдал только одну причину — больше денег 💰 Дальше мы с ним ушли в разговор о том, что помимо «из сильного разработчика превратиться в так себе менеджера» есть другие способы получить больше денег, при этом оставаясь в зоне своих компетенций.
Это напомнило мне мой доклад 2022 года «Зачем мне быть CTO?» на конференции SouthHub. В IT и правда бытует мнение, что с определённого момента быть «просто сеньором» уже как-то некруто, и надо обязательно идти в тимлиды и дальше по менеджерской ветке.
Всё же, когда вы идёте в тимлиды, важно, чтобы на вопрос «зачем?» звучали слова «больше ответственности», «вносить больший вклад», «реализовать больше своих идей», «помочь развиваться другим» и т.д. Тогда в этом есть смысл. Состояние «больше денег» 🤑 или «стать круче» 💪 точно можно достичь, оставаясь не простым, а крутым сеньором. Об этом я и рассказывал на SouthHub, и за 2 года доклад не потерял актуальности.
Приглашаю вас к просмотру
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Илья Шишков // Старший разработчик // Яндекс.Еда
Илья Шишков // Старший разработчик // Яндекс.Еда
"Зачем мне быть СТО?"
Тезисы:
— Как разработчик в IT-компании стал лидером проекта в сфере образования?
— Почему иногда приходится выкинуть всё и начать с начала?
— Как справляться с ударами судьбы и искать…
"Зачем мне быть СТО?"
Тезисы:
— Как разработчик в IT-компании стал лидером проекта в сфере образования?
— Почему иногда приходится выкинуть всё и начать с начала?
— Как справляться с ударами судьбы и искать…
Как отказывают в IT. Часть 1
За прошедшие 3 месяца я прошёл очень много собеседований. Разных компаний было 11, а с подсчёта количества секций я уже сбился 🤯 Естественно, были офферы, отказы и отказы с моей стороны. И сегодня хочу рассказать о паре полученных мною отказов. Чтобы вы знали, что так бывает, и сами никогда так не делали 🛑
1️⃣ Компания 1
Первого собеседование — развернуть односвязный список, аккуратно расставить мьютексы в готовом коде. Второго собеседования — FizzBuzz (FizzBuzz, Карл!), аккуратно написать многопоточный код с мьютексами и conditional variables.
Третье собеседование — team fit в команду, где я полчаса рассказывал о прошлом опыте, 15 минут отвечал на вопросы, 15 минут задавал вопросы сам.
В итоге приходит фидбек: «Коллеги пришли к выводу, что их формат продуктовой разработки несколько отличается от твоих ожиданий и опыта, и они сейчас не готовы предложить позицию». ШТА? Как этот фидбек коррелирует с задачами выше? 🤯
Напомню, что у меня есть принцип — любой процесс собеседования должен заканчиваться для меня либо оффером, либо знанием, каких навыков мне не хватило, чтобы его получить.
Иду к рекрутеру за подробностями, и тут выясняется, что они вместо меня выбрали другого кандидата, с более релевантными навыками — у них там много embedded, а я — бекендер. Ну и почему сразу было нельзя сказать, что просто нашёлся более подходящий человек?! 😡
2️⃣ Компания 2 — HFT
Было только одно собеседование — зубодробительный C++, межпроцессные взаимодействия, обсуждение недр Linux, поиск багов в готовом коде, написание своего аллокатора. Всё в лучших традициях собесов в эту отрасль. Не могу сказать, что я был безупречен, но я бы оценил своё выступление как достаточное хорошее для перехода на следующий этап.
Приходит фидбек: «Пока не сможем предложить позицию под опыт, к сожалению(» И я снова: «ШТА?» Ну то есть даже на второй собес не позвали 🤯 Иду выяснять, чего же в моём опыте не хватило, и получаю ответ: «Временно остановили поиск на данную позицию и переключились на поиск Python-разработчиков. Я к вам вернусь, когда возобновим поиски» 🤔
Можно было бы сразу сказать, что дело не в моём опыте, а в их внутренних процессах.
Мораль
Мораль сей басни такова:
Когда в ответ про опыт речь,
Не думай сразу — твой тут грех.
Рекрутер мог уклончиво ответить,
Так смело уточни, чтоб правду встретить.
ChatGPT, 2024 😆
За прошедшие 3 месяца я прошёл очень много собеседований. Разных компаний было 11, а с подсчёта количества секций я уже сбился 🤯 Естественно, были офферы, отказы и отказы с моей стороны. И сегодня хочу рассказать о паре полученных мною отказов. Чтобы вы знали, что так бывает, и сами никогда так не делали 🛑
1️⃣ Компания 1
Первого собеседование — развернуть односвязный список, аккуратно расставить мьютексы в готовом коде. Второго собеседования — FizzBuzz (FizzBuzz, Карл!), аккуратно написать многопоточный код с мьютексами и conditional variables.
Третье собеседование — team fit в команду, где я полчаса рассказывал о прошлом опыте, 15 минут отвечал на вопросы, 15 минут задавал вопросы сам.
В итоге приходит фидбек: «Коллеги пришли к выводу, что их формат продуктовой разработки несколько отличается от твоих ожиданий и опыта, и они сейчас не готовы предложить позицию». ШТА? Как этот фидбек коррелирует с задачами выше? 🤯
Напомню, что у меня есть принцип — любой процесс собеседования должен заканчиваться для меня либо оффером, либо знанием, каких навыков мне не хватило, чтобы его получить.
Иду к рекрутеру за подробностями, и тут выясняется, что они вместо меня выбрали другого кандидата, с более релевантными навыками — у них там много embedded, а я — бекендер. Ну и почему сразу было нельзя сказать, что просто нашёлся более подходящий человек?! 😡
2️⃣ Компания 2 — HFT
Было только одно собеседование — зубодробительный C++, межпроцессные взаимодействия, обсуждение недр Linux, поиск багов в готовом коде, написание своего аллокатора. Всё в лучших традициях собесов в эту отрасль. Не могу сказать, что я был безупречен, но я бы оценил своё выступление как достаточное хорошее для перехода на следующий этап.
Приходит фидбек: «Пока не сможем предложить позицию под опыт, к сожалению(» И я снова: «ШТА?» Ну то есть даже на второй собес не позвали 🤯 Иду выяснять, чего же в моём опыте не хватило, и получаю ответ: «Временно остановили поиск на данную позицию и переключились на поиск Python-разработчиков. Я к вам вернусь, когда возобновим поиски» 🤔
Можно было бы сразу сказать, что дело не в моём опыте, а в их внутренних процессах.
Мораль
Мораль сей басни такова:
Когда в ответ про опыт речь,
Не думай сразу — твой тут грех.
Рекрутер мог уклончиво ответить,
Так смело уточни, чтоб правду встретить.
ChatGPT, 2024 😆
Попытка №2
2024-й год у меня получается удивительным — у меня в нём было 2 первых рабочих дня 😃 А когда этот год закончится, у меня за плечами будет 2 испытательных срока 😆
Выше я уже писал, что у меня были собеседования в 11 компаний — можете видеть на фото, с какой из них мы договорились❤️ Вот уже неделю я работаю в СберТехе разработчиком в R&D команде СУБД Pangolin. Это реляционная СУБД на основе PostgreSQL, которая применяется как в Сбере, так и продаётся наружу.
Должность у меня здесь — ведущий эксперт по технологиям 😎 Надо отдать Сберу должное — очень крутые названия должностей они дают сотрудникам: «ведущий эксперт по технологиям» прямо греет душу 😆
Никогда не работал в R&D — вот и узнаю, насколько мне это подходит. Во время собеса мне дали безумно интересное тестовое задание, которое я выполнял с огромным удовольствием. Если рабочие задачи будут такими же — это место точно для меня 👍
Дальше обычно надо говорить, как я воодушевлён и полон энтузиазма делать большие свершения на новой работе. Но у меня не так — я не воодушевлён, а, скорее, сосредоточен и сдержанно наблюдаю, как развивается ситуация 🤫 После дубайской истории сложно быть сразу воодушевлённым — ещё успею.
В общем, пожелайте мне удачи...
Ну и невозможно избежать сравнений СберТеха с Яндексом, в котором я провёл 11 лет:
— в СберТехе на кофепоинтах нет еды... Никакой... Вообще... Только вода, чай и кофе. Это прям неожиданно — я думал все бигтехи вкладываются в подкормку сотрудников
— когда приходишь в Яндекс, встречаешь кучу непонятных слов: хурал, Этушка, Стафф, Стартрек и т.д. Но Сбер встречает тебя жёстче: СУДИР, АС, ПФ, КТС 😆
— Сбер на каком-то космическом уровне вкладывается в корпоративный спорт 🚀 Я сходил на одну тренировку для сотрудников, и у меня просто челюсть упала на пол, когда я увидел, каку них у нас оснащён спортзал в офисе! Не каждый фитнес-клуб может похвастаться таким количеством и качеством инвентаря. В общем вместо печенек в Сбере закупают гантельки 💪
2024-й год у меня получается удивительным — у меня в нём было 2 первых рабочих дня 😃 А когда этот год закончится, у меня за плечами будет 2 испытательных срока 😆
Выше я уже писал, что у меня были собеседования в 11 компаний — можете видеть на фото, с какой из них мы договорились
Должность у меня здесь — ведущий эксперт по технологиям 😎 Надо отдать Сберу должное — очень крутые названия должностей они дают сотрудникам: «ведущий эксперт по технологиям» прямо греет душу 😆
Никогда не работал в R&D — вот и узнаю, насколько мне это подходит. Во время собеса мне дали безумно интересное тестовое задание, которое я выполнял с огромным удовольствием. Если рабочие задачи будут такими же — это место точно для меня 👍
Дальше обычно надо говорить, как я воодушевлён и полон энтузиазма делать большие свершения на новой работе. Но у меня не так — я не воодушевлён, а, скорее, сосредоточен и сдержанно наблюдаю, как развивается ситуация 🤫 После дубайской истории сложно быть сразу воодушевлённым — ещё успею.
В общем, пожелайте мне удачи...
— в СберТехе на кофепоинтах нет еды... Никакой... Вообще... Только вода, чай и кофе. Это прям неожиданно — я думал все бигтехи вкладываются в подкормку сотрудников
— когда приходишь в Яндекс, встречаешь кучу непонятных слов: хурал, Этушка, Стафф, Стартрек и т.д. Но Сбер встречает тебя жёстче: СУДИР, АС, ПФ, КТС 😆
— Сбер на каком-то космическом уровне вкладывается в корпоративный спорт 🚀 Я сходил на одну тренировку для сотрудников, и у меня просто челюсть упала на пол, когда я увидел, как
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM