Валентин Удальцов, Виталий Лихачев: Публичное собеседование Senior Software Engineer (PHP)

  Рет қаралды 11,232

{ между скобок }

{ между скобок }

4 ай бұрын

Публичное собеседование на Senior PHP. Разберемся какие сейчас актуальные вопросы по PHP обсуждают на собеседованиях - паттерны разработки, полиморфизм/вариантность в чистом PHP, SOLID, DDD, микросервисные паттерны.
Проводить собеседование будет Валентин Удальцов - активный участник сообщества PHP, преподаватель. Автор каналов Пых (t.me/phpyh) и PHP Point ( / phppoint , контрибьютор различных проектов экосистемы PHP (github.com/vudaltsov).
Проходить собеседование будет невероятно крутой - Виталий Лихачев 🔥 Fullstack разработчик. Работал и в стартапах, и в крупных компаниях. Пилил сложный динамичный фронт в стартапе, настраивал CI/CD и aws, оптимизировал бэкенд и проводил технические собеседования - поэтому понемногу знает жизнь программных проектов со множества сторон.
Канал с анонсами t.me/megdu_skobok
Boosty boosty.to/megdu_skobok
Ламповый чат t.me/backend_megdu_skobkah
Полезные ссылки
📖 Пых t.me/phpyh
📖 PHP Point / phppoint
📖 Как разобраться во внутрянке php www.phpinternalsbook.com/
📖 Что еще почитать про устройство php npopov.com/
📖 Как держать растущие нагрузки www.scalingphpbook.com/
📖 Как начать по-настоящему понимать работу postgresql на больших проектах postgrespro.ru/education/book...
📖 Возможности pg • Один PostgreSQL, чтобы...
📖 Если вы хотели свитчнуться в go, middle+ с опытом, но не знаете с чего начать, welcome slurm.io/go
📖 PHP weekly www.phpweekly.com/
📖 Postgres weekly postgresweekly.com/
📖 K8s weekly learnk8s.io/learn-kubernetes-...
📖 Software lead weekly softwareleadweekly.com/

Пікірлер: 48
@mezhdu_skobok
@mezhdu_skobok 4 ай бұрын
Полезные ссылки 📖 Пых t.me/phpyh 📖 PHP Point kzfaq.info 📖 Как разобраться во внутрянке php www.phpinternalsbook.com/ 📖 Что еще почитать про устройство php npopov.com/ 📖 Как держать растущие нагрузки www.scalingphpbook.com/ 📖 Как начать по-настоящему понимать работу postgresql на больших проектах postgrespro.ru/education/books/internals 📖 Возможности pg kzfaq.info/get/bejne/frGWmr2j1rzPgGg.html 📖 Если вы хотели свитчнуться в go, middle+ с опытом, но не знаете с чего начать, welcome slurm.io/go 📖 PHP weekly www.phpweekly.com/ 📖 Postgres weekly postgresweekly.com/ 📖 K8s weekly learnk8s.io/learn-kubernetes-weekly 📖 Software lead weekly softwareleadweekly.com/
@user-ri7mk9ek6e
@user-ri7mk9ek6e 3 ай бұрын
40:25 @vudaltsov, забавно было услышать, что cache->get() вместо cache->has()/cache->get() решает проблему гонки в мировозрении пхп-шника :D
@EvilGazz
@EvilGazz 3 ай бұрын
Спасибо, очень интересно!
@SemyonF89
@SemyonF89 Ай бұрын
Крутой собес. Кот очень любит, доверяет❤
@yashkevich8164
@yashkevich8164 3 ай бұрын
Мой синдром самозванца крутанул на максимум))
@user-es1ke6jb4m
@user-es1ke6jb4m 2 ай бұрын
где почитать про version в запросах
@IliaGlazkov
@IliaGlazkov 16 күн бұрын
Прекрасное интервью!🎉
@solvex8304
@solvex8304 4 ай бұрын
Господи, чего только сейчас не вешают на бедных PHP-шников: и настроить *nix под работу, и html, css, js, и вью всякие, теперь вот и ci/cd настраивать... Что дальше будет, возврат от фронтендер/бэкендер/девопс к веб-мастерам?
@aragnophy
@aragnophy 4 ай бұрын
От вакансии и компании зависит. Могут и принтеры заправлять заставить, если вы на такое подписались ;)
@solvex8304
@solvex8304 4 ай бұрын
@@aragnophy Собес называется Senior Software Engineer (PHP). Я так понимаю, что вакансия PHP-шная, причём тут CI/CD?
@vudaltsov
@vudaltsov 4 ай бұрын
@@solvex8304 , от **современного** Senior PHP я ожидаю, что он хорошо разбирается в современных инструментах PHP и готов сказать, что должно быть добавлено в пайплайн для успешного Continuous Integration. Это часть методологии dev-ops. По-вашему ops должен знать специфику PHP? Всякие линтеры, статанализаторы, фреймворки для тестирования? Нет, конечно, это ответственность разработчиков. И вместе с ops-ами они заинтересованы в том, чтобы прод всегда был в отличном состоянии, насколько это возможно. При чём тут html/css/js я вообще не понял.
@solvex8304
@solvex8304 4 ай бұрын
@@vudaltsovПочему, PHP-программист же не пойдёт в компанию, где питон или нода на бэке. Если девопс идёт туда, где используется php, то да, должен знать специфику. А html/css/js - при том, что такая тенденция пошла, всё это вешать на php-шника. Откроешь практически любую вакансию PHP-программист и в них это всё указано в требованиях.
@snikitin32
@snikitin32 2 ай бұрын
​@@vudaltsovты как та женщина с видео 😂 половину слов на английском, половину на русском😂
@skipper3355
@skipper3355 4 ай бұрын
1:04:00 - очень хороший подход.
@barackobama2722
@barackobama2722 6 күн бұрын
Я 20 лет в IT и делаю вывод, что часть людей это энергетические вампиры, а остальная часть жертвы для этих энергетических вампиров, которые медленно из жертвы вытягивают жизненные силы с изощренностью маньяка! Даже здесь это происходит!
@lebuhorskiyblog5897
@lebuhorskiyblog5897 4 ай бұрын
Круто
@nightblure
@nightblure 4 ай бұрын
Скиньте ссылку на курс)
@makeitgit
@makeitgit 4 ай бұрын
Ссылка на slurm есть в описании видео, в комментарий не смогу приложить, автомодерация ссылку не пропустит
@sergeykozhenkov371
@sergeykozhenkov371 4 ай бұрын
Каким образом лучше создавать DTO'шки: передавая аргументы в конструктор при вызове new или путём цепочки вызовов сеттеров (текучий интерфейс)?
@vudaltsov
@vudaltsov 4 ай бұрын
DTO желательно чтобы были иммутабельные. Так что только через конструктор. Менять через with методы, получая новые инстансы.
@sergeykozhenkov371
@sergeykozhenkov371 4 ай бұрын
​@@vudaltsovНо ведь если у нас не все свойства DTO будут задействованы, то в случае, когда возникает необходимость юзать пару-тройку и они в конструкторе будут в конце, то придётся проставлять null'ы / дефолтные значения для тех, которые перед ними. Выглядит такое грамоздко и некрасиво. А так, вызов пары сеттеров и всё супер
@vudaltsov
@vudaltsov 4 ай бұрын
@@sergeykozhenkov371 если в DTO очень много ненужных полей, то её нужно декомпозировать на несколько DTO, по одной на юзкейс. Для дефолтных значений в PHP >=8.0 есть именованные аргументы, при помощи них легко изящно пропускать необязательные параметры.
@RottenFoil
@RottenFoil 4 ай бұрын
@@sergeykozhenkov371 Используйте именованные аргументы и все будет красиво. Плюс если у вас настолько разное поведение метода, принимающего DTO, возможно стоит разбить его на два и более и для каждого создать свой DTO.
@k0rinf
@k0rinf 4 ай бұрын
Если у вас есть сеттеры и геттеры, то зачем они вообще нужны? почему бы просто не сделать поле public?
@NameXss
@NameXss 3 ай бұрын
1:04:19 А как на уровне ивентов сделать батчинг? Куда будет накапливаться декремент? Консюмер же будет убивать инстанс
@SemyonF89
@SemyonF89 Ай бұрын
Вы нашли ответ. Повторно смотрел стрим, тоже интересует этот момент
@NameXss
@NameXss Ай бұрын
@@SemyonF89 сейчас пересмотрел, и не помню, что у меня было в голове тогда и почему я этот вопрос задал). Я предполагаю, что можно накапливать хоть в тот же редис или любую другую БД, а потом резолвить по крону
@snikitin32
@snikitin32 2 күн бұрын
А обязательно половину слов использовать английские слова русскими буквами? 😂лухари лайф
@SemyonF89
@SemyonF89 2 күн бұрын
@@snikitin32 культуру письма не отменяли, но графоманить нас не заставляют, большинству, предположу, пофигу. Мы тут в курилке вышли перекинуться мыслями) Энтропия от транслита на русском не падает. Вся програмота давно привыкла к таким профессиональным приемам. Човы, подколоть так решили, не заточенным шилом) .
@NameXss
@NameXss 2 күн бұрын
@@snikitin32 естественно.
@qAntBcn
@qAntBcn 4 ай бұрын
Крутое видео! Спасибо! Плиз, на будушее решайте заранее вопросы с микро... а то бубубу бубубу... не блин... 2024 год же... а ошибки все теже...
@mezhdu_skobok
@mezhdu_skobok 4 ай бұрын
А чей именно звук не понравился?
@aragnophy
@aragnophy 4 ай бұрын
@@mezhdu_skobok У Виталия конечно, хотя в целом разобрать всё можно было.
@gam6itko
@gam6itko 5 күн бұрын
30:00 Мутационное тестирование это fuzzing?
@mexvision-3556
@mexvision-3556 25 күн бұрын
Люди добрые, подскажите где можно подписать петицию "за дженерики в php". Как долго нам придется писать эти громоздкие аннотации? По хорошему, их вообще при компиляции можно опускать. Они в 99% случаев, нужны лишь для удобного написания кода, чтобы не стрелять себе в ногу. Да, PHP интерпретируемый и с них толку практически нет, но как же удобно будет писать код. Атрибуты перекочевали с аннотаций, в чем проблема то же самое сделать и с дженериками?
@yandexroot
@yandexroot 4 ай бұрын
38:20 - а зачем тут проверка только на null? А если cache->get(...) отдаст false? То он выдаст false наружу.. что не дело.
@vudaltsov
@vudaltsov 4 ай бұрын
Ну там по контракту возвращается default из метода get. И он по умолчанию null. Так что можно предположить, что кэш вернёт ?Report. Но поскольку дженериков в этом месте нет, то, строго говоря, лучше проверить instanceof.
@UnitedFeodor
@UnitedFeodor 4 ай бұрын
45:48
@Wivern11
@Wivern11 4 ай бұрын
А вам гофер не нужен?
@mezhdu_skobok
@mezhdu_skobok 4 ай бұрын
Если интересно пройти собес по го, пиши в телеграмм @Gskoba
@valentingerbey4297
@valentingerbey4297 4 ай бұрын
Классический сеньер, ивент-драйвинг😂, тип вообще не дупляет, что в мире последние 20 лет происходит, в описании написано солиды, ддд, архитектура, по факту, еле продукт разбил, инкапсуляция и инварианты - слова видел, как и кохижин собственно, вообще все базворды на уровне чтения документации, просто слова знает, да и за ооп тоже, есть класс значит ооп, в общем прискорбна, что индустрия таким вот переполнена, очень прискорбна😢😢😢 тупа 99 из 100 вот такое, в лучшем случае, а самое главное, что Валентин прекрасно понимает, но лицемерит говоря все топ, просто поощряет бестолковство
@makeitgit
@makeitgit 4 ай бұрын
Приходите на похожий собес. Расскажите, как нужно, я с удовольствием послушаю квалифицированного специалиста. Чужой опыт всегда полезен! Все контакты в описании
@eugenelepeshko8347
@eugenelepeshko8347 Ай бұрын
На самом деле действительно есть такой момент, что интервьювер сглаживает углы, но это нормально, это психология) К интервьюируемому тоже вопросов немного, учитывая что это вообще не основной его язык, а забывать то, с чем долго не работаешь это нормально)
Just try to use a cool gadget 😍
00:33
123 GO! SHORTS
Рет қаралды 61 МЛН
La revancha 😱
00:55
Juan De Dios Pantoja 2
Рет қаралды 49 МЛН
Собеседование middle backend php
1:17:49
Первый шаг в IT
Рет қаралды 8 М.
Dependency Injection простыми словами
18:17
devschacht
Рет қаралды 84 М.
Решаем тестовое задание на позицию junior python backend разработчик
21:18
𝐧𝐞𝐫𝐝𝐢𝐳𝐚𝐲-𝐜𝐨𝐝𝐞
Рет қаралды 11 М.
Вопросы собеседования на C# программиста
21:04
Програмысли Влог
Рет қаралды 62 М.
СОБЕСЕДОВАНИЕ по PHP: к каким ВОПРОСАМ готовиться?
37:44
TeachMeSkills Школа программирования
Рет қаралды 31 М.
PHP 8.0 - 8.2 | Производительность и фичи
18:19
APPLE совершила РЕВОЛЮЦИЮ!
0:39
ÉЖИ АКСЁНОВ
Рет қаралды 897 М.
Как работает автопилот на Lixiang L9 Max
0:34
Семен Ефимов
Рет қаралды 14 М.
Жёсткий тест чехла Spigen Classic C1
0:56
Romancev768
Рет қаралды 708 М.
📦Он вам не медведь! Обзор FlyingBear S1
18:26
Урна с айфонами!
0:30
По ту сторону Гугла
Рет қаралды 6 МЛН