Да, я живу тоже в Москве. Работа как бы "гибрид", но следят так себе, можно появляться пару раз в месяц в офисе и ладно. Но вообще у нас есть удаленщики как минимум из Томска, Пензы, Уфы, Нижнего Новгорода.
В Москве все собесы проходил онлайн. Тут стоит уточнить, что я игнорирую компании типа Яндекс, Авито, Сбер и прочие странные места, где надо по 3-4-5 раундов собеседований проходить.
3 собеса - это мой предел, да и то, их обычно 2. Техническое + с руководителем. Изредка бывает скрининг на 10-20 минут с HR.
Тут, конечно, стоит уточнить, что работаю в сфере кибербеза и вакансии соответствующие рассматриваю. Тут вон в статье пишут, что в кибербезе всё хорошо, и это соответствует моему опыту.
Искал работу в марте 2025-го по С++ стеку. За 10 дней собрал 5 приличных офферов, выбрал один и пошел себе работать.
Ну, ладно, положим я сеньор-помидор весь такой якобы редкий и нужен всем. Бывший коллега миддл, собрал за те же 10 дней прошел 15 собесов, собрал 9 офферов. Он менее избирателен просто в выборе компании, но из них 4 даже вполне приличные были.
Стоит уточнить, конечно, что искал работу в Москве. Как ситуация с вакансиями вне Москвы мне неизвестно.
Могу с полной уверенностью сказать, что ни один коммерческий NGFW сейчас не то, что не готов, даже близко в планах не сможет в такие блокировки, зная их внутрянку.
ТСПУ делает одна единственная контора, и делает уже очень давно. Бум российских NGFW вообще никак не связан с задачами блокировки интернета)
Все равно при вызове push_back будет проверка: не переполнился ли вектор, не надо ли снова аллоцировать. Поэтому тут мы остановились на варианте с std::vector<std::unique_ptr> без резервации.
Но почему push_back?) C emplace_back было бы компактнее))
Уже лучше, но все еще храним целых три указателя. Если таких property в классе много, а самих объектов тысячи (напр. акторы в игровом движке), может быть критично по памяти.
Возьём 100 свойств на объект и 10000 акторов. Указатель на self - 8 байт + два указателя на функции-члены (16+16 = 32 байта). 40 х 100 х 10000 = 35 MiB памяти. Сомнительная экономия.
> Не забывайте, вы имеете права кастомизировать поведение консоли и ее внешний вид
> Но я часто вижу, что бОльшую часть своего времени разработчики загораживают 10-40% своего экрана этим окном, с учетом того, что используют его 1-5% своего времени
Поясню зачем я это делаю. Любой лишний клик - раздражает и выбивает из потока куда сильнее, чем недостаток места на мониторе.
Любая кастомизация хоткеев и окон - превращает тебя в овоща, при необходимости сесть за новый ПК или при необходимости 5 минут посидеть за клавиатурой коллеги. Я стал чувствовать себя значительно комфортнее, когда перестал заниматься кастомизацией и просто приучил мозг к стандартным вещам. Некоторая кастомизация у меня есть, но она минимальна и автоматизируется. Развернуть рабочее окружение в новом месте для меня - это работа на 10 минут.
Спасибо большое за столь подробный ответ и проведенные замеры. Разница, как можно заметить, не существенная. vDSO конечно медленнее в целых два раза, но это наносекунды. В масштабах всего пайплайна - это капля в море. К тому же, замеры времени в VPP требуют синхронизации, что лишает временные метки свойства монотонности. Впрочем, это уже всё совсем другая история)
Я лишь хотел подсветить момент с тем, что получение времени - это не системный вызов. Я часто встречаю этот пример в разных учебниках и статьях, поэтому просто хотел уточнить этот момент для юных умов, что будут читать вашу статью .
Ещё раз спасибо за такой подробный ответ, редко встретишь людей, готовых заморочиться с бенчмарками для комментария на хабре.
А вот и нет :) Я сходил в стандарт (см. раздел util.smartptr.shared.const)
И
Начиная с С++17 такое поведение гарантированно стандартом.
UPD
Прошу прощения, забыл что речь шла про unique_ptr. Но гарантии там те же.
Ох, если бы...
https://habr.com/ru/companies/ruvds/articles/959262/
Под оффером я понимаю PDF документик с условиями работы, который HR присылает на почту
Юридически он точно также ничего не значит и никого ни к чему не обязывает, к слову.
Проверки СБ и прочее - они по моему опыту идут в параллель всему процессу найма и занимают до 5 дней максимум.
Да я даже когда в банк (техцентр дойче) устраивался, там проверка СБ длилась 3 дня. Откуда 2 недели я так и не понял
Ну, так я отсчитывал от первого собеса, а не от времени его назначения. Ну, добавьте неделю сверху ко времени.
По моему опыту между первым собесом и вторым с руководителем 3-5 дней обычно проходит и в течение трёх дней присылают оффер.
Главное в этой истории - игнорировать Яндекс и ему подобных. Эти да, отвечают по 3 недели.
Да даже возьмём месяц на поиск работы - все равно не 3-6 месяцев, как утверждается
Да, я живу тоже в Москве. Работа как бы "гибрид", но следят так себе, можно появляться пару раз в месяц в офисе и ладно. Но вообще у нас есть удаленщики как минимум из Томска, Пензы, Уфы, Нижнего Новгорода.
Спасибо)
В Москве все собесы проходил онлайн. Тут стоит уточнить, что я игнорирую компании типа Яндекс, Авито, Сбер и прочие странные места, где надо по 3-4-5 раундов собеседований проходить.
3 собеса - это мой предел, да и то, их обычно 2. Техническое + с руководителем. Изредка бывает скрининг на 10-20 минут с HR.
Тут, конечно, стоит уточнить, что работаю в сфере кибербеза и вакансии соответствующие рассматриваю. Тут вон в статье пишут, что в кибербезе всё хорошо, и это соответствует моему опыту.
Искал работу в марте 2025-го по С++ стеку. За 10 дней собрал 5 приличных офферов, выбрал один и пошел себе работать.
Ну, ладно, положим я сеньор-помидор весь такой якобы редкий и нужен всем. Бывший коллега миддл, собрал за те же 10 дней прошел 15 собесов, собрал 9 офферов. Он менее избирателен просто в выборе компании, но из них 4 даже вполне приличные были.
Стоит уточнить, конечно, что искал работу в Москве. Как ситуация с вакансиями вне Москвы мне неизвестно.
Как я и сказал - это наименьшая из проблем
Мозги пока нет, но вот память да. Как в свое время гугл избавил меня от необходимости помнить всякие странные вещи, вроде физических констант)
Так все конструкторы у unique_ptr - они noexcept.
Ну, есть вариант, что контейнер память не сможет выделить, то так ли стоит переживать об утечках, если память кончилась?)
Могу с полной уверенностью сказать, что ни один коммерческий NGFW сейчас не то, что не готов, даже близко в планах не сможет в такие блокировки, зная их внутрянку.
ТСПУ делает одна единственная контора, и делает уже очень давно. Бум российских NGFW вообще никак не связан с задачами блокировки интернета)
Я в жизни для собеседования столько не заморачивался))
Но почему push_back?) C emplace_back было бы компактнее))
https://godbolt.org/z/bEdx6hn4G
Гспди. Просто используйте Linux Mint с cinnamon окружением (форк gnome2) и получите то же самое, только не в noname в дистрибутиве
Такие телефоны в жизни не потянут 10000 акторов на сцене) Там дай бог 1000-то уместится)
Возьём 100 свойств на объект и 10000 акторов. Указатель на self - 8 байт + два указателя на функции-члены (16+16 = 32 байта). 40 х 100 х 10000 = 35 MiB памяти. Сомнительная экономия.
Но это даже близко не C#-like свойства. Смысл был бы, если бы финальный синтаксис получится бы каким-то таким
Ну, понятное дело, что ещё надо будет где-то прикопать this и всё такое и возможно для этого можно было бы немного макросов добавить.
А финальный результат из статьи - это просто очередная монструозная конструкция из макросов, такого придумали уже все подряд)
P.S.
Уже 26-й год скоро) Можно вместое enable_if использовать концепты
Поясню зачем я это делаю. Любой лишний клик - раздражает и выбивает из потока куда сильнее, чем недостаток места на мониторе.
Любая кастомизация хоткеев и окон - превращает тебя в овоща, при необходимости сесть за новый ПК или при необходимости 5 минут посидеть за клавиатурой коллеги. Я стал чувствовать себя значительно комфортнее, когда перестал заниматься кастомизацией и просто приучил мозг к стандартным вещам. Некоторая кастомизация у меня есть, но она минимальна и автоматизируется. Развернуть рабочее окружение в новом месте для меня - это работа на 10 минут.
Если хочется совсем cutting edge потрогать, посмотрите ещё и в сторону grout.
Спасибо большое за столь подробный ответ и проведенные замеры. Разница, как можно заметить, не существенная. vDSO конечно медленнее в целых два раза, но это наносекунды. В масштабах всего пайплайна - это капля в море. К тому же, замеры времени в VPP требуют синхронизации, что лишает временные метки свойства монотонности. Впрочем, это уже всё совсем другая история)
Я лишь хотел подсветить момент с тем, что получение времени - это не системный вызов. Я часто встречаю этот пример в разных учебниках и статьях, поэтому просто хотел уточнить этот момент для юных умов, что будут читать вашу статью .
Ещё раз спасибо за такой подробный ответ, редко встретишь людей, готовых заморочиться с бенчмарками для комментария на хабре.