Собеседование на позицию Senior Python Developer 350т.р. #10

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

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

  • если буду видеть правильный результат буду передавать Чтобы успеть не обижайтесь можно сказать что получается когда мы распечатаем второй образец 11 будет так так первый и там и там будут единички 3 там 2 и список произведений [музыка] потом просто 4 Ну и они примут ничего не печатает и принт 4 Только остается в конце а методом добавляет в конец а тут ошибка Скорее всего будет расширяет один список другими другими взял один получается Funk 1 вернет нанофан 2 вернет нам [музыка] Falls где должно быть первый вернет

    00:00:07 - 00:02:12

  • false второе вернет True потому что 5 это как труп будет да работает получается Если правильно понял 1 2 Функции Pro не будет приводить тут верно что функция возвращает [музыка] если бывает часто делают через гору пишут что если первый экран контексте обернулся второй Вот и при 2 тоже не пританется потому что оператор мклинило или два даже не запустится так результат там все пробный вариант использовался асинхронный но у меня самом деле не большой работы там это был в одном случае как небольшой микросервис который

    00:03:10 - 00:05:05

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

    00:04:49 - 00:06:17

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

    00:05:54 - 00:07:33

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

    00:07:11 - 00:08:42

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

    00:08:06 - 00:09:56

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

    00:10:17 - 00:11:59

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

    00:11:20 - 00:13:00

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

    00:12:19 - 00:13:55

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

    00:13:38 - 00:15:12

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

    00:14:51 - 00:16:21

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

    00:15:46 - 00:17:25

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

    00:17:31 - 00:19:16

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

    00:19:01 - 00:20:41

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

    00:19:56 - 00:21:37

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

    00:21:10 - 00:22:50

  • будут брать то есть смещением порядок на вашем и можно как минимум разделить на разные Кто у нас будет отправлять то есть один worker будет брать например первые пять машин 2 5 машин 1 2 5 машин грубо говоря из головы и каждый будет обрабатывать свою группу просто первые 10 машин могут стоять нагрузка тоже она не совсем линейно получается Почему очередь не использовать Я думаю очередь уже используем я говорил какой-нибудь консилер у нас будет который будет забирать данные ты сказал входим матч подумал или забылась но я имела доступ

    00:22:22 - 00:24:10

  • кладем ли хаос и у нас консилмер там каковский какой-нибудь берет хаоса забирает и обрабатывает важно скорость Окей так так так так еще как брокеры

    00:23:38 - 00:24:12