Тестовое задание для собеседования на php программиста?

Технические требования:
- Приложение НЕ должно быть написано с помощью какого-либо фреймворка. Но можно использовать различные пакеты, установленные через compоser, включая компоненты Symfony.

Ответ работодателя:
Несмотря на то, что вы подготовили рабочее решение и владеете PHP, ваш опыт не соответствуют нашим текущим потребностям в части знаний ООП, composer (использовании сторонних библиотек). Приложение сложно расширять.
Мы ожидали увидеть приложение с использованием готовых библиотек для работы с HTTP, базой данных, работы с консолью. А также легко расширяемое и поддерживаемое.

Первый раз в жизни мне пишут, что я не использовала сторонние библиотеки. Хотя в требовании было написано, что можно. Но можно и обязательно это не одно и тоже.
И еще - задание рассчитано на 2-3 часа. Что-то мне кажется сомнительным за такое количество времени спланировать расширяемое приложение и прикрутить сторонние библиотеки.

Прошу совета у вас. Может это я не права?
  • Вопрос задан
  • 4618 просмотров
Пригласить эксперта
Ответы на вопрос 5
Maksclub
@Maksclub Куратор тега PHP
maksfedorov.ru
Мы ожидали увидеть приложение с использованием готовых библиотек для работы с HTTP, базой данных, работы с консолью. А также легко расширяемое и поддерживаемое.

Теперь понятно, что они хотят — но в ТЗ не было указано:
  • Под HTTP понимают либы, работающие с PSR 7 или близкие по «духу», например Symfony HTTP Foundation
  • Под БД понимают Doctrine 2 или Eloquent
  • По консольным — на рынкке используют как правило Symfony Console

Именно это и хотели, предлагаю вам либо объяснить и написать уже на компонентах, либо послать к черту, НО отметить этот момент и на будущее таки делать уточнение, каковы ожидания от задания...
Нескольких людей встречал до фанатизма не принимающих сторонние пакеты, и наоборот... Это нужно учитывать... видел задания на PHP 5.3, видел задания строго на Codeigniter...

Тут на Тостере был пример, когда человек применил композер даже не для сторонней либы, а для внутренних, так на него тимлид сокрушился...
Разве Composer бесполезен в 2017?

Люди разные :)


Материал по компонентной разработке

Елена,
не нужно Symfony ассоциировать с фреймворком — это в первую очередь компоненты — потрясающие компоненты:
  • Symfony Console
  • Symfony HTTP Foundation
  • Syfony Routing (к слову очень быстрый, недавно ускорили его в 70 раз ребята и сделали самым шустрым компонентом)
  • Twig
  • Debug
[*!*] В некоторых вакансиях даже указывают, что нужно уметь работать с некоторыми выше перечисленными компонентами :) Пруф: https://novosibirsk.hh.ru/vacancy/25367906

Doctrine — совсем не из Symfony и этот компонент можно использовать где угодно

Zend к слову пошел по тому же пути, например
  • для HTTP Request/Response PSR 7 у него есть отличный компонент Zend Diactoros,
  • для работы с PSR 15 Middleware есть компонент Zend Expressive,
  • для работы с ролями и правами крутое решение Zend ACL

Laravel уже да — фреймворк, и опять же на компонентах, и можно использовать его куски, например у него замечательная ORM (Active Record) — в отличие от AR в Yii2 ее можно (и нужно) использовать в любом кастомном проекте вне фреймворка Laravel или вообще фреймворка там , где Доктрина лишняя


Почитать и посмотреть:

Современный PHP без фреймворков (статья Mail.ru на Хабре)
Консольное приложение (мастер-класс) — собрано из компонента Symfony Console и ORM Eloquent (от Ларавел)
PSR-7 фреймворк от Д.Елисеева
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Ответ работодателя:
Несмотря на то, что вы подготовили рабочее решение и владеете PHP, ваш опыт не соответствуют нашим текущим потребностям в части знаний ООП, composer (использовании сторонних библиотек). Приложение сложно расширять.
Мы ожидали увидеть приложение с использованием готовых библиотек для работы с HTTP, базой данных, работы с консолью. А также легко расширяемое и поддерживаемое.

Бесплатный сбор с кандидатов различных интересных архитектур и подходов на open-source решениях/либах для своих будущих разработок под видом тестирования. И ничего более...
Ответ написан
Комментировать
sim3x
@sim3x
На ваш вопрос может ответить только тот, кто писал вам ответ

Отказ вам мог быть дан по обьективным причинам так и нет

Но можно и обязательно это не одно и тоже.
если библиотека общеупотребима в стеке, но вы сделали свой велосипед (на уровне трейни/джуна) - значит замечание корректно

задание рассчитано на 2-3 часа. Что-то мне кажется сомнительным за такое количество времени спланировать расширяемое приложение и прикрутить сторонние библиотеки.
а если задачу сформулировать в ключе - установить 10 либ и связать их за 2 часа, то думать о расширяемости не потребуется

Приложение НЕ должно быть написано с помощью какого-либо фреймворка. Но можно использовать различные пакеты, установленные через compоser, включая компоненты Symfony.
судя по описанию, вас попросили имитировать симфони без прямого использования самой симфони

В следующий раз, попросите того кто будет проверять вашу работу, указать на ключевые моменты, которые важны для него
Ответ написан
@vanyamba-electronics
Ваш опыт не соответствует их требованиям.
Вы избежали нещадной эксплуатации.
Ответ написан
Комментировать
lokki00003
@lokki00003
Web developer
Сидит дурак у которого есть деньги и он не знает куда их деть.
К тому же дурак начитанный.
Laravelami, фреймворками и другими пакостями голова набита.
Мне один писал что нужно делать одно из приложений типа мессенджер только на angular причём в качестве аргументов выбранного фреймворка приводил сайт сделанный для компании "Аэрофлот".
Я ему объяснил где он,а где Аэрофлот.
Посылайте их.Ищите адекватных работодателей
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
26 апр. 2024, в 06:46
1500 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект