Полезные материалы для С++ разработчика: о новом стандарте, висячих ссылках и технических собеседованиях

16cf51a138e118b7aa0b5bec1c6f5bab.jpeg

Привет, Хабр! Принесли материалы с недавнего митапа по С++ — сохраняйте в закладки, чтобы посмотреть на новогодних каникулах. Что интересного ждет в подборке?  

  • Дискуссия о технических собеседованиях, из которой вы узнаете, какие красные флаги кандидатов отмечает Константин Владимиров, как Елена Степанова относится к алгоритмическим задачам и почему Илье Шишкову важны софтскиллы. 

  • Обзор приятных и неприятных фич С++ 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

© Habrahabr.ru