Собеседование python разработчик. Запросы ORM Джанго. Андрей Смелов.

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

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

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

    00:00:00 - 00:01:33

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

    00:00:46 - 00:02:14

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

    00:01:33 - 00:03:03

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

    00:02:18 - 00:03:47

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

    00:03:10 - 00:04:32

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

    00:03:56 - 00:05:41

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

    00:04:48 - 00:06:26

  • армия вот посмотри что там потому что да так тогда поступим таким образом cd анфиса тогда просто ты просто видишь в папке on feet of a test manager не того она сработает у нас тут такой анализу многие а я тебе скажу что это у нас по налезла это все окей там файле настроек сделано так чтобы все запросы глаза он лоббировал сюда я видел как кидала сюда поэтому все нормально и теперь собственно уран сервера отлично работает прекрасно в общем по логике наши давай тогда откроем вьюки и посмотрим что у нас там творится почему

    00:05:54 - 00:08:16

  • он работает не так как мы хотели файл view white cream вот смотри дело в том что здесь сознательно удалены определенные запросы до их нужно написать но я обратил внимание что здесь должен быть борисик а у нас не состояться как это прекрасное дело прекрасно это звучит как вызов и это является заданием давай напишем за прыщики так индекс здесь у нас должны быть только то мороженого которого флакон main да если посмотрите в базу данных если можешь открыть модельки там в общем то в модельки есть у каждой есть флаг онлайн вот он да блин

    00:07:05 - 00:08:48

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

    00:08:00 - 00:09:22

  • посмотрим что у нас вывалилась запросим на этой главную страницу так отлично и давай посмотрим и скилл который запрос который бы этой как который это сделал обрати внимание что мы здесь вот селекция из базы данных name description все а describes он нигде не используем нашим шаблоном как бы сделать так чтобы мы его из базы данных даже вообще не брали есть идей по моему есть такая штука как exclude или что-то вроде так или или можно выбрать белье le vele sllist звезда хорошо давай сделаем так чтобы к

    00:09:13 - 00:11:07

  • нам на главное попадало только то что мы реально используем чтобы так и там по моему имена полей собственно прописывается так а что нам нужно я могу наверное шаблоне на посмотреть что 8 3 суда конечно шаблон тоже можно направо вытащить тогда будет удобно тоже кстати где шаблон который на это ну вот она на сайт яндекс я пытаюсь по контуру на него попасть на не могу просто перейти нее думаю что и так открыться нет нет растровой паровой кнопка открыть о понравится вот так тут у нас include подключил

    00:10:15 - 00:12:33

  • ответственно лежит он в под правильная иерархия кстати чтобы он лежит в папке приложение линкорах зачем так вот сложную неужели нельзя было просто взять и куда сделает уже нормальный кот include и какие-то если не ошибаюсь по code style django так делается потому что это как-то связано с платежами где используется параметр на in space ну ладно хорошо я думаю что мы до этого дальше дойдем давай откроем карточку и посмотрим что мы тут и стульям так тот у нас поля name да и все ну значит хорошо давай тогда

    00:11:28 - 00:12:56

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

    00:12:12 - 00:14:14

  • не переносят так автоматический 3-го рисует так ну это не поход 100 его django но не состоянии не помню как к нему там четвертными пробелом туда отбивается не критично ладно лишь бы работало так будет работать до должна работать отличным давай тогда сделаем остальные по-быстрому глухие займемся чем-нибудь нормально мужем так здесь у нас все мороженое этот все просто комплекс так мороженое сойди запроса хорошо что-то скажешь про джангашу tkat get under top 404 и вообще на практике его использовал зачем нужен да дело было

    00:13:31 - 00:15:50

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

    00:15:19 - 00:16:55

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

    00:16:30 - 00:18:00

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

    00:17:40 - 00:19:30

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

    00:18:49 - 00:20:35

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

    00:19:45 - 00:21:12

  • тоже логично тогда она действительно один-ко-многим но одно в одной категории много мороженого да да вот так логика такая должны быть давай вот вот эту логику тогда сейчас напишу так вот тогда для начала будем ну допустим самым ограничим как по длине а черт field вообще может без ограничений по длине работает может по моему там дефолтный стоит если оказываешь wax and он не впал какое-то значение у пусть будет сотню ну пусть будет да почему нет и какой-нибудь давайте помоем это его название воды для разминки как раз

    00:20:29 - 00:22:03

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

    00:21:41 - 00:23:27

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

    00:22:44 - 00:25:32

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

    00:24:44 - 00:26:14

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

    00:25:31 - 00:27:11

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

    00:26:20 - 00:29:07

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

    00:27:42 - 00:29:22

  • прекрасно так теперь следующая задача сделать так чтобы около название мороженого появилось название его категорий в админке нет ни в админке в шаблоне огонь и доведем шаблон ищем где у нас показывается карточка мороженого и очень хочется чтобы там появилась ну пусть будет так h5 то же самое здесь как бы выдумать они были я бы категорию сделал поменьше чем название пусть это будет на примере наших h3 побольше значит да не то тогда пусть будет . так и выхожу вращением чё сейчас запущу снова так здесь мы идем во

    00:28:42 - 00:30:42

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

    00:30:01 - 00:31:51

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

    00:31:24 - 00:33:15

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

    00:32:42 - 00:34:49

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

    00:33:44 - 00:35:23

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

    00:34:37 - 00:36:21

  • там где у нас где тот же core 404 а давай еще чтобы туда где то вот в этой в ухе у нас на страничку выдавалась то же имя категории то есть там дело нас ice cream детей вы есть html и шаблончик давай куда-нибудь туда выкинем категорию тоже тоже хочется чтобы чтобы мы смотрели и видели какой категории относится это вот не критично куда-куда лагуна нити под дискрипшн например взорвут работать собственно тут уже через точку просто категории этот байк в моем из работает вообще у нас достается все там полости

    00:35:52 - 00:37:22

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

    00:37:05 - 00:39:24

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

    00:38:26 - 00:40:06

  • так возможно сработать не уверен да посмотрим есть только один способ выяснить это продам действительно не так не сработает ну собственно да он не принимает такое значение q делать так категории так а вот так вот он сработает наверное нет да если мы сюда напишем selected думаю что это эти же будет готовый объект вот смотри давай подумаем вообще что делает вот у нас идет уже котов 404 он по сути из вот этой screen вот из той скрим видимо этого скрип гол у нас подразумевается да то что у нас есть по

    00:39:32 - 00:41:43

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

    00:40:37 - 00:42:33

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

    00:41:35 - 00:43:29

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

    00:42:32 - 00:44:17

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

    00:43:26 - 00:45:56

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

    00:44:46 - 00:47:02

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

    00:46:09 - 00:47:49

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

    00:46:59 - 00:49:19

  • уже у меня завтра срок по принятию потому что завтра мне должен прилететь еще 10 раз есть приходят на публичные и все реакторах полный формат это здорово ну классно не зря работы в видимо еще бы приведение жирным и получи лучше самому все круто я думаю что если продолжишь в том же духе вообще сочетаются и прям нравится посты пишет мужика мешая задачки тоже на co2 rsi тоже нравится потому что интересно таймкиллер просто шикарный там оттуда уже уровня ipad самое приятное там что можно смотреть решении других

    00:48:08 - 00:50:01

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

    00:49:05 - 00:50:32