In 2018, I got my first job as a CAD system developer. Later, I developed in game development, then developed high-load services at Tinkoff, anti-virus software at Kaspersky Lab, backend for Mail.ru messengers, tracing and continuous profiling system at Ozon with a load of 5 Gbps, taught C ++ at GeekBrains and led a course on Go to OTUS. Now I am developing several highly loaded services of the Observability Platform in Yandex, and I am also developing my programming courses.
Спасибо! Правда нет комментария, почему переход на атомики дал прирост в два раза. Просто потому что мьютексы медленнее атомиков? И по итогу нужно ли проводить шардирование для такой оптимизации, или достаточно просто выравнивания?
Ох, Костик, ну ты даешь! Египетская сила, устроился Go разработчиком в Ozon и видео с интервью выложил. Да не смеши мои тапочки, балбес ты мой дорогой. Ну что за вопросы у тебя там, а ответы еще хуже! Видно, на листочке написал и заучил, как в школе перед контрольной. Мама дорогая, что же это делается, народ тут на тебя ругается, и я их понимаю. Ты бы хоть подготовился как следует, прежде чем себя в интернет выставлять. Надо же, чтобы и самому что-то понимать, а не только слова повторять. Ну ничего, может, это тебя чему-то научит. Воронины не сдаются, даже если вокруг все против. Давай, работай над собой, сынок, и может, когда-нибудь из тебя толковый разработчик выйдет. А пока... держись, Костя, и не позорь нашу фамилию!
Я так понял у Вас intel. Вот не могу, сколько не пробую, на M1 хак повторить, максимальной производительности добиваюсь при атомиках и дальше никак. Не получилось нагуглить как с кэш линией работает М1 Pro. Если у кого-то есть инфа, буду благодарен, потому что интересно повторить выравнивание на своем компе.
Интересно. А если сервис может принимать несколько запросов с разной вычислительной сложностью, то интересно, как можно модифицировать данные алгоритмы. Лайк поставил.
Тоже так думаю. Не понимаю людей которые говорят выйди в интернет информацию поищи. Я-то могу выйти в интернет поискать информацию просто есть фраза которая актуальна уже очень много лет Интернет - это большая помойка и золотое дно. сейчас нет проблемы найти информацию. сейчас есть проблемы среди 99% говна найти нормальное что-то. Собственно если курс неплохой то это и есть та работа которую за тебя выполнил. То есть отсеяли ненужную инфу. и этот roadmap могут взять все остальные. Точно так же когда ты приходишь в какую-то новую локацию ты лезешь в карту которую для тебя кто-то уже когда-то нарисовал. Ты не исследуешь этот город село локацию с нуля.
совершенно конченая структура данных... апрктически каждый перезод по ветке приводит к кэш промаху, а то и к тлб промаху... но хомячкам же пофиг на это да? а что всё еле шевелится потом всё ну так это не они виноваты... А компьютер слабый
Инфоцыган ебанный с накрученными комментами. Ты сценарий к видео через GPt что ли писал? Сразу видно с первых секунд видео что абсолютно либо поверхностно разбираешься в теме. Хотябы текст уверенный подготовь
Говорят что можно так подготовиться к собесу что даже новички из джунов проходят на мидла, потом мучаются на работе, но чаты выручают и они реально вырастают до мидлов
Классный материал, Владимир, а можете порекомендовать какую-нибудь хорошую книгу по lock-free структурам данных? А то что то гуглятся одни статьи на Хабре.
непонятно объяснение про key based - "прогоняем наши данные через хеш функцию, получаем хэш значение, потом берем остаток от деления на количество шардов". так как в итоге то получить индетификатор шарда? количество шардов на какое число надо делить, чтобы получить остаток и что делаем с хеш значением? очень странное объяснение получилось
Восстребованность требуемых знаний даже нетреть а чктверть или даже пятая часть. Но эти требования составляет начальник, которые как правило менее компетентны своиз полчинённых и они пишут их про щапас а вдруг понадобится на будущее. но когд что-то новое то компании самой надо до этого дорасти а потому есть время это освоить. Нет смысла писать в иребованих больше сверх того что надо конкретно сейчас. Но всё равно так пишут. В результате список требрваний как правило необоснованно завышен. Но по факту если человек что-то не знает это не должно быть причиной отказа если человек увлечён работой, глтов это ищучить и может. Вобще всегда лучше вщяит увлечённого челоаека чем безучастного. Потому что последний не будет стараится ращвиваться и останется на том же уроане. Первый же быстро его догонит и перегонит...Важно не пропустить такого человека и вщять дпжеесли он чего-то не знает. Мотивация в программировпнии это всё...яона преодолеет любые преграды, решит даже казалось нерешаемые задачи... И наоборот.
Нереально этим всем сраэу заниматься... Лучшещнаит что-то одно но оч хорошо. И это дб важно работе. Технологий оч много, я бы сказал слишком много. Угадать нереально. Кроме того этовель конкурс. И вы должны быть лучше всех. Иначе аозьмут другого. Таких мало. Оч ценно, если вы знаете что-то редкое и жто нужно. Тогда ваш шанс резко аозрастает. Но это мало кто знает. Вам никто не поверит если вы скажете что быстро всё выучите или поднимете уровень. Им подавай щдесь и сейчас. Тем более они никого учитт не бкдут.Можно обучиться зп деньги но это не даст аам шанс трудоустроится . И вобще вы можете обучиться не тому чему нало. А чему надо вы угадаете. Тут надо везение. Вакансий много, а желающиз намноно больше. И поэтому конкурс большой. Но они все оч специфичные. Есть большой ганс что нужных тезнологий вы не знаете даже если вы щнаете оч многл. Потому что их намного больше! Устроитья оч трудно лаже если вы гений. Потому что это ещё докащать надо. Вам в любом случае должно повезти.
Несовсем остался понятен момент с откреплением потока при системном вызове. В итоге по факту как работает? 1. Поток открепляется от процессора и переходи в тред пул? Тогда получается для этого процессора будет создан новый поток? У него же есть еще другие горутины 2. Поток не открепляется, а существует тред потоков, которые выполняют системные вызовы. Мы передаем выполнение кода этой горутины треду в тред пуле. Какой из вариантов корректный? В лекции эта часть сумбурно рассказана
Получается максимум может быть 256 горутин на один поток, тогда горутины ограничены количеством потоков * 256? Мой ноут начинает умирать при +-30к потоках, тогда максимум я смогу создать +-7,5млн горутин?
Владимир, лайк и подписка. Ждем по больше роликов по типу день из жизни программиста, подскажите пожалуйста, почему решили переехать из Анталии? планируете ли из Москвы переехать в другую страну?
7:32 На строке 47 в Push, случайно не должно быть next вместо unsafe.Pointer(node)? Мы же пытаемся исправить хвост, а не пушнуть туда свой элемент. Или я неправильно понял?
Владимир, рефлексировал ли ты на тему того сколько денег тебе принесла дрочка алгоритмических задач? Если да, то может как-то прокомментируешь? Видел в твоих видосах мнение, что алгоритмические задачи тебе оч сильно помогают в твоих повседневных задачах. Есть ли у тебя видео разбора реальных кейсов, которые доказывают необходимость дрочки академических алгоритмов? Интересуют именно такие кейсы, которые опровергнут доводы о том, что вот не получится без литкода решить какую-то задачу, которая будет соответствовать тем или иным требованиям. Мой вопрос, в принципе, связан с тема, что я все больше вижу людей, которые изумительно решают задачи литкода, но реально востребованные навыки app & system design на нуле. На мой взгляд, последнее более важно
Но на собесах практически в любую крупную it компанию надо решать задачки с литкода. Он бы банально не устроился в ВК, озон и Яндекс, если бы не умел их решать.
Не спорю. Но Бин тех != много денег. А вопрос изначально про фин профит. К тому же не во все Биг тех компании 100% спрашивают. Интервьюеры все больше предпочитают алгоритмам те вещи, о которых писал выше
@@proger150 Ну вот конкретно Владимир работает уже долгое время сугубо в бигтехе. Может конечно он где-то пропустил алгособесы за счет медийности, но простые разрабы на них как правило попадают там.
@@proger150 Я прохожу сейчас в озон финтех. На скрининговом собесе был алгос + 2 задачи по sql. Несложные, но тем не менее. Дальше будет основной собес и там обещается среди прочего одна задача посложнее. Бэкенд.
50 ns на инкремент пусть даже и атомарного счётчика - не то чтобы хороший результат. Я бы посмотрел как минимум как замеры будут зависеть от b.N и от количества горутин и вообще на корректность теста. Дизайн бенчмарка спорный, т.к. количество инкрементов на самом деле b.N*runtime.NumCPU() - но даже так 50 ns многовато.