За сколько времени бы вы это выполнили?
От: Ватакуси Россия  
Дата: 28.05.20 16:01
Оценка:
https://github.com/gem-spaas/powerplant-coding-challenge

Мне сказали, что "обычно" выполняют за 40 минут.
Ну, и риторический вопрос — стали бы вы это делать?
Все будет Украина!
Re: За сколько времени бы вы это выполнили?
От: Stanislav V. Zudin Россия  
Дата: 28.05.20 16:30
Оценка: 1 (1)
Здравствуйте, Ватакуси, Вы писали:

В>https://github.com/gem-spaas/powerplant-coding-challenge


В>Мне сказали, что "обычно" выполняют за 40 минут.


https://youtu.be/diJ9teikFag?t=64


В>Ну, и риторический вопрос — стали бы вы это делать?


Ради спортивного интереса взялся бы
Но не мой профиль.
_____________________
С уважением,
Stanislav V. Zudin
Re: За сколько времени бы вы это выполнили?
От: Lazytech Ниоткуда  
Дата: 28.05.20 16:33
Оценка: 5 (1) :))
Здравствуйте, Ватакуси, Вы писали:

В>https://github.com/gem-spaas/powerplant-coding-challenge

В>Мне сказали, что "обычно" выполняют за 40 минут.

Я видал вещи и покруче:

https://www.youtube.com/watch?v=yB-lTwRENU8

Re: За сколько времени бы вы это выполнили?
От: Ромашка Украина  
Дата: 28.05.20 17:59
Оценка:
Здравствуйте, Ватакуси, Вы писали:

В>https://github.com/gem-spaas/powerplant-coding-challenge

В>Мне сказали, что "обычно" выполняют за 40 минут.

Я бы не ориентировался на это время, скорее всего "обычные" решения их не интересуют.

В>Ну, и риторический вопрос — стали бы вы это делать?


Да, это прикольно.


Всё, что нас не убивает, ещё горько об этом пожалеет.
Re: За сколько времени бы вы это выполнили?
От: Lexey Россия  
Дата: 28.05.20 20:33
Оценка: +6
Здравствуйте, Ватакуси, Вы писали:

В>Мне сказали, что "обычно" выполняют за 40 минут.


"И вы говорите".
В то, что алгоритм какой-нибудь сильный олимпиадник за 40 минут напишет, я могу поверить. Но, там кроме алгоритма еще вагон всякой мишуры будет.
Так что, реально тут работы на несколько дней, скорее всего.

В>Ну, и риторический вопрос — стали бы вы это делать?


Нет.
"Будь достоин победы" (c) 8th Wizard's rule.
Re: За сколько времени бы вы это выполнили?
От: vsb Казахстан  
Дата: 28.05.20 22:11
Оценка:
Сильно в задание не вчитывался, если нет хитрой алгоритмики, то на Java HTTP API и WebSocket сделал бы на Spring дня за 3 (24 часа). За 40 минут я бы даже проект не настроил.
Re[2]: За сколько времени бы вы это выполнили?
От: Хэлкар  
Дата: 28.05.20 23:54
Оценка: :)
Здравствуйте, vsb, Вы писали:

vsb>Сильно в задание не вчитывался, если нет хитрой алгоритмики, то на Java HTTP API и WebSocket сделал бы на Spring дня за 3 (24 часа). За 40 минут я бы даже проект не настроил.


В .Net есть стандартный шаблон для вебсервиса сидящего в докере, так что тут надо только реализовать алогритм. Наверно за пару часов можно.
Re: За сколько времени бы вы это выполнили?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.05.20 00:40
Оценка: +2
Здравствуйте, Ватакуси, Вы писали:

В>https://github.com/gem-spaas/powerplant-coding-challenge


В>Мне сказали, что "обычно" выполняют за 40 минут.


8 часов минимум, но скорей всего 16. Нет смысла писать половинчатое решение, ну а если делать продуктовое качество, то меньше 8 точно не будет. А при их постановке требований сами собой напрашиваются не только модульные, но и интеграционные тесты, так что там работы реально много.

В>Ну, и риторический вопрос — стали бы вы это делать?


Если бы их устроил мой расчет времени + у них действительно хорошая ЗП, то да, делал бы.
Отредактировано 29.05.2020 0:42 kaa.python . Предыдущая версия .
Re[2]: За сколько времени бы вы это выполнили?
От: $$ Австралия жж
Дата: 29.05.20 02:11
Оценка:
Здравствуйте, Lexey, Вы писали:

L>Здравствуйте, Ватакуси, Вы писали:


В>>Мне сказали, что "обычно" выполняют за 40 минут.


L>"И вы говорите".

L>В то, что алгоритм какой-нибудь сильный олимпиадник за 40 минут напишет, я могу поверить. Но, там кроме алгоритма еще вагон всякой мишуры будет.

Да ладно. Там нужно прикрутить прикрутить оптимизационный solver (какой-нить minimax). За 24 часа можно уложиться- это часа 2-3 на почитать википедию, реализовать алгоритм и отладить еще 2-3 часа.

L>Так что, реально тут работы на несколько дней, скорее всего.


В>>Ну, и риторический вопрос — стали бы вы это делать?


L>Нет.

Если нужна работа и задачка намекает на интересные задачи в команде, то почему бы нет? Если жесткий лимит 40 минут, то я бы не стал начинать- без вариантов.
Re: За сколько времени бы вы это выполнили?
От: maxkar  
Дата: 29.05.20 08:06
Оценка:
Здравствуйте, Ватакуси, Вы писали:

В>Мне сказали, что "обычно" выполняют за 40 минут.


4-8 часов. Очень сильно зависит от алгоритма. Некоторые сложности есть в том, что нет граничных условий (т.е. сколько станций, максимально допустимое количество требуемой энергии и т.п.). В условиях их samples скорее всего будет динамическое программирование по Cost(количество требуемой энергии, используемые станции (только первая, первая-вторая, первая-вторая-третья и т.д.)). Из этого большая часть — на продумать/протестировать алгоритм. Если спешить и делать быстро — 40 минут максимум на алгоритм + 30 на обвязку (приложение), минимум автоматических тестов. Но это — олимпиадный режим. Неторопясь — от 2-х часов минимум.

Что входит в обвязку (и что я реально использую):


Это с нуля совершенно не торопясь делается максимум за час (включая поиск забытых ключиков в интернете). В этот же час можно написать короткую инструкцию о том, как запустить sbt assembly и выполнить java -jar. Если есть готовый проект-донор — 5-10 минут на все. Остальное — алгоритм и его тестирование.

В>Ну, и риторический вопрос — стали бы вы это делать?


В текущей ситуации — нет. Мне нужно книжку дописать сначала. И если я в состоянии думать, я лучше два часа потрачу на текст (за это время можно действительно много сделать), чем на решение задачки. Вот если бы у меня не было основной работы и был бы мой стек в вакансии — сделал бы.
Re[3]: За сколько времени бы вы это выполнили?
От: maxkar  
Дата: 29.05.20 08:14
Оценка: 4 (1) +1
Здравствуйте, $$, Вы писали:

$>Да ладно. Там нужно прикрутить прикрутить оптимизационный solver (какой-нить minimax). За 24 часа можно уложиться- это часа 2-3 на почитать википедию, реализовать алгоритм и отладить еще 2-3 часа.

What? Решать дискретную задачу о рюкзаке минимаксом или оптимизационным solver'ом? Удачи

Если не понятно, откуда там рюкзак: Даем на вход все станции wind. Они fixed cost, fixed energy (после умножения на 10 — вся энергия в выводе — целые числа). Нужно их напаковать на суммарную энергию за минимум денег.
Re: За сколько времени бы вы это выполнили?
От: landerhigh Пират  
Дата: 29.05.20 08:25
Оценка:
Здравствуйте, Ватакуси, Вы писали:

В>Ну, и риторический вопрос — стали бы вы это делать?


Нет смысла даже пытаться решать бессмысленную задачу.

Во-первых, генерация ветроэлектростанций не зависит от наличия или отсутствия хотелок.
Во-вторых, регулирование мощности теплоэлектростанций возможно очень в небольших пределах. Даже работающая без нагрузки будет жрать топливо.
www.blinnov.com
Re[2]: За сколько времени бы вы это выполнили?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.05.20 08:32
Оценка: +2
Здравствуйте, landerhigh, Вы писали:

L>Нет смысла даже пытаться решать бессмысленную задачу.


Но ведь любое тестовое задание бессмысленное, так как если оно осмысленное, то возникают обвинения в попытке реализовать бизнес-логику на халяву.
Re[4]: За сколько времени бы вы это выполнили?
От: $$ Австралия жж
Дата: 29.05.20 09:21
Оценка:
Здравствуйте, maxkar, Вы писали:

M>What? Решать дискретную задачу о рюкзаке минимаксом или оптимизационным solver'ом? Удачи


M>Если не понятно, откуда там рюкзак: Даем на вход все станции wind. Они fixed cost, fixed energy (после умножения на 10 — вся энергия в выводе — целые числа). Нужно их напаковать на суммарную энергию за минимум денег.


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

For calculating the unit-commitment, we prefer you not to rely on an existing (linear-programming) solver but instead write an algorithm yourself.


Т.е. нужно сначала понять, какой solver подходит под эту задачу (и это может быть пример из учебника operation research), и накидать его на коленке из подручных материалов. Уровень "что нельзя использовать" тут непонятен- например, numpy можно использовать? Перемножение матриц вручную весьма медленное, но с numpy это влёт. Веб сервис с POST, надеюсь, тоже можно использовать готовые библиотеки.
Отредактировано 29.05.2020 9:23 Артём . Предыдущая версия .
Re: За сколько времени бы вы это выполнили?
От: sr_dev  
Дата: 29.05.20 11:52
Оценка:
Здравствуйте, Ватакуси, Вы писали:

В>https://github.com/gem-spaas/powerplant-coding-challenge


В>Мне сказали, что "обычно" выполняют за 40 минут.

В>Ну, и риторический вопрос — стали бы вы это делать?

Ну, сколько денег то корячится там?
Re: За сколько времени бы вы это выполнили?
От: scf  
Дата: 29.05.20 12:05
Оценка:
Здравствуйте, Ватакуси, Вы писали:

В>https://github.com/gem-spaas/powerplant-coding-challenge


В>Мне сказали, что "обычно" выполняют за 40 минут.

В>Ну, и риторический вопрос — стали бы вы это делать?

Если вылизывать под prod качество, то день.
Почему нет, неплохая разминочная задачка, ну и повод вспомнить линейное программирование.
Re[3]: За сколько времени бы вы это выполнили?
От: landerhigh Пират  
Дата: 29.05.20 12:24
Оценка: +1
Здравствуйте, kaa.python, Вы писали:

L>>Нет смысла даже пытаться решать бессмысленную задачу.

KP>Но ведь любое тестовое задание бессмысленное, так как если оно осмысленное, то возникают обвинения в попытке реализовать бизнес-логику на халяву.

С опытом все сложнее становится.
Слишком часто приходит задача с формулировкой "нам нужно семь перпендикулярных линий", а через две недели дознаний выясняется, что хотели покрасить входную дверь в синий цвет.
www.blinnov.com
Re: За сколько времени бы вы это выполнили?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 29.05.20 13:02
Оценка:
Здравствуйте, Ватакуси, Вы писали:

В>https://github.com/gem-spaas/powerplant-coding-challenge


В>Мне сказали, что "обычно" выполняют за 40 минут.

В>Ну, и риторический вопрос — стали бы вы это делать?

Это же олимпиадная задача. Там нужно реализовать что-то типа решения задачи о рюкзаке.
Не олимпиадник конечно за 40 минут не выдаст такое решение. Олимпиадник вполне может.

Обвязка про докер и вебсокеты, а также хитрого вида входные данные, нужны чтобы чистых олимпиадников как раз отсеить.
Так что за 40 минут смогут единицы сделать.
Re: За сколько времени бы вы это выполнили?
От: Sealcon190 Соломоновы острова  
Дата: 29.05.20 19:13
Оценка: +2
Здравствуйте, Ватакуси, Вы писали:

В>Мне сказали, что "обычно" выполняют за 40 минут.


За 40 минут там будет обычный олимпиадный говнокод, совершенно непонятно что с его помощью можно показать работодателю. Что умеешь наговнокодить, если очень припрёт? Сомнительный плюс.

В>Ну, и риторический вопрос — стали бы вы это делать?


Нет. Я уже не в том возрасте, чтобы делать тестовые задания.
Re[3]: За сколько времени бы вы это выполнили?
От: Lexey Россия  
Дата: 29.05.20 22:24
Оценка: +1
Здравствуйте, $$, Вы писали:

$>Да ладно. Там нужно прикрутить прикрутить оптимизационный solver (какой-нить minimax).

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

$>За 24 часа можно уложиться- это часа 2-3 на почитать википедию, реализовать алгоритм и отладить еще 2-3 часа.

24 часа — это и есть 3-4 дня, внезапно. Ибо рвать жопу круглыми сутками никто в здравом уме не будет.

L>>Нет.

$>Если нужна работа и задачка намекает на интересные задачи в команде, то почему бы нет? Если жесткий лимит 40 минут, то я бы не стал начинать- без вариантов.

Мне жалко тратить несколько дней своей жизни на тестовое задание. И необходимости в поиске новой работы у меня сейчас нет (в последние несколько лет она меня находит).
"Будь достоин победы" (c) 8th Wizard's rule.
Отредактировано 29.05.2020 22:38 Lexey . Предыдущая версия . Еще …
Отредактировано 29.05.2020 22:34 Lexey . Предыдущая версия .
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.