Полезные материалы для С++ разработчика: о новом стандарте, висячих ссылках и технических собеседованиях
Привет, Хабр! Принесли материалы с недавнего митапа по С++ — сохраняйте в закладки, чтобы посмотреть на новогодних каникулах. Что интересного ждет в подборке?
Дискуссия о технических собеседованиях, из которой вы узнаете, какие красные флаги кандидатов отмечает Константин Владимиров, как Елена Степанова относится к алгоритмическим задачам и почему Илье Шишкову важны софтскиллы.
Обзор приятных и неприятных фич С++ 23 с точки зрения практикующего разработчика, который опробовал новый стандарт на реальных проектах.
Дюжина примеров, когда механизм lifetime extension не работает, и ответы на вопросы, что делать в таких ситуациях и как избежать последствий — ненавистных висячих ссылок.
Монады, обертки, std: expected: плюсы и минусы С++ 23 глазами практикующего разработчика
Рассказал: Илья Казаков, С++ разработчик в команде систем хранения данных, YADRO
Коротко о сути доклада: Обсудили, какие проблемы закрыл, а какие создал новый стандарт языка. Илья на примерах показал, как работает новая функциональность и в каких задачах можно применять фичи С++ 23. Его фавориты — монадический std::optional
и std::expected
, а удаленные опции aligned_storage
и aligne_uninion
Илья обещает помнить всегда.
Зачем смотреть: много практической информации — узнаете, как решать реальные задачи на С++ 23.
Презентация →
Как избежать висячих ссылок, используя lifetime extension
Рассказала: Елена Степанова, техлид в команде телекома, YADRO
Коротко о сути доклада: Елена погрузилась в теорию стандарта С++ и выяснила, что привычная всем функциональность lifetime extension иногда не решает задачу, а создает «подводный камень» — висячую ссылку. Вместе с докладчицей разобрались, как обнаружить и решить проблему с dangling reference раньше, чем она доберется до прода.
Зачем смотреть: собрать полезные ссылки на статьи о lifetime extension, посмотреть на простых примерах, как работает (и не работает) этот функционал.
Презентация →
Технические собеседования: алгоритмические задачи и красные флаги интервьюеров и кандидатов
Обсуждали:
Константин Владимиров, руководитель отдела компиляторов и инструментов разработки, YADRO.
Илья Шишков, автор курса «Алгоритмический фундамент программиста», экс-Яндекс.
Елена Степанова, техлид в команде телекома, YADRO.
Коротко о сути дискуссии: Мы собрали трех нанимающих специалистов и задали им несколько каверзных вопросов: об алгоритмических задачах, красных флагах у кандидатов и значении вузовского образования. Оказалось, что интервьюеры не любят LeetCode и не всегда могут дать конструктивный фидбек после отказа, потому что кандидат «просто не понравился». А еще ребята поделились секретом, почему даже идеальные собеседования могут не закончиться оффером.
Зачем смотреть: чтобы увидеть техническое собеседование глазами интервьюера и взять на заметку информацию для будущих интервью.
Нужно больше контента о C++? Вот несколько материалов, которые понравятся и начинающим, и опытным разработчикам:
→ Решаем задачу асинхронного ввода-вывода с библиотекой Asio от Ильи Казакова, спикера митапа и С++ разработчика в команде СХД
→ Обзор книги «С++ 20 в деталях»: доступно, но не для джунов от Дмитрия Луцива, преподавателя СПбГУ и сотрудника группа образовательных инициатив в YADRO
→ Seastar как платформа для опорной сети 5G и краткое сравнение с Boost.Asio, userver и другими от Леонида Манеева, техлида в YADRO