Tech Interview Fest | Моковое cобеседование для Go Junior | Solvery + Go-go! | Владимир Балун, Ozon

Подготовка к собеседованию на Golang Developer

Транскрипция видео:

  • Владимир У тебя прикольный свитер Спасибо так погнали Всем привет Добро пожаловать на очередную встречу в рамках тех интервьюфеста тех интервью Fest это марафон моковых онлайн собесов на Junior позиции он проходит уже вторую неделю у нас на прошлой неделе было пять собесов и на это еще 5 Сегодня вы пришли на Собес по разработке на позицию годжи умер Вот И Добро пожаловать вам предстоит впереди прикольный классный полтора часа Вот что за эти полтора часа произойдет Владимир ведущий разработчик в зоне и

    00:00:05 - 00:01:20

  • проведет мог его интервью на Женю позиции и проведет его для Максима участника сообщества партнерстве котором мы делаем этот Стрим вот самое большое русскоязычное сообщество погода вступайте там много чего полезного можно найти себе Если вдруг туда не подписаны вот а меня зовут Антон я основатель проекта и мы орги Fest вот всего будет происходить ближайшие полтора часа сначала в первый час будет технический Собес далее полчаса примерно на обратную связь вопросы и подобная история вот не стесняйтесь часики задавайте вопросы

    00:00:46 - 00:02:01

  • менстру до и во второй части мы как раз будем всех собирать и перекинем Владимиру чтобы он на них на все ответил вот так что не стесняйтесь давно что-то хотели спросить самое время вот помимо этого также у нас проходит конкурс Здесь как в чем механика конкурса Вы можете выиграть бесплатно занятия с метром для этого нужно подписаться на канал Да и не просто подписывайтесь на канал все классно и под видео нужно будет оставить комментарии Почему вы хотите заниматься ментором самый прикольный интересный

    00:01:24 - 00:02:20

  • полезный глубокий в следующей понедельник мы объявим победителя в утреннее время по Москве небольшим стримым тоже и подпишем вас комментарии вот так что пишите вопрос пишите комментарии и кайфу просмотра Давайте все поддерживаем Максима Куча смайликов в комментариях Вот Максим сегодня молодец а и Владимир это тоже поддерживает потому что Владимир тоже молодец А на этом я тогда передаю слово Владимиру и желаю всем кайфового просмотра Антон Спасибо всем привет в принципе Максим можем Я думаю с тобой начинать Я

    00:01:52 - 00:03:00

  • хотел бы построить интервью таким образом что половину это будет теоретический вопрос то есть просто какие-то вопросы практического плана это не какие-то там сухие факты что и как работает Это какие-то практические теоретические вопросы будут и вторая часть это будет практическое задание где нужно будет писать немного кода Вот и первое С чего мы начнём Я хотел бы представить нас в виде разработчиков допустим тех же самых Тиньков инвестиций Да и представим что допустим у нас есть такая задача У нас есть допустим

    00:02:26 - 00:03:24

  • какой-то словарь ключом в котором будет выступать какая-то цена допустим это цена какой-то ценной бумаги Да допустим цена там Тинькова допустим Яндекса или ВК и потом хотелось бы чтобы у нас вот этой цене но ключе соответственно Некоторое количество значений То есть к примеру цена допустим 100 рублей 10 копеек и этой цене соответствует например там ценная бумага Тинькова Яндекс и так далее здесь принципе Логично можно было бы выбрать маку да для этого случая вот чтобы ты выбрал в качестве ключа и значения для этой мапы

    00:02:55 - 00:04:02

  • получается нам нужно хранить [музыка] значение это цену какую и ключ у нас будет определяться Ну то есть Какое Именно этого актива будет храниться смотри ключ Это цена как раз таки цена и допустим цене какой-то одной допустим 100 рублей 10 копеек может соответствовать несколько ценных бумаг допустим Тиньков и Яндекс стоит Так и что можно выбрать да то есть ну в принципе Здесь отлично вписывается мапа Но вот что у нас будет в качестве ключа и значения хранится в этой мате Какие типы получается можно взять в качестве ключа обычный int

    00:03:29 - 00:04:52

  • хотелось бы нам хранить и рублей копейки грубо говоря то есть допустим если цена актива 100 рублей 10 копеек нам бы хотелось бы понимать сколько Давай остановимся [музыка] можно Ну то есть Почему нет Вот хорошо давай тогда поговорим как работает Map внутри то есть что может рассказать о том как работает то есть вообще самое главное то чтобы ключи в мапе были camperbal то есть они могли участвовать в сравнении [музыка] будет потенциальная проблема когда эта проблема возникнет а вот расскажи в двух словах Как

    00:04:16 - 00:05:49

  • работает мама Как происходит ставка например сможешь описать сам алгоритм как будет происходить ставка папа это не упорядочная хранилище ключей и значений значит если у нас приходит какое-то новое ключ значение Мы сначала смотрим если у нас такое вообще в принципе ключ если Вот смотри мы как то есть я хотел поподробнее именно узнать об алгоритме того как это все работает то есть внутри устроена Как происходит ставка там Хеш функция вызывается как там все это работает Может рассказать то есть понимание нет

    00:05:19 - 00:06:33

  • наверное хорошо давай тогда пропустим этот момент что-нибудь слышал про коллизии Хеш коллизия и что такое может записать нет одним когда приходит какое-то значение когда приходит точно такой же ключ и уже значение ключа есть происходит когда у тебя два заведомо разных ключа допустим ключ ABC или abd это заведомо разные ключи допустим строки или два числа допустим 10-20 разные ключи но когда ты вычислять Хеш для этих будет один и тот же То есть это когда у тебя до двух одинаковых разных ключей получается один и тот же самый Вот и

    00:06:04 - 00:07:29

  • представим что у нас произойдет коллизия приставки float вот как будет реализовываться кризисе не знаешь нет Как именно в мобах нет но если не ошибаюсь есть два варианта ее разрешения то есть Первое это по-моему храните список лист Ну то есть будет просто добавляться дальше или вот второй метод Сейчас подумаю но скорее всего затрудняюсь сказать Окей смотри представим что у нас собаки то что ты писал представим что на баке тогда и что будет происходить вот не знаешь нет как горит как будет реализовываться колизе это приставки при

    00:06:55 - 00:08:14

  • поиске сможете писать то есть смотри у тебя будет происходить поиск тебе нужно будет брать оператор равенство с каждым значением потому что объективно говоря если у тебя значение есть у тебя ключи попали в один и тот же Бакет тебе нужно будет сравниваться где соответствует мой ключ искомому да то есть операция равно должна выполняться и вот здесь будет небольшая проблема с флотами какая есть проблема то есть допустим у тебя есть два флот числа до числа и ты хоть и хочешь их сравнить равны они друг другу лет ты просто

    00:07:39 - 00:08:41

  • будешь использовать оператора равно ли ты прибегнешь какому-то другому [музыка] равно равно не всегда будет работать из-за потери точности учиться в плавающей точности вот ну то есть это Это как происходит ты берешь Абсолют ABS берешь от А вы честь б и потом сравниваешь меньше чем И вот это будет корректное сравнивание чисел плавающей точкой вот поэтому не совсем будет корректно использовать флоты в качестве Мам давай откажемся в качестве ключей чтобы мы использовали Попробуй придумать какое-то другое решение

    00:08:14 - 00:09:25

  • что можно хранить в качестве ключа Но если флот мы не хотим использовать Ну им Кстати если додумать int можем Но если додумать вот додумать [музыка] давай подумаем Как выглядит можно сохранить У меня только одна Я пришла это создать поверхность структура которая будет хранить ровно и целую часть Ну да Слушай это отдельный вариант я допускаю да то есть создаешь структуру где у тебя будет целая часть и дробное грубо говоря да согласен рублей копейки согласен Вот но хотим допустим в intenger еще просто такая Задачка на то

    00:08:57 - 00:10:06

  • чтобы помыслить какие-то идеи то есть попробовать решить как-то по-другому хотим винт засунуть Как можно засунуть без структуры но структура принимает ответ если мы по бантиком разделим можно разделить а вообще например первую четырех битную 4 4 баттное число в первых двух байтах будет Допустим целая часть в двух потом дробная часть на то есть рублей копейки если 8 байтная то можно 6 допустим оставить подрубли два под копейки Как вариант согласен если не использовать Что еще можно придумать если с математикой подумать

    00:09:44 - 00:10:55

  • как быть просто сделать нам приходит на 100 и сохраняем а при извлечении мы делим на 100 то есть переводим Окей хорошо давай тогда поговорим о другой задаче чем задача будет связана со строками знаешь как строки работает в гол внутри Что это себя представляет [музыка] мы не можем обращаться к конкретной конкретному элементу в строке взять там стр и то потому что там байтах и будет некорректное значение выводиться А если у нас аске символ этом хранятся аске аске аскилы которые занимают один байт

    00:10:35 - 00:12:03

  • хорошо просто да если 8 тоже И он переходит за 8 8 конвертировать и потом работать хорошим работать правильно сказал что строки мутабельные Так давай представим что мы вот делаем какой-то алгоритм чтобы разрабатывали какую-то задачку и у нас возникает такая задача что внутри какой-то функции постоянно приходится сроку то есть конец какой-то разбор или парсинг чего-то идет но там не знаю Допустим мы постоянно пендим куда-то Да а Pen будет нормально работать если постоянно будем плюс писать это хороший

    00:11:42 - 00:13:09

  • будет решение или нет [музыка] Ну то есть это у нас строка строка просто грубо говоря мы берем строку пришла какая-то другая строчка мы добавили в конец еще строчка мы добавили в конец плюс равно можно [музыка] но когда ты делаешь когда ты делаешь плюс одна строчка другой будет создаваться отдельная будет отдельная память Да это все будет если мы присваиваем старый же плюс равно ну плюс через плюс это можно сделать плюс равно Ну то есть Мы просто хотим опендить примитивная пэнт хотим просто накапливать

    00:12:36 - 00:13:56

  • дополнительную часть строки в строку вот а когда получается выделяется уже на большую которая будет комбинирована И то есть получится конечная строка конечно Ну смотри да то есть это мы на каждую на каждый дополнительный память вот что можно придумать чтобы это работало более эффективно Ну по-моему самый очевидно это в руны все обернуть и потом просто точно первых и вторую строку потом руны сложить соответственно Точнее ну да а потом вернуть это все стринг но не совсем смотри Давай еще раз смотри

    00:13:23 - 00:14:56

  • у нас есть функция пишем какую-то функцию pars представим Да у нас есть функция Барс У нас есть переменная Таблица которую мы потом вернемся к результатирующее значение этой функции вы Потом приходит нам какая-то строка мы Разбираем Разбираем добавили что-то врезал сделали потом еще что-то разбираем Разбираем опять добавили и вот как вот именно вот это оптимизировать чтобы мы не писали плюс грубо говоря Ну точнее не перевыделяли память Да не то что не переведет чтобы нас не было лишних локаций зачем мы будем лишний раз

    00:14:18 - 00:15:16

  • это память [музыка] но работа с трудом это не в правильном направлении это близко это близко вот допустим стандартной библиотеки гол я не помню с какой версии появилась Такая сущность экстрим Билдер не слышал Нет он как раз таки используется для того чтобы эффективно пенять в строку более эффективно делайте по инструкцию Вот но представить допустим что вот ты видишь не знаешь как он устроен Билдер Я тоже принципе я не знал как он устроил при принципе просто предполагал как бы я мог реализовать его давай подумаем С тобой

    00:14:46 - 00:15:55

  • как разработчики как бы могли бы эффективно написать чтобы он эффективно пендел строку [музыка] просто задача эффективно Но если у нас изначально же была какая-то переменная и Мы хотим увеличить ее размер на любом придется Да перевыделять прибудет приходиться Да мы будем но не на каждой же Pen мы будем выделять память [музыка] а мы можем [музыка] смотри если мы будем хранить не строчку а слайс слайс Room например или слайсбайс если у нас допустим символы Вот это тебя подтолкнет к решению нет как это можно

    00:15:29 - 00:16:59

  • будет эффективнее делать Вот как раз таки первый вариант было то есть мы храним переводим строку а потом как раз таки у нас есть струна моя еще одна руна у нас получается [музыка] Просто я может быть немного Может я просто может у тебя есть корректно решение Может быть ты не совсем корректно выписываешь меня Ты смотри у нас есть слайс мы приедем не строгом слайс так а тот слать поля по руна или пассивно просто пьем стоит иметь что правильно понимаю и потом этот слайс руна либо это просто Окей хорошо то есть локация сейчас будет

    00:16:36 - 00:18:06

  • намного меньше согласен чем можно резервировать то есть метод игрок когда мы зарезервируем какой-то участок чтобы там меньше было локации Давай еще поместим Давай попробуем еще это эффективнее сделать представим что у нас не функция парс а представим Мы хотим постоянно какие-то маленькие строчки то есть мы всегда практически работаем с маленькими строчками два байта 4 байт постоянно приходит маленький строчки вот что нужно придумать чтобы это эффективнее работала Но единственное можно как-то запоминать

    00:17:29 - 00:18:28

  • эти маленькие строчки а потом их разом они постоянно разные приходят в разных не слышал про такую концепцию как СБУ нет мол буфер оптимизирован не наталкивает найди нет на самом деле честно говоря смотри что можно сделать можно внутри Street буфера ввести какой-то статический массив на 10-16 байт Так мы будем отпендить сперва в этот статический массив который у нас скорее всего будет на стеке где-то на локации не нужны были но как только придет строка большая который уже не влазит это статистический массив Только

    00:18:02 - 00:19:05

  • тогда мы уже будем выделять буфер и тогда уже будем опять именно в этот буфер Я как сказал если у нас очень много маленьких срок вообще мы постоянно скорее всего будем на вот этом статическом о себе обходиться этим всем вот это как бы тоже такая оптимизация который принципе можно использовать вот Окей Поехали дальше Давай с тобой поговорим тогда просится как слайс работает так слазь это динамическим массив обертка над массивом то есть внутри слайсы краски хранится указатель на массив Его длина и

    00:18:50 - 00:19:53

  • копательстве то есть сколько выделено в целом памяти для него если уже выходим закопать то есть выделяется памяти и задается также можно сказать передаются не по значению Точнее по факту не создается как копия функция но так как у нас внутри [музыка] работа со слайсами Ну то есть вставка удаление индексации элемента Какая симпатическая сложность ставка это как с обычным массивами ставка куда вот он [музыка] я правильно тут все зависит от того куда мы вставляем Аля в начало или в середину или в конец исходя от этого у нас будет

    00:19:22 - 00:21:04

  • разная синтетическая сложность если ставка от одного удаления от одного и поиск захочу я в середину ставить а Ну то есть точнее неправильно сказал в лучшем случае от одного худшем Ну смотри конец Что такое ставка в конец в конец Это просто я делаю Ленд плюс и Вставляю туда элемент так Константа но не всегда не всегда это в тот момент когда мне нужно релаксировать память согласен когда придется перекопировать эти элементы соответственно так Но если я захочу отойдем Вообще давай слайс слайс это по сути

    00:20:43 - 00:22:04

  • динамический массив это такая структура данных если я захочу вставить середину или начала динамического массива Я не могу это просто стать не придется сначала все сдвинуть потом только вставить или нет согласен да да сложность какая будет если ставка в начало или в середину [музыка] сначала Про удаление еще поговорим ударение Как нет [музыка] по идее тогда она также получается с конца Константа сначала вот ну и сначала середины если мы говорим про динамический Окей хорошо давай тогда немного отойдем от

    00:21:26 - 00:22:45

  • примитивов такое программирование Давай представим вроде нас бэкендеров и писал микросервис или какие-нибудь сервисы приходилось работать Давай представим такую ситуацию что Вот и у тебя есть какой-то сервис до микросервис ты занимаешься У тебя ответственность есть И вот тебе приходят тестировщики или клиенты говорят сервис 500 Вот расскажи пожалуйста твой план того как ты будешь выявлять проблему то есть вот у тебя ответственность у тебя рабочий день два часа дня грубо говоря тебе приходят через 500 Вот расскажи

    00:22:25 - 00:23:29

  • пожалуйста как ты будешь играть проблему Что происходит с микро сервисом сначала конечно определяем За какой функции это произошло какой функции это получается ты уже полез вход начал смотреть начал дебошить Вот иногда в код можно не есть потому что это достаточно мелко достаточно медленное решение Давай начнем сходить из более того Возможно есть какие-то критерии или какие-то не знаю средства которые позволяют достаточно более быстро прийти в чем проблема если такие возможности То есть у тебя знаешь пробитие нет Что

    00:22:57 - 00:24:03

  • такое выберите метрики логии трейсы не слышишь нет первый раз Окей окей Ну то есть смотри то есть логично предположить когда приложение происходит какие-то события не преднамеренные Да ты можешь писать Лог знаешь что такое логи нет А то есть первое можно пойти Возможно там просто по одному пользователю что-то сыпется Возможно там пользователь еще блоге посмотреть Еще что уже [музыка] метрики занимался не знаешь только метрики нет метрики Ну то есть происходит какие-то события приложения и ты их трекаешь

    00:23:55 - 00:25:14

  • олень Кремень или добавляешь что-то потом у тебя какое-то визуализатор или графа на этом просто рисуешь какие-то красивые графики сколько к природе пользователь приходит Какой у тебя нагрузка Что у тебя с памятью Что у тебя с нагрузка на процессор какие-то бизнесовые метрики и так далее не сталкиваться нет Я слышал поэтому я не думаю что это для того чтобы отслеживать ошибки на сервере Нужно больше для того чтобы для аналитики Ну в том то дело смотри как можно при помощи метрики ты заходишь смотришь на РПС знаешь что такое нет

    00:24:54 - 00:26:00

  • [музыка] смотрит на какой-то допустим поэт у тебя за ночи поездом вырос 5 раз но очевидно конечно сейчас нагрузкой нас очень много идет Видимо из-за этого мы начинаем страдать при помощи метрик можно локализовать у нас какая-то глобальная проблема у нас 7 Point и страдает или какой-то один определенный поезд страдает пытаться как-то это локализовать вот посмотреть допустим что у нас памяти Вдруг у нас память на машинке заканчивается метрики тоже это позволит сделать То есть как бы много чего позволит тебе сделать окей метрики

    00:25:26 - 00:26:28

  • еще что можно Вот это просто представить такую стрессовой ситуации тебе стучатся пользователи тебе приходит менеджер стучится к тебе в двери в личку чуть ли не каждую минуту тебе пингует и спрашивает что там нас прошло два чинить вот именно как раз таки вот я хочу посмотреть на твой процесс как мы будем выявлять проблему посмотреть можно кто релизился допустим вдруг релиз был час назад какой-то кто-то что-то катнул и допустим это Это выгодка соответствует с тем что у нас этот год скорее всего кто-то БАГУ

    00:25:57 - 00:26:52

  • выкатил согласен смотреть Последний корреляцию релизов с тем что у нас происходит какие-то ошибки согласен [музыка] Теперь я понимаю Ну смотри вход вход это в конце можно ставить Когда уже ну все Пошлите базить пошли там отлаживаться там Возможно там куда-нибудь там удаленным дебаггером подключились начинать Но это это долго это долго если тебе менеджер случится в личку через каждую минуту пишет что давайте Нет что-то не так но хотелось бы как можно быстрее выявить проблемы возможно Ну в первую очередь конечно же нужно сделать

    00:26:42 - 00:27:46

  • так чтобы пользователи не страдали потому что это чинить соответственно То есть это последняя согласен вход можно поесть начать отлаживаться еще варианты будут нет Что можно еще придумать посмотреть посмотреть какие-то Возможно там сети куда-то Connection нас порвался по сети что-то не ходит от России это тоже скорее всего покажет какому-то микросервисе мы не можем дойти запросом то есть тоже как бы ну вот этот как бы самое основное то что хотел слышать еще как бы маленький Вот это самое основное

    00:27:17 - 00:28:15

  • хорошо и Давай тогда поговорим раз мы говорили засеть в чем разница 10 так ищепина как раз под контроль связи транспортного слоя Ну смотрите если пьюдипи этот протокол транспортного уровня не сталкиваться Ну не сталкиваться нет хорошо Нет если что-то не значит абсолютно нормально то есть что-то не знаешь как бы говоришь но не работал не знаю это абсолютно Окей давай тогда еще поговорим про процессы и потоки В чем разница процессы потока в рамках операционной системы то есть возможность выполнять несколько потоков

    00:28:05 - 00:29:27

  • одновременно три диска вот параллельность многопоточности и может выполнять несколько процессов то есть мы говорим про Linux если мы говорим что там одна и та же структурка в ядре линуксов коде насечки описывает как процесс и поток то есть они абсолютно идентичны улицы на ядре то есть внутри шедоулера что процесс что и поток Вот Но в чем их разница отличие тогда конкретно на то что процесс точно что выделяет памяти из кучи а красоте потока берется смотри куча Что такое куча это адресная Это адрес сегменты внутри процесса куча

    00:29:29 - 00:31:02

  • стояк бсс дата сегмент код сегмент это все адресные сегменты внутри процесса вот тут дату то есть мы заговорили на память остановимся просто не конкретно немного сказал что куча есть процесс и так далее поток выделяется памяти из кучи которые из процессора память процесса и она хранится стеком не совсем не совсем Возможно Возможно ты хочешь рассказать но просто не совсем понятно именно объяснение что самое главное это отдельно адресное пространство у каждого процесса свое адресное пространство Ты можешь пойти из

    00:30:19 - 00:31:29

  • одного процесса написать что-то в другое согласен Если только ширины используешь такую концепцию иначе можно было подселить какого-то вируса рядом на твою машинку с банковским приложением бы все там памяти читал писал бы тебя согласен а потоки разделяют или у них свое адресное пространство Ну то есть в гол они могут общаться через каналы но мы так мы до карантина сейчас мы сейчас сейчас пока просто вот операционных систем говорим [музыка] смотри стек у каждого потока свой или нет Точно потому что нужно хранить где-то

    00:31:05 - 00:32:16

  • колстек вызов Вызов соответственно в рамках процесса у каждого потока спустя согласен Куча у каждого своя куча соответственно потоки [музыка] сегмент это сегменты для глобальных переменных грубо говоря общий У каждого свои потоки выделят Память из процесса точнее беру Это не совсем правильно говорит что не потоки просят операционной системы Выделите и память и у потока есть у операционной системы есть определенная пространство внутри процессы которые она может дать абстрактно тоже разделяется если написал глобальный

    00:31:58 - 00:33:11

  • перемену конечно же их нужно очень как-то ну то есть синхронизировать доступ Ну и код сегмент тоже разделяется Вот давай поговорим давай до груди дойдем Что такое рутина вот что такое гарантина бескорыстный поток в рубля особенностью грудины это то что она управляется не операционной системой а с ним гол кто имя кто именно как там управлять не знаешь нет составляющие то есть на машина это и просто процесс то есть где грудина будет выделять нигде В каком просто не совсем понимаю [музыка] сейчас я сформулирую постараюсь

    00:32:56 - 00:34:30

  • 300 составляющие то есть грудина и наверное меньше планировщик это меньше Да ну и Да окей Да да хорошо Ну вот эта планировщик он как вообще работает не сможет мне написать Я не хочу алгоритм сейчас просто архитектурно он в отдельном потоке в отдельном процессе где вообще находится этот планировщик как он будет работать как он будет планировать грудины не знаешь нет Или просто можно представить как инженеры можно подумать допустим если монголочку писали как бы мы могли это сделать и сборщик мусора допустим Где бы он был

    00:34:16 - 00:35:17

  • у нас работал представим что мы разработчики языка Go ты представим что не ты не я не знаю как это в гол работать но просто попробуем за дизайнеть это как бы мы сделали [музыка] [музыка] Ну суть нет даже не знаю на каком уровне может работать ну то есть наверное уровень системы он выделяется работает для гармошка лектора мы могли бы создать отдельный поток так и в рамках отдельного потока у тебя то есть стартовал мусор планировщик тоже можно было отдельным потоком сделать грубо говоря пример если представить инженеров да

    00:34:48 - 00:36:05

  • и он там раз когда ты просыпается и это можно настраивать когда он будет просыпаться этот поток активизироваться собирать можно Как пример Окей хорошо Я предлагаю тогда пойти код подписать Мне кажется теоретических вопросов достаточно сейчас я пошарю кран так видно сейчас нет экран видно демонстрацию экрана да супер так я сейчас скину Давай текст задачки смотри есть вот такой код У меня есть какой-то интерфейс назовем это так интерфейс для Киева или базы данных Знаешь такое или база данных это база данных Оля ключ значение а

    00:35:56 - 00:37:17

  • по сути есть конечно диске это база данных ключ значение для простоты что ключи и значение в этой в этой базе данных всегда строки не будет никаких типов данных так У меня есть интерфейс этой базы данных и вот у меня есть какая-то реализацию достаточно популярная киви база данных и кто-то ее написал допустим этот интерфейс Ну допустим мы не будем сейчас писать никакие запросы но этот интерфейс был реализован кем-то мы понимаем что допустим это база данных находится далеко от нас допустим наш нас

    00:36:52 - 00:37:59

  • микросервис находится в европейской части А база данных допустим где-то в Америке и нас слишком большой latence из-за того чтобы постоянно ходим туда-обратно посетить так и мы бы хотели кэшировать кэшировать у себя микросервисе данные из этой базы данных Вот давай попробуем написать кэш для базы данных то есть смотри ты Не реализовываешь ради Съешь представим что редиски за тебя уже реализован то есть запрос и так далее Просто ты используешь этот но хотелось бы сделать так хотелось бы написать такой патом декоратор чтобы могли за

    00:37:31 - 00:38:35

  • интерфейсом спрятать наш кэш чтобы это прозрачно для пользователя работала Понятно задач или нет Если нет уточняющий вопрос может задавать [музыка] которая будет удобно пользоваться [музыка] можно такую же структуру создать декоратор чтобы она соответствовала утиной вот этой типизации до этого интерфейса чтобы у него можно было вызвать Get этот Get подключу просто возвращает значение метод кейс возвращает все ключи вот такой интерфейс и хотелось бы написать а еще раз тогда уточнение кэш подразумевает

    00:38:02 - 00:39:17

  • [музыка] то есть вывод какого-то смотри никогда не стал сталкиваться с кэшированием что такой подход кэширования концепция кэширования Нет ну Смотри Представь такую ситуацию Я у меня есть этот микросервис твой допустим ты микросервис он находится в России за дипломе так база данных находится в Америке пока пакет дойдет до Америки обратно это Но это не прям что сказать очень дорого но все равно так или иначе они бесплатно поход по сети на такой большое расстояние согласен приходит пользователи говорит хочу

    00:38:54 - 00:40:02

  • допустим получить по ключу 123 какое-то значение ты берешь идешь в Америку получаешь 123 и отдаешь там допустим хранится какой-то текст и потом тебе снова приходит пользователь спрашивает А что мне по ключу 123 и ты снова пошел в Америку снова прочитал там Значение дал но Что можно сделать чтобы это эффективнее было [музыка] чтобы когда он вот здесь Давай просто начнем с простого просто кэширования и потом будем рассматривать ряд вопросов ряд проблем которые у нас будут сталкиваться будем постепенно решать и

    00:39:28 - 00:40:34

  • Ну будет зависеть от того сколько у нас времени сколько может им сделать пока просто хотелось бы самый примитивный кэш написать самый примитивный [музыка] [музыка] смотри если какие-то возникают вопросы с тем что нужно делать ты Я предлагаю лучше ты переспросить еще раз чтобы тебе четко было понятно задачи чтобы не пришлось так чтобы напишем тот код который не будет соответствовать решению этой задачи Я до сих пор тяжело понимаю но нам сейчас нужно реализовать методы получения ключа и потом хранение которые мы получили то есть

    00:40:02 - 00:41:11

  • абсолютно нормально задавать вопросы если что-то не понял то есть представим Я вроде менеджера прихожу говорю давай не будем ходить там далеко в Америку Давай что-то придумаем А ты вроде инженера ты как бы должен такой мост сделать Ты вроде должен меня спрашивать задавать вопросы как мы это что будем делать Смотри у нас представим есть реализации база данных мы не будем писать запросы не будем писать запросы можно использовать вот эту реализацию видишь здесь комментариях пометил это кем-то уже реализовано и нам хочется поверх

    00:41:05 - 00:41:58

  • этого сделать декоратор чтобы у нас там кэш был но если у нас нет данных кэше мы тогда пошли в базу данных и взяли туда данные [музыка] [музыка] Ну то есть сейчас мы просто напишем Тип который проверят существование этого ключа если мы идем сначала проверяем если существует [музыка] как был поэтому ключ У нас существует данные в редиспата Base мы просто их Return мы возвращаем если нету Значит мы идем просто отправляем запрос базу Ну смотри Ради за тобой если ты есть наше база данных то есть декоратор знаешь такой паттерн

    00:41:31 - 00:43:00

  • проектирования деграда Нет никогда не использовал я слышу дополнительную структуру так которая внутри себя будет содержать Вот это третье за тобой и которая будет идентично его интерфейс у него будет как дед так и Get Case и мы вот эту новую структуру можем она вызывать точно так же как наши но там будет подмешано некоторые логика декорирована данном случае декорировать Хорошо давай давай смотри Давай буду помогать где мы будем хранить вот эти данные ключ значения где мы это будем кэшировать Какая структура данных будет

    00:43:07 - 00:44:14

  • использоваться для этого да Давай начнем Давай напишем новую структуру данных и Давай напишем там Давай начнем с этого назовем регистрэш назовем эту структуру [музыка] То есть как бы ну декоратор вот [музыка] Нет имею ввиду имею ввиду но здесь то есть сейчас виз и не Кэс не кейс кэш кэш Да только есть лишнее Лизун также методы вот те же самые чтобы мы соответствовали интерфейсу qwel Database в любом случае да конечно да да заменить только Окей интерфейсу мы соответствуем Давай тогда кэш там писать

    00:43:49 - 00:45:22

  • Где мама Вот мы будем хранить где там где мы будем хранить эту кнопку [музыка] Почему ты называешь большой буквы с большой буквы знаешь как инсуляции был работает нет большой буквы то из других пакетов будет но вот здесь нужно помечать с большой буквы Нет как думаешь получается нет пользователь ничего не должен быть просто хотим приукрасить это на пользователя должно быть это все прозрачно быть сейчас что дальше Что нужно сделать но я понимаю да то есть мы сейчас сделаем кэша Ну смотри как есть большое его слона по

    00:45:35 - 00:46:59

  • кусочкам Я предлагаю точно также нам двигаться Давай допишем кэш бабку [музыка] супер да string string да Давай напишем еще конструктор который будет создавать эту матку то есть не сам объект будет создавать Да и внутри этого объекта папку Смотри когда пользователь будет вызывать конструктор он ничего не должен будет знать что у нас какая-то бабка внутри Что у нас там что-то кэшируется нужно это все капсулировать внутри в голову только ссылок Нет скорее всего [музыка] Окей супер нам нужно конечно да

    00:46:46 - 00:48:07

  • и мы [музыка] просто [музыка] Да чтобы это было да по дефолту создадим Map Make через Окей окей запятая только должна быть хорошо давай тогда делать дальше Давай метод Get напишем попробуем Давай попробуем словами рассказать алгоритм как дед будет работать просто чтобы четко понимал что ты понял меня задача получается Мы сначала проверяем Существует ли значение по данному по данному ключу в мае который его нет тогда мы перенаправляемся и когда мы зарядиться получили что еще нам нужно будет сделать

    00:48:22 - 00:50:03

  • тогда давай смотри в Конструктор Я предлагаю принимать тебе вот как раз таки радиста вот интерфейс чтобы можно было на то чтобы нам могли передать этот интерфейс базу данных мы потом с ней работали [музыка] интерфейс вот этого у тебя будет у тебя будет структурки рядом с мамой хранится еще объектив это будет Да и здесь лучше не привязываться жестко типа лучше использовать интерфейс здесь нужно писать [музыка] название только нужно дать Ну или Смотри ты мог бы да Ну я предпочитаю лучше дать явное название

    00:49:55 - 00:51:02

  • Если ты встраивание хочешь название дата Бейс Допустим или добавили как-то так назвал бы Да и в Конструктор я бы его принял бы чтобы мне его кто-то передал Да Окей отлично Да да ну и Давайте перед методами дойдем То есть как мы реализуем нет [музыка] Точнее обращаясь к включу внимание мы получаем два значения то есть обозначение и было бы переменную [музыка] если у нас все получилось тогда мы просто возвращаем да есть когда мы делаем запрос добавим и потом что-то вернет в любом случае тогда возвращаем

    00:50:51 - 00:52:32

  • Да давай вернемся строку Error Да ну и в первом при терне У тебя тоже не хватает ни скомпирируется [музыка] притёр не имею ввиду [музыка] и дальше просто записываем слова новое значение а получилось строка добавляем [музыка] здесь Смотри может быть какая ситуация у тебя может по ключу храниться пустой какое-то значение пустота Давай пустые значения мы не будем списывать кэш просто поверх да а зачем нам будет возвращаться но представим возможно Там какая-то ошибка кто-то записал то есть представим

    00:53:28 - 00:54:56

  • что не должно быть пустых строк это кто-то по ошибке допустим записал просто туда не будем писать хотел [музыка] [музыка] и короче по итогу просто возвращаем на то что мы получили мы возвращаем независимо от того У нас есть смотри у нас остается достаточно мало времени то есть мы не успеем все реализовать то что хотелось бы Давай просто словами обсудим Допустим мы не будем сейчас затрагивать метод кейс Да какие Вот здесь Видишь потенциальные проблемы как инженер то есть допустим ты написал такой код для

    00:54:56 - 00:56:10

  • своими микросервиса какие-то здесь можешь заранее ты можешь предугадать какие-то потенциальные проблемы с этим кодом возможно этот процесс эксплуатации какие-то проблемы Как думаешь проанализировать [музыка] а ну единственное что я могу предположить то что мы используем обычную марку может быть если там это какой-то приложение уже готова рабочие будет приходить много запросов использовать обычную [музыка] тебе нужно быть если только несколько другим будет работать захотим работать еще что не так Может быть может быть так

    00:56:06 - 00:57:46

  • может быть не так просто хотелось бы обсуждать [музыка] смотри представим что твои редис Может там где-то в США занимать терабайт 2 терабайта памяти то есть там может быть очень большая база данных с какой проблемой ты сможешь потенциально столкнуться блоки ответы слишком большое возвращаемое значение не тоже слишком большой Тебе может быть там ключики и значение по 10 байт Но их может быть очень много миллиарды там допустим да и ты никак не ограничиваешь свой кэш у тебя в какой-то момент ты постоянно конечно выполняешь наполняешь

    00:57:25 - 00:58:38

  • наполняешь алгоритмы для вытеснения данных из США ограничения США может быть знаешь какие-то алгоритмы нет настолько если размеры кэша определенного значения которые мы задали так то что будем делать чтобы просто будем удалять какие-то значения конечно может быть смысл если удалять самые большие но они даже не знаю То есть тут важнее подарить самые большие что поставил желательно еще когда ты используешь кэш У тебя есть два показателя кэш хитыш Мисс кеш хит это попадание в кэш кишмиш это промах

    00:58:13 - 00:59:25

  • желательно попадание было то можно больше всего обращается к этому Да и ты только сейчас что сейчас изобрел алгоритм то есть будем вытеснять алгоритмы которые меньше всего использовались есть еще и еще более такие алгоритмы вытеснения то есть разные подходы Окей давай еще давай последний найдешь еще потенциальной проблемы которые мы можем столкнуться в данной ситуации Хорошо давай попробую подсказать и потом попробуем сможем придумать решение представим что вот эта база данных который находится в США на сервис Он

    00:59:08 - 01:00:22

  • консьюмер он ничего не пишет эту базу данных он из не только читает есть какой-то доступ к кабину какому-то или какой-то другой микросервис может туда писать данные так получается что вы постоянно вычитываем представим наш микро сервис уже 24 часа работает он постоянно записывает все данные кэширует а кто-то пошел базе данных поменял это значение а мы никак не узнаем и пользователь Будем отдавать старые данные понимаешь проблема а то есть да устаревание данных у нас каше будет Вот как можно как можно будет решить эту

    01:00:08 - 01:01:11

  • проблему есть или нет Скорее надо как-то это решить Но единственное что отправить еще раз запрос проверить совпадает новое значение Конечно будет запрос лишний если мы на каждый запрос будем делать Зачем вообще тогда кэш [музыка] Ну хорошо смотри время хотя мы не знаем во-первых То есть просто время первых стоит у менеджера спросить как насколько мы можем заложиться на устаревание данных выше допустим минута для носок будет если данного встреч или час ОК нет второе многие базы данных поддержит такой инструмент ты подписываешься на

    01:00:39 - 01:01:56

  • изменение тебаско данных отсылает какие-то изменения в этой базе данных попса есть паттерн Если нет это базе данных то можно просто Оля воркер какой-то сделать в отдельные гарантине с какой-то периодически просто идти рефрешитку У себя как вариант вот О'кей Ну смотри в принципе по моим вопросам всё теоретически Мы практически всё Я предлагаю тебе поделиться фидбэком то есть Было ли тебе полезно может быть что-то новое узнал то есть просто поделиться как хочу сказать что я понял зачем надо работать вопросы были интересны

    01:01:29 - 01:02:33

  • большинство даже из тех которые никогда не подозревал что их можно не задумываться задать [музыка] по крайней мере главное для себя понял что еще учиться и какие нюансы есть [музыка] на самом деле вопросы были интересны то есть не знаю на некоторые конечно ему бы скорее всего ответить всё равно Окей окей спасибо Ну смотри что касается вопросами что касается вопросов как бы сейчас очень много да как бы собеседника Как проходит приходит спрашивает что такое говорить и на там слайс мапа но как бы это можно прочитать

    01:02:04 - 01:03:32

  • можно просто отвечать я же пытался моделировать такую ситуацию как бы но и последнее время даже когда людей откуда собеседой пытаюсь максимально моделировать ситуацию то что происходит человеком реальной работе То есть вы посмотрели на то был ли те опыты допустим взаимодействия отлаживания каких-то проблем когда сервису 5 сотен как бы ты действо мы посмотрели на то как вот пишешь то есть мы писали Не задачи алгоритмически Вы писали плюс минус те практически задачи которые часто приходится практике писать мы

    01:02:58 - 01:03:44

  • решали задачки теоретические которые часто приходится практике решать допустим эффективно пэнт написать допустим тебе нужно писать ты хочешь как-то эффективно сделать или ты пишешь допустим Сохранить то есть мы пытались как бы максимально моделировать то те задачи которые встречаются нормальной работе и смотреть как ты реагирует а по своему ощущениям хочу сказать что Да действительно то есть есть то над чем тебе нужно работать Ну да также я хочу сказать что определённый момент - это в принципе знаешь то есть как что там Go устроено и

    01:03:21 - 01:04:17

  • так далее но чтобы я на твоём месте делал бы это больше вот изучал бы снов то есть Что подразумевает под основами Это то же самое что такое кэширование подход Да это основа и Кашира они как бы объявлющая его он не только бэкэнде используется Евген дэви где-то будет использовать и микроконтроль допустим где-то что-то какие-то объёмные операции и так далее а пытаться То есть просто максимально как бы расширять Кругозор потому что сейчас я просто объективно смотрю Кругозор у тебя узкий То есть ты как-то смотришь э я не знаю направлено

    01:03:49 - 01:04:47

  • на какую-то проблему а когда приходится решать проблемы как правило много проблем можно решать одни вторым третьем четвёртом пятым способом И вот как раз таки Кругозор - Это позволяет Ну просто да больше узнавать теории больше практиковаться и рассчитать Вот тебе что посовету не понял На самом деле Окей Я предлагаю тогда перейти к вопросам если есть У кого какие то вопросы можете задавать в чате тогда постараюсь ответить вопрос по поводу разве при обычном сравнении у нас уместно потери точности точность

    01:04:18 - 01:05:12

  • потеряем же прямо тематических операциях А тут Какая Посмотрите Вы когда реализовываете какую-то структуру данных нужно И вот этот кейс разберу нужно предусматривать все случаи Ну кто-то допустим напишет 0,74 это будет обращение по ключу вот он пожалуйста математическая операция вы как разработчик если пишете какой-то код то что предусмотреть все проблемные случаи Да кто и как будет использовать ваш код поэтому я принял яркий случай как допустим математической операции там используется вот а что за playground такой

    01:04:48 - 01:05:58

  • вот насчет раунда не понял я попрошу уточнить этот вопрос не совсем понял они стоят Предварительно в кэш getcase бегать чтобы прежде чем проверять значение по ключу бдиться вообще в наличии ключа еще не стоит Я если честно не совсем понял вопрос тут как бы зачем куда-то бегать мы смотрим в кэш если там Значение или нет но если нет значит базу данных прочитали не совсем понял если честно Вопрос номер один как не тупить на собесе Ну тут как бы я не знаю исходя из своего опыта Я хочу сказать чем больше

    01:05:22 - 01:06:37

  • собеседование проходите тем Вы лучше То есть вы знаете как-то Это наивно предполагать что вы прочитали несколько статей нахабре Как подготовиться собеседование посмотрели несколько там мог интервью или научились но нет есть как бы постоянно страх есть постоянно такой синдром Когда вы забываете что-то примитивные вещи на собесе на них это всё лечится лечится через практику то есть просто ходить ходить с каждым собеседование вы будете что-то новое узнавать будете новое что-то какие-то концепцию что-то если даже не знаю потом

    01:06:00 - 01:06:56

  • поймете Ага мне нужно это почитать это улучшить И вот так это можно будет расти а так а плейграунд площадка Где мы код писали интервью интервью как ну то есть этот мыло Я в свое время были работал поэтому мне как бы эта площадка интервью датках по-моему называется так вот почему разрабы должны отменить шутить сеть вазона Трабл шутить отменить сеть вазон но я не говорил что это работа и админист вазон Нет я этим не занимаюсь но по крайней мере если я ответственность за какой-то микросервис и если я понимаю что допустим там

    01:06:28 - 01:07:36

  • сетевая проблема возникла я сам ее допустим определил по метрикам по каким-то да допустим у меня какие-то оливерты сработали я потом иду в админов и говорю именно у меня проблема сейчас вот поэтому я не могу сказать что я там от меня там настраивает и так далее нет вот Насколько часто спрашивают вопросы про многопоточность гол Мне кажется очень часто вообще полноценности плюс разработчик Да я на голову где-то около года то есть полноценный плюсовик потому что я как бы видел то что я смотрел в зоне как собеседую да то

    01:07:05 - 01:08:05

  • есть достаточно часто просят а написать или рейли метели или вот допустим что мы не успели написать это вот кэш мы бы дальше реализовали бы В отдельной гарантинке какую-нибудь worker который были фрешал бы кэш то есть мы бы ну то есть мы бы плавно вытекли многопоточность вы просто не успели это сделать вот и тогда достаточно часто задачки на многопоточность потому что в гол как бы сама концепция синхронности на тесно связана с языком Я думаю поэтому достаточно часто спрашивать вот реально ли попасть на Джина Если ты не

    01:07:35 - 01:08:33

  • свитчер что-то часто такая тема поднимается Просто я извиняюсь вечер Это имеется ввиду тот человек который переходит с одного языка на другой если правильно понимаю до абсолютно реально ну то есть опять-таки хочу сказать Ну да многие как бы люди сейчас приходят из других языков программирования я перешел плюс у меня в команде спички переходили с питона Но если у вас есть основы Если говорю вы просто изучаете все планомерно регулярно постепенно то в любом случае все получится как бы я считаю абсолютно

    01:08:08 - 01:09:04

  • реально то есть Go условно с нуля приходишь Ну да да это имел ввиду то есть абсолютно реального абсолютно такой же язык программирования абсолютно такая же сфера разработки backend как допустим на PHP на питоне на плюсах на Джаве на сей шарпе вот поэтому как бы все принципе то что нужно знать Back and разработчика на плюс Сахалина Джови принципе тоже самое нужно знать и был разработчику но я касаю я имею ввиду основы гол как первый язык для трудоустройства реально насколько гитхаб с проектами нужен если да какими

    01:08:36 - 01:09:39

  • голову как первый язык повторюсь реально github с проектами Это плюс всегда я считаю как бы Когда вы приходите то есть что когда вы приходите на собеседование нужно максимально стараться себе продавать А как продавать Но первый показать свои знания показать свои какие-то компетенции это раз это конечно же второе показать заинтересованность профессии это два Как сказать заинтересованность рассказать что он программирование нравится что вы допустим свободно от работы времени что-то улучшите где-то занимаетесь

    01:09:08 - 01:10:00

  • допустим менторские программы какие-то Там берете занимаетесь ментором например на курсы каких-то занимаетесь просто даже подписать рекламодатель ой рекламодатель работодателя что вы заинтересованы в этой профессии что вам Нравится этим заниматься Ну а также проекты говорят сами за себя то есть если человек интересно не интересно будет человеку которого там Ну вот если интересно зачем это нужно Он при 8 отработал с 9 до 6 забыл и понятное дело никак не интересуется он никак не будет заниматься своим развитием вот поэтому

    01:09:35 - 01:10:33

  • Стоит продавать проекты помогают продажи себя если есть все ключи есть ключ ключ значение начали проверку по получению значения по ключу не стоит ли сперва сходить в качестве ключей только при получении ключа она то есть я наверно понял то есть имелось ввиду просто при старте допустим наш объект в конструкторе допустим Прочитать все ключи Да согласен вариант Возможно когда мы писали бы worker мы скорее всего так бы сделали согласен да где Голуб жену искать вакансии если смысл спамить мигловой с надеждой на хорошие знания Я

    01:10:07 - 01:11:17

  • считаю да почему я считаю до потому что допустим какую-то проект они могут искать сеньора там Тим Лида и жена или вы допустим увидели только вакансию найти по крайней мере я просто свой опыт рассказывает я отвлекался абсолютно везде даже когда там был на сеньора просто отвлекался не всегда как бы приглашали Ну просто стоит нормально относиться к отказам если вам отказали Ничего страшного Если пригласили Ну просто попробовали свои силы попытались допустим пройти собеседование то есть абсолютно к этому относиться отказы как

    01:10:41 - 01:11:43

  • бы ну это у многих Я часто встречаю допустим приходит ко мне на консультацию люди Они говорят я в этом боюсь показаться глупым чего-то не знаю это абсолютно нормально То есть когда человек чего-то не знает особенно когда он только новичок когда у него нет Практически никакого опыта это абсолютно нормально разработчики которые постарше приходят они тоже много чего не знаете я много чего не знаю это абсолютно нормально Просто стоит нормально к этому относиться но невозможно всё знать программирование хоть как вот

    01:11:13 - 01:11:59

  • Важно ли загоняться по алгоритмам для подготовки к собеса Я считаю да Но я считаю ну смотрите я обычно как этот вопрос озвучиваю Если вы хотите разрабатывать какие-то приложения которые работают сотнями пользователям с десятками пользователей но алгоритмы не нужны ну вы напишите хоть так это кот он как это будет жить где-то будет работать пользователи перевод Живут но если вы хотите разрабатывать приложения где будет тысячи пользователей миллионы миллиарды Ну конечно же нужно эффективно это писать иначе огромные будут потери

    01:11:36 - 01:12:35

  • денежные в плане железа которым будете компенсировать неэффективные решения поэтому Если вы хотите какие-то в крупные компании работать с огромное количество пользователей конечно же алгоритмы очень важно и плюс ко всему алгоритму голову прокачивает Я считаю как бы себя самоучка Я в какое-то время как бы не знал горитмов толков я считал что имею программировать Но когда я стал развиваться в алгоритмах я стал лучше Ну то есть как бы как программист я стал меньше Божий теста лучше кого-то тестировать придумать какие-то кейсы

    01:12:06 - 01:12:59

  • решать какие-то задачи то есть алгоритмы качают это факт вот так задач если коды на детей помогут Да почему нет я просто как бы Всем советую допустим что-то пишете я по крайней мере так делаю так делаю сейчас я решаю задачки вот публикую на github пишу какие-то там я не знаю вот ты там алгоритмы переписывал свои проекты на github во-первых это потом в практике часто пригодится допустим вам нужно писать Вы уже когда-то писали Взяли у себя посмотри там Или допустим какую-то задачку помните допустим на лит-коде как-то

    01:12:32 - 01:13:40

  • решал эту задачку сразу пошли у себя взяли ну и работодатель будет видеть что вы заинтересованы я просто как бы делаете гидрацию прокачивайте так дальше насколько важно и глубоко углубляться смежные темы БДС ли на все эти Что на Ваш взгляд почитать минимум изучить Я считаю важно но не настолько глубоко как Казалось бы почитать это как бы стандарт это книги Танин Баума у него есть книги это операционная система компьютерные сети и архитектуры компьютера но не по 1000 страниц это как бы долгий путь Я это все читал

    01:13:06 - 01:14:11

  • прокачивает но это очень много времени занимает есть короткий путь То есть просто выписать как бы основные темы по операционным по архитектуре компьютеров под компьютерным сетям пройтись теорию закрепить про это будет быстрее но не так как бы полноценно вот поэтому стоит знать основы не нужно там знать Подробно как там ядро работает улица там что-то как работает прерывание под капотом это будет плюсом Если вы знаете да Но это не обязательно просто желательно а дальше Gold жены вообще нужны рынку Я

    01:13:39 - 01:14:39

  • считаю да почему нет то есть как бы рынок Сейчас рынок испытывал дефицит И сейчас мы испытывает дефицит особенно был огромный дефицит когда вот случилась война феврале Я когда в мире работал Мы очень сильно за какой-то период промежуток времени расширить свою команду свое направление знакомые в других компаниях тоже очень сильно все расширялись крупные компании Но сейчас покажет тенденция идет Все расширяется мне сказал бы за американской иногда там новостях что Google Приостановить набор и так далее

    01:14:09 - 01:15:04

  • Российский рынок Ну как бы я не сказать что постоянно мониторе Ну как бы смотрю плюс минус всё нормально так же идёт вот где набраться опыта который требуется для первой работы писать проекты идти на курсы или заниматься допустим с ментором или самому что-то делать 4 варианта сами занимаетесь берете ментора идете на курс или еще можно бесплатно устроиться куда-то поработать Вот то есть просто желательно попытаться порешать какие-то плюс-минус прикладные работы которые Вас могут встречаться в практике

    01:14:36 - 01:15:36

  • это да И потом продавать можете описывать что допустим писал проект я там использовал такой алгоритм это допустим синхронизовал девайс они там между собой в общем это просто это нужно научиться продавать еще себя Потому что я встречал много хороших программистов с опытом хорошим но неплохо продавали то есть они плохо преподносили себя как специалиста то есть они Ну вот то-то нужно как-то не сказать что нужно прям рассказывать что вы супер гипер комплексно какой-то специалист но в то же время нужно просто хорошо себя

    01:15:06 - 01:15:59

  • характеризовать дальше на какие темы применительного вы посоветовали обратить внимание в рамках подготовки к интервью на разработчиков Ну тут зависит всё в Какую компанию идёте маленькую если круп то секции собеседования это конечно алгоритмы выделил бы отдельно секция языка гол это там и параллельность и так далее есть это основы отдельно секция в некоторых компаниях Ну и секция дизайна то есть проектировать что-то какую-то систему но если мы говорим о грейдах повыше там Middle senius так далее вот допустим

    01:15:34 - 01:16:34

  • спроектировать там Twitter или нет в Инстаграме там такое вот что-то дальше с годом опыта на голову легко найти работу ребят все зависит от того какой у вас уровень человек с опытом но я просто приведу банальный пример из практики когда-то работал Тиньков у меня был стажер мне пришлось стажер Он был очень крутой алгоритмах но прямо очень крутой и он написал проект который я бы наверное на порядок дольше выписал мне просто как бы чистоту года соблюдал там какие-то концепции Ну то есть такой просто

    01:16:03 - 01:17:05

  • был очень Протон или что-то такое Олимпиаде и вот там стажёр у него нет опыта но очень крутой просто как бы смотрел на него и понимал что ему год или два промышленного опыта разработки это будет супер Какой специалист то же самое время можешь прийти другой стажер который практически ничего не знает это будет два стажера это будет абсолютно точно также один год может быть один год там вы и то и то и то поделали и вы в принципе неплохие Можете вы допустим Один год опыта приходить и по клавишам клацать и как бы никак не развиваться

    01:16:34 - 01:17:37

  • вот на чем кроме гол писали я плюсовик полноценной то есть и плюс плюс но я начинал с кем дела потом в тинькове в меле Касперский еще немного застал вот все на плюсах писал Я говорю только год я на гол работы Ну вопросы Скорее всего заканчивается Да я не знаю может быть Будут еще вопросы закончились тогда подводить итог меня еще не видели сегодня Максим Спасибо большое Молодец публично тебе сложные волнительно и ребята Давайте поддержим огонечками Максима вот сегодня было действительно очень-очень

    01:17:05 - 01:18:21

  • волнительно но класс ребята большие Молодцы вроде тоже спасибо большое за участие И кстати свой канал смог интервью поэтому это просто тоже профессионал Вот поэтому я оставлю ссылку в комментариях подходите На канал смотрите еще больше раз интервью тоже можно записаться на те вопросы которые задали глубже и задать еще какие-то вопросы которые Вас тревожит сейчас и я наверное еще напомню про наш небольшой конкурс что напишите в комментариях к этому видео Почему вы хотите к ментору и мы разыграем Одно

    01:17:52 - 01:19:00

  • занятие с ментором бесплатно Вот победители объявим следующий понедельник Вот еще раз Всем большое спасибо ставьте огонечки и увидимся с вами уже завтра Вот ребята Хорошего вечера Спасибо большое что приняли участие пока пока

    01:18:28 - 01:18:59

Менторы

Специалисты своей области, которые смогут помочь вам

  • Нигма Нурия
    Нигма Нурия

    Middle .Net Developer

  • Сущенко Татьяна
    Сущенко Татьяна

    Senior Product Manager

  • Гудков Денис
    Гудков Денис

    Middle Python Developer

  • Курочкин Константин
    Курочкин Константин

    Ведущий программист

  • Гудман Макс
    Гудман Макс

    Backend Software Engineer (PHP)

  • Гребенкин Антон
    Гребенкин Антон

    Senior .NET/C# developer

  • Ахназаров Фёдор
    Ахназаров Фёдор

    Middle DevOps Engineer | Tbilisi, Georgia

  • Шорохов Дмитрий
    Шорохов Дмитрий

    Middle C# .NET

  • Жуков Александр
    Жуков Александр

    Senior PHP-разработчик

  • Мазикин Павел
    Мазикин Павел

    Middle python developer

© 2024 HireGuru. Сделано в Санкт-Петербурге с hireguru.ru