Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомВ тестовом задании? Если у человека есть желание и амбиции занять роль ведущего разработчика в серьёзной компании, то да. А судя по интервью, которые я провожу, абсолютное большинство кандидатов проходят собеседование на отъе...сь. Больше половины не готовятся вообще. Даже если на 100% очевидно, что будут спрашивать, написано чёрным по белому в вакансии. Даже про это не почитают. Хотя бы поверхностно. Поэтому можно сказать, накипело. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 00:07 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
test_task, очень все не однозначно с самим заданием. вы можете описать архитектуру, идею, которую вы заложили в реализацию? как оно работает? у нас типа финансовая система, поэтому я как ведущий программист подумал бы о следующих вещах: 1. вход пользователя - в задании нет никаких требований по безопасности, возможно для упрощения, но я как минимум описал бы свои мысли по этому поводу - например шифрование пароля, двухфакторная аутентификация 2. отложенность транзакций - вы замечали, что деньги на межбанковские переводы у вас с банковского счета не списываются в выходные дни? пишет - заблокировано средств столько-то. в задании конечно есть ограничение - что это какая-то внутренняя система, но я бы подумал о расширении - например подключении внешних платежных систем и банковский счетов 3. производительность - как вы собираетесь распараллеливать обработку транзакций? возможно нужна очередь в базе данных или MQ 4. логирование - пользователи очень очень преочень беспокоятся за свои деньги, даже за одну копейку - как вы собираетесь обеспечить нужный уровень логирования ошибок, событий, чтобы в будущем разобраться почему деньги исчезли или ушли не туда? 5. отказоустойчивость - как вы собираетесь решать эту проблему на клиенте, на сервере? да хотя бы потеря сети? или превышение таймаута запроса 6. устойчивость к хакерским атакам - например насколько легко подделать данные, отправить их на сервер, чтобы списалось больше денег или ушло не тому человеку? 7. в задании было что-то про уведомления пользователей чуть ли не на каждый чих - опять же это отдельная тема как по расширению (куда уведомлять? на мыло, на мобильник, пуш-уведомление?), так и по производительности (пользователей много, уведомлений еще больше, как минимум раза в два), а так же по способу (опрашиваем сервер или подписываемся на уведомления и сервер шлет на клиенты) 8. требование RESTfull - в текущей реализации это не совсем RESTfull, но я не уверен - понимают ли постановщики тестового задания этот термин в полной мере. вот хорошая статья https://habrahabr.ru/post/319984 9. я не знаком с мобильной разработкой, но слышал, что там есть особенности по аутентификации и авторизации вот только после того, как вы обдумаете и распишите эти вопросы (кстати это будет и некая документация) - сможете приступить к технической реализации - это выбор технологий и все те самые паттерны, солиды, сервисы, репозитории и т.п. и это уже будет совсем другая история ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 09:18 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
а вот тут можете почитать про эволюцию кода от репозиториев до CQRS http://blog.byndyu.ru/2014/07/command-and-query-responsibility.html и это было написано три года назад ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 09:26 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
hVosttАгнец за бортомВ тестовом задании? Если у человека есть желание и амбиции занять роль ведущего разработчика в серьёзной компании, то да. Интересно, когда дизайнера Audi в KIA переманивали - его тоже попросили "а нарисуй-ка нам дЕзайн крутой тачки! У тебя 20 минут, время пошло" hVosttДаже если на 100% очевидно, что будут спрашивать, написано чёрным по белому в вакансии. Даже про это не почитают. Какой смысл спрашивать на собеседовании что-то, что можно прочитать перед ним? Цена таким знаниям? Какой-то, извини, совок. Если какие-то знания можно приобрести за 20 минут, то какая разница - когда это будет сделано до или после? Мне кажется, акцент стоит делать на том, что не приобретается за 5 минут гугления. Иначе, ведущий разработчик в серьезной компании ничем не отличается от "свободная-касса". Но, возможно, мне только кажется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 12:10 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Агнец за бортом, Вы реально не понимаете, зачем на собеседованиях спрашивать то, что поможет понять, а подходит человек под требования, изложенные в вакансии, или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 14:18 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
И что Вы будете гуглить за 5 минут, если в требованиях к примеру опыт оптимизации работы с БД и я Вас попрошу о нём рассказать? Чужой опыт будете гуглить и потом мне на собеседовании пересказывать? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 14:23 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
skyANAАгнец за бортом, Вы реально не понимаете, зачем на собеседованиях спрашивать то, что поможет понять, а подходит человек под требования, изложенные в вакансии, или нет? Я не понимаю, зачем ожидать от соискателя, чтобы он что-то "почитал" по теме перед собеседованием. Цена таким знаниям - ноль. Если он в теме, то и "освежать" знания не надо, если не в теме, то "беглый просмотр" не поможет. И принимать решение о найме на основании вышеизложенного странно. Так понятней? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 15:13 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомИнтересно, когда дизайнера Audi в KIA переманивали - его тоже попросили "а нарисуй-ка нам дЕзайн крутой тачки! У тебя 20 минут, время пошло" Без понятия. Не вижу причин фантазировать на эту тему. Агнец за бортомКакой смысл спрашивать на собеседовании что-то, что можно прочитать перед ним? Цена таким знаниям? Какой-то, извини, совок. Если какие-то знания можно приобрести за 20 минут, то какая разница - когда это будет сделано до или после? В вакансии обычно написано, какими умениями и знаниями должен обладать человек, который нужен. На собеседовании я обязательно об этом спрошу, и мы поговорим об этом. И всё станет ясно. А ты несёшь какую-то бессвязную ахинею. О чём я по-твоему должен спрашивать, если не о том, что заявлено в вакансии? Агнец за бортомМне кажется, акцент стоит делать на том, что не приобретается за 5 минут гугления. Т.е. надо написать в вакансии одно, а спрашивать другое? Ты в своём вообще уме? Собеседование это не экзамены, это не тестирование, это беседа. В процессе беседы всё прекрасно раскрывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 18:45 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомЯ не понимаю, зачем ожидать от соискателя, чтобы он что-то "почитал" по теме перед собеседованием. Цена таким знаниям - ноль. Если он в теме, то и "освежать" знания не надо, если не в теме, то "беглый просмотр" не поможет. Речь вообще не об этом шла. Я сказал, что отдельные кандидаты даже не пытаются подготовиться. — Моего знакомого менты приняли за грибы. — Как можно принять человека за грибы? Совсем не похоже ведь. — Настя... — Ну что Ты прям вот как Настя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 18:50 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомskyANAАгнец за бортом, Вы реально не понимаете, зачем на собеседованиях спрашивать то, что поможет понять, а подходит человек под требования, изложенные в вакансии, или нет? Я не понимаю, зачем ожидать от соискателя, чтобы он что-то "почитал" по теме перед собеседованием. Цена таким знаниям - ноль. Если он в теме, то и "освежать" знания не надо, если не в теме, то "беглый просмотр" не поможет. И принимать решение о найме на основании вышеизложенного странно. Так понятней? Подготовился - это не что-то там "почитал", а ознакомился с профилем компании, требованиями, прикинул примерный круг задач, что будут спрашивать. Выписал себе на листочек, что хотел бы узнать, спросить, уточнить на собеседовании. А то спрашиваешь: Вы заходили на наш сайт, понимаете чем мы занимаемся, какой у нас продукт? В ответ что-то там мычат. И встаёт вопрос, а человек вообще хочет именно у нас работать, или ему по фигу где, с кем и над чем он будет трудиться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 19:00 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
skyANAПодготовился - это не что-то там "почитал", а ознакомился с профилем компании, требованиями, прикинул примерный круг задач, что будут спрашивать. Выписал себе на листочек, что хотел бы узнать, спросить, уточнить на собеседовании. Как минимум соотнёс свои знания и опыт с тем, что требуется. Если что, освежил. Это огромный жирный минус для человека, если на сосебедовании — «это я конечно знаю, да подзабыл» (хотя это написано в вакансии чёрным по белому), да и вообще зачем это нужно и начинает в чём-то переубеждать, типа ща так не делают, это не используют, всё везде уже давно по-другому... Зачем пришёл, спрашивается? А вдруг повезёт? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 19:06 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
skyANAА то спрашиваешь: Вы заходили на наш сайт, понимаете чем мы занимаемся, какой у нас продукт? В ответ что-то там мычат. И встаёт вопрос, а человек вообще хочет именно у нас работать, или ему по фигу где, с кем и над чем он будет трудиться? Плюс, если человек предварительно поинтересовался, куда он собирает предложить свою кандидатуру, особенно если это компания с публичными продуктами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 19:08 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
hVosttАгнец за бортомЯ не понимаю, зачем ожидать от соискателя, чтобы он что-то "почитал" по теме перед собеседованием. Цена таким знаниям - ноль. Если он в теме, то и "освежать" знания не надо, если не в теме, то "беглый просмотр" не поможет. Речь вообще не об этом шла. hVostt Даже если на 100% очевидно, что будут спрашивать, написано чёрным по белому в вакансии. Даже про это не почитают. Хотя бы поверхностно. А о чем шла речь, хвост? Опять намемекал, впрочем, как обычно, а теперь юлишь. Ты не баба? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 19:46 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомhVosttпропущено... Речь вообще не об этом шла. hVostt Даже если на 100% очевидно, что будут спрашивать, написано чёрным по белому в вакансии. Даже про это не почитают. Хотя бы поверхностно. А о чем шла речь, хвост? Опять намемекал, впрочем, как обычно, а теперь юлишь. Ты не баба? Почему юлит? Ты его понял на свой лад, обычное дело. Но вроде он развернул уже свою мысль, чтобы стало понятнее о чём он. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 19:55 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомА о чем шла речь, хвост? Опять намемекал, впрочем, как обычно, а теперь юлишь. Ты не баба? Ты сделал в корне неправильный и очень примитивный вывод, основанный на своих смешных домыслах, а не на моих словах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 20:04 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
hVosttПочему Domain-ом обозваны обычные транспортные классы для ORM ? В каком же месте это Domain? Переименовал сборку ParrotWings.Domain в ParrotWings.Entity, класс BaseDomain в BaseEntity. Хотя, вряд ли это сильно на что-то повлияет. А что Вы понимаете под "обычные транспортные классы для ORM"? hVosttПочему репозитории возвращают как DTO, так и «domain» классы? Почитайте что такое репозиторий. в каком месте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 20:30 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
hVostt Код: c# 1. 2. ужасно тупо тут просто баг (u.UserId == ...). а что тут "ужасно тупого"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 22:36 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
test_taskhVostt Код: c# 1. 2. ужасно тупо тут просто баг (u.UserId == ...). а что тут "ужасно тупого"?вот эти кишки GetList().FirstOrDefault(u => u.Id == userId); GetList().FirstOrDefault(u => u.Id == correspondentUserId) должны быть запрятаны в репозитарий, а не торчать наружу, метод должен возвращать данные, с которыми уже ничего не нужно делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 22:51 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
test_taskhVostt Код: c# 1. 2. ужасно тупо тут просто баг (u.UserId == ...). а что тут "ужасно тупого"? В тестовом задании хотелось бы видеть полноценную реализацию GetOne, что на вход принимает Criteria. И которую при желании легко можно декорировать к примеру кэшом. А то ведь не видно особого толка от интерфейсов и инъекций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 22:59 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
Тогда класс будет удовлетворять принципу открытости/закрытости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2017, 23:02 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
А реализация клиентских транзакций через IInterceptionBehavior меня вообще удивила. Сразу встаёт вопрос: Вы разве не знаете, что и EF, и NHibernate реализуют шаблон Unit of Work? Ну и открывать транзакцию в рамках текущего соединения перед вызовом каждого метода и завершать сразу же после выполнения метода... А завтра понадобится три метода вызывать в рамках одной транзакции, что будете делать? Вообщем сложилось впечатление, что Вы попытались в решение запихать всё, о чём слышали, но толком не использовали: и паттерны, и АОП, и рефлексию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2017, 00:01 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
test_taskА что Вы понимаете под "обычные транспортные классы для ORM"? Классы, удовлетворяющие условиям ORM, для того чтобы вытаскивать данные из таблиц в объекты классов (на что намекает аббревиатура ORM), и отслеживать изменения для формирования INSERT/UPDATE при вызове SaveChanges. Если говорить о домене, то это уже из области DDD, требованиям которого entity-классы EF и NH не удовлетворяют, так как эти классы должны обладать конструкторами без параметров, что приводит к разлому инкапсуляции. test_taskв каком месте? В каком месте почитать? Репозиторий объектов типа А должен работать только с объектами типа А, а не А, АDto, АHZChto... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2017, 07:11 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
skyANAВообщем сложилось впечатление, что Вы попытались в решение запихать всё, о чём слышали, но толком не использовали: и паттерны, и АОП, и рефлексию. Больше похоже на не удачное копирование какого-то другого проекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2017, 07:20 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
hVostt Репозиторий объектов типа А должен работать только с объектами типа А, а не А, АDto, АHZChto...То есть если, например, репозиторий А должен произвести операцию не только с объектом А, но и со связанными с ним объектами B и С, то эти манипуляции все равно нужно выносить в соответсвующие репозитории? Даже если эти манипуляции в отрыве от операции А вообще не применяются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2017, 08:28 |
|
||
|
Тестовое задание
|
|||
|---|---|---|---|
|
#18+
skyANAА завтра понадобится три метода вызывать в рамках одной транзакции, что будете делать? test_task вот, кстати, раз уж используете NHibernate - если при этом использовать Castle Windsor, то там есть уже готовая NHibernateFacility и AutoTx - вешаешь атрибут транзакции на публичный метод класса - и вперед, поддерживает вложенные транзакции и вложенные методы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2017, 09:08 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=39477951&tid=1355492]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 287ms |
| total: | 391ms |

| 0 / 0 |
