Оценка кода

scorpion-ds

Новичок
Нужно оценить специалиста, опыт - 7 лет, Symfony - 3 года, сам он не заявлял так, но пришел на уровень "middle/senior".

После общения попросили показать фрагмент кода, смог выслать такое:
https://github.com/CoreSite/Example-review

По данному коду имею замечания:
  • запросы к БД располагаются в контроллере, я сейчас предпочитаю выносить их в сервисы;
  • после запроса нет проверки на тип возвращаемого объекта;
  • посторонние функции в коде, я бы их в сервисы вынес;
  • часть код из функций, я бы тоже перенес в сервисы;
  • некоторые строки я бы вынес в конфиги;
  • нет поддержки локализации (хотя возможно она и не нужна была здесь)
У самого опыта с фреймверками немного, потому не могу нормально проводить собеседования, но из общения и примеров, я для себя ничего нового не услышал, не думаю, что я бы мог дать ему "middle", хотя возможно придираюсь.
 

fixxxer

К.О.
Партнер клуба
Класс на 2012 строк и "сеньор"... Ну...

А мешать табы с пробелами (да и с пробелами там непойми что), и бардак с code style - это даже для миддла чот не.

С большинством замечаний согласен (хотя, конечно, не в сервисы, но не суть). Для джуниора с потенциалом мидла сойдёт.
 
Последнее редактирование:

флоппик

promotor fidei
Команда форума
Партнер клуба
@scorpion-ds, кмк, сениора зачем по фреймворкам собеседовать? Возможно у нас разные критерии для сениоров, но все же, «кодить под фреймворк» это явно не для позиции сениора, не?
 

scorpion-ds

Новичок
Возможно, не совсем правильные требования, нам нужен разработчик с опытом работы с Symfony, если знают ZF, тоже подходят, но с переходом на SF. Я не составлял требования на вакансию, знаю, что требуем знание SF, а также опыт от нескольких лет, также нужен джун, но тоже желательно со знанием SF.
 

Absinthe

жожо
Оценил.
Джуниор, причем не самый хороший, 2 года опыта.
Платить 80тр.
Писать код умеет, но нужен наставник, который будет указывать на типичные промахи.
 
Последнее редактирование:

WMix

герр M:)ller
Партнер клуба
разрезать код на части не самое тяжелое, особенно когда все свежо. интереснее как задача звучала. а из кода видно что симфонию понимает. нифига он не джуник, размазывать код по 20 классам смысла небыло. задача на пол раза, показать! а задание слишком громоздкое (яб послал) судя по колву строк.
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
Так не задание ж, там попросили выслать код какой может, если я правильно понимаю.
из кода видно что симфонию понимает
Ну так понимание фреймворка и умение на нем писать в лоб это и есть джуниор, с миддла+ требования поболее.
 

Adelf

Administrator
Команда форума
Да какая бы задача не была, пихать в один класс обработку реквестов, данных с базы, посылку писем... я б с таким в разведку не пошел :)
 

hell0w0rd

Продвинутый новичок
Не понял, дать ему проверить свой же код?
Ага. Вполне может быть этот код пришлось писать в условиях горящих сроков. Может если он понимает, что в этом коде хорошо бы убрать в сервисы, разнести на несколько контроллеров - как минимум миддл нормальный.
 

Redjik

Джедай-мастер
А мешать табы с пробелами (да и с пробелами там непойми что), и бардак с code style - это даже для миддла чот не.
сегодня только делал
Код:
git filter-branch -f --tree-filter 'git diff-tree --name-only --diff-filter=AM -r --no-commit-id $GIT_COMMIT | find ./ -name "*.php" -exec perl -pi -e "s/\t/    /g" {} \;' HEAD
плакал и делал git push -f origin master

ибо ну никак с этими уродами, половина табы, половина пробелы, куда не сунься, начинаю историю затирать
 

hell0w0rd

Продвинутый новичок
Мешанина табов и пробелов может быть не признаком того, что человек так пишет. А то, что за кем-то дописывал. Тот факт, что ему самому на это было наплевать - да, скверно. Но у большинства таб = 4 пробела, так что просто не заметил, на пример.
 

Redjik

Джедай-мастер
ну и соответсвенно отношение к вакансии
и так сойдет
 

fixxxer

К.О.
Партнер клуба
Мешанина табов и пробелов может быть не признаком того, что человек так пишет. А то, что за кем-то дописывал. Тот факт, что ему самому на это было наплевать - да, скверно. Но у большинства таб = 4 пробела, так что просто не заметил, на пример.
Там есть место с двумя пробелами, и места с разными стилями переноса {, так что "не заметил" не покатит.

И у него ж не два случайных .php-файла с диска взяли, он сам выбирал, что показать. Явно человеку настолько пофиг, что даже autoformat тыкнуть поленился.

Насчет дописывал - ну тогда получается, что там половина кода не его, вроде как его код просили. Я вот как-то патч строк на 10 c багфиксом в php-fpm slow log для freebsd-amd64 отправлял anight-у, я же теперь не рассказываю, что написал php-fpm :D
 
Последнее редактирование:

Sender

Новичок
Джун, если про 7 лет общего и 3 года опыта Symfony правда, то надо внимательно смотреть в чем в принципе проблема, что за такое большое время код остался на таком уровне.

Если бы не такой большой опыт, можно было бы сказать что при хорошем наставнике и правильном восприятии критики человек быстро в мидла превратится, а так, большой риск.
 
Сверху