
Pavel
18.04.2017
14:32:42

Митко Соловец?
18.04.2017
14:33:41
мама, неси полотенце

Snow
18.04.2017
14:34:08
Рпс на уровне чего?
На уровне иптаблес?

Google

Snow
18.04.2017
14:35:05
На уровне нжинкса
На уровне сервлета
На уровне вызова функции от сервиса?

Pavel
18.04.2017
14:35:38
Вот вторая:
Нужно написать очередь рассылки сообщений для ботов. Сообщение - (bot_id, user_id). Все остальное для простоты опустим. Рассылка - http запрос.
Есть 100000 ботов, на каждый ограничение в 10 RPS. В день может быть несколько миллионов сообщений.
Они могут приходить как угодно быстро, отправляться должны как можно быстрее, не нарушая ограничения в 10 RPS.
Порядок сообщений на 1 человека не должен изменяться.

Alexander
18.04.2017
14:35:43

Daniil
18.04.2017
14:35:54
А на яве такое вообще будет работать?

sss3 ?
18.04.2017
14:36:23

Pavel
18.04.2017
14:37:06

Митко Соловец?
18.04.2017
14:37:55
а решение задач где потом посмотреть?
как научиться решать такие задачи и анализировать?
может литературу посоветуете

Snow
18.04.2017
14:38:46
Этоже типищированая задача
Название не помню

Google

Pavel
18.04.2017
14:39:51

Snow
18.04.2017
14:39:53
Я такое на петоне лет 7 назад делал когжа кластер почтовиков для рассылок почтовых делал
Есть формальное название задачи

Митко Соловец?
18.04.2017
14:40:35
кот, реши её
если она типовая

Snow
18.04.2017
14:41:18
Но зачем. Я ж еджб2 на заводе пилю

Pavel
18.04.2017
14:41:18

Daniil
18.04.2017
14:41:21
Та которая первая

Pavel
18.04.2017
14:41:45
да, это самое норм решение

Митко Соловец?
18.04.2017
14:41:55

Daniil
18.04.2017
14:42:02

Pavel
18.04.2017
14:42:30

Adam
18.04.2017
14:44:49
странные вопросы

Митко Соловец?
18.04.2017
14:44:50

Adam
18.04.2017
14:44:53
это же просто математика

Pavel
18.04.2017
14:44:54
вообще, с моей точки зрения, там где идет высокая нагрузка, важны 3 вещи:
1 - умение быстро прикидывать вычислительную сложность в разных ситуациях
2 - понимание того как оно работает на совсем низком уровне (например, что по памяти лучше ходить последовательно чем в разные места тыкаться в хешмапе)
3 - многопоточность (например если запустить 10000 процессов, они будут постоянно вытеснять друг друга, тратя на это, а не на вычисление все время)

Adam
18.04.2017
14:45:18
павел, ты сто?

Pavel
18.04.2017
14:45:28
1 и 2 - хорошо как раз алгоритмическими/олимпиадными задачами затачивается
нет, я продакт-менеджер, но лет 5 назад выиграл золото на финале ЧМ по программированию
ACM ICPC

Google

Adam
18.04.2017
14:46:18
неплохо
а чего в менеджмент ушёл?

Митко Соловец?
18.04.2017
14:46:27
ну что олимпиадное программирование и прикладнуха пересекаются?

Pavel
18.04.2017
14:46:46

Митко Соловец?
18.04.2017
14:47:01
где тренируешься/тренировался?

Pavel
18.04.2017
14:47:26
ну тут как - херачишь по 20-30 часов в неделю несколько лет и в чем угодно становишься неплох

Adam
18.04.2017
14:49:47
а как вся эта байда с яндексом связана?

Snow
18.04.2017
14:49:55
Мне больше интересна задача асинхронного поддержания юзер сессий в условиях стейтлес бота. Так как планирую микросервисами через ampq делать то не особо тривиально
В самом боте сессий не держать. А в сервисе мира

Pavel
18.04.2017
14:50:41

Pavel
18.04.2017
14:50:47
и нанимаем в штат Я сейчас

sss3 ?
18.04.2017
14:51:19

Pavel
18.04.2017
14:51:23
там хитрая схема
быстро не расскажу)

Snow
18.04.2017
14:51:58

Pavel
18.04.2017
14:52:26

Google

Snow
18.04.2017
14:52:54
Не. Я на заводе. Работу не ищу. Боты для души

Admin
ERROR: S client not available

Sergey
18.04.2017
14:54:13
у Megogo подобная задача была

Snow
18.04.2017
14:54:30
Я соа моа архитектуру для игры нарисовал. Чьоб микросервисы на любом языке можно было в игру вводить

Sergey
18.04.2017
14:54:37
фетч данных с публичного апи dribbble, вытащить фоловеров, лайкеров, посты т.е. там граф связанных данных, потом агрегация чтобы посчитать топ юзеров. Основная фишка в том что у дрибла реквест лимиты, но он в ответе присылает timestamp когда можно сделать следующий запрос и нужно это все красиво сделать не прибегая к Thread.sleep.

Adam
18.04.2017
14:54:37
выглядит интересно, но и на своей работе интересно)

Sergey
18.04.2017
14:57:02
я не говорю что такая же, подобная

Snow
18.04.2017
14:57:30
А телеграмм коннектор стейтлес чтобы его в принципе можно было переписать при желании на эрланг или элексир без потери работоспособности

Sergey
18.04.2017
14:57:54
а зачем?

Jiff
18.04.2017
14:58:05

Sergey
18.04.2017
14:58:27
да тоже стало интересно)

Anton
18.04.2017
14:59:06
Не надо спойлерить.
Интересно же подумать.

Jiff
18.04.2017
14:59:25
я без претензий на эту прекрасную вакансию

Pavel
18.04.2017
14:59:37

Jiff
18.04.2017
14:59:41
но на путь к решению было бы интересно посмотреть
мне уже скинули, спасибо

Pavel
18.04.2017
14:59:52
ну кстати есть еще лучше одно решение

Google

Anton
18.04.2017
15:00:11

Pavel
18.04.2017
15:00:13
это решение за O(RPS) памяти где
а можно сделать решение за ~1000 памяти

Alexey
18.04.2017
15:00:45
кстати много интересных задач на https://leetcode.com и https://projecteuler.net - если есть время, оттуда можно не вылезать

Adam
18.04.2017
15:00:49
всё заспойлерили)

Pavel
18.04.2017
15:00:51
ибо больше одна техническая особенность есть
всё заспойлерили)
ой ладно, там вторая задача, ее спойлерить - на несколько страниц текста, можно над ней подумать))

sss3 ?
18.04.2017
15:01:35
на ейлере не сказать что прям интересные задачи
решаю задачки с ейлера когда учу синтаксис нового языка :D

Adam
18.04.2017
15:02:49

Ivan
18.04.2017
15:04:32
@pshishkin вы даете эти задания прямо на собеседованиях?

Sergey
18.04.2017
15:06:26
а если человек с этим особо не работал раньше и быстро не может сообразить?