Senior Backend Developer
Цена договорная
•
безналичный расчёт, электронные деньги
Есть много Raspberry Pi. Планируем завести ещё больше. Немного подробностей об окружении и планах в соседнем заказе https://freelansim.ru/tasks/155413
Решили избавиться от технического долга и провести глобальный рефакторинг. «Глобальный» в рамках данной задачи на уровне Raspberry Pi означает: написать всё с нуля по готовому ТЗ. Новая архитектура базируется на ряде "новомодных" подходов. Мы уверены, что их использование оправданно высокими требованиями, которым должна соответствовать наша система. Если в процессе оценки ТЗ у вас появятся альтернативные предложения и/или замечания, мы всегда готовы их обсудить.
Список подходов и технологий:
Чего нет в нашей Raspberry Pi:
Требования к исполнителю:
Пожалуйста, в отзыве укажите свою желаемую часовую ставку. Даже, если предпочитаете фиксированную оплату, мне необходимо ориентироваться на какую-то цифру, чтобы начать продуктивный диалог. Скиньте ссылку на ваш лучший проект. Укажите ваш email (обязательно) и логин в телеграме (желательно). ТЗ для первичной оценки отправлю заинтересовавшим кандидатам.
Кандидаты из Санкт-Петербурга в приоритете. Кандидат с возможностью приёма оплаты на счёт юр. лица получит дополнительный плюс от нашего бухгалтера. Различного рода студии, автономные «команды опытных профессионалов» и прочие сомнительные абстракции рассматриваем в последнюю очередь.
-------
P.S.: если вы искали в тексте упоминание PHP, загляните сюда https://freelansim.ru/tasks/155499
Решили избавиться от технического долга и провести глобальный рефакторинг. «Глобальный» в рамках данной задачи на уровне Raspberry Pi означает: написать всё с нуля по готовому ТЗ. Новая архитектура базируется на ряде "новомодных" подходов. Мы уверены, что их использование оправданно высокими требованиями, которым должна соответствовать наша система. Если в процессе оценки ТЗ у вас появятся альтернативные предложения и/или замечания, мы всегда готовы их обсудить.
Список подходов и технологий:
- Long Polling для моментальной доставки команд от сервера API к Paspberry PI
- CQRS для понятной и легко-расширяемой логики обработки команд
- Event Sourcing для повышения очевидности work-flow, снижения рисков межпроцессорного взаимодействия и повышение отказоустойчивости в условиях плохого доступа к интернету на удалённых машинах Paspberry PI
- Inter Process Communication через очередь сообщений (ZeroMQ или D-Bus)
- Тотальная асинхронность обусловлена спецификой работы с переферией и произвольным потоком комманд от сервера API
- Виртуальные COM-порты с протоколами взаимодействия:
- RS-485/RS-232 для кастомной переферии
- RS-232 для 3G-модема для обработки SMS c входящими командами от сервера API и отправки SMS с исходящими командами и результатами на сервер API. SMS используем при проблемах с интернетом, как резервный транспорт для критически важных команд
- Язык программирования (в порядке предпочтения):
- Ruby. У нас devops на ruby. Нет желания разводить зоопарк инструментов на разных уровнях нашей системы.
- Ради крутого Python'инста готовы пересмотреть свои предпочтения.
- Если вы хорошо умеете Erlang и сможете на основе детального ТЗ выдать обоснованное заключение о возможных трудозатратах, рисках и целесообразности применения данного языка для решения нашей задачи, обязательно оставьте свой отклик! Готовы дополнительно оплатить это исследование.
Чего нет в нашей Raspberry Pi:
- Высокой нагрузки
- Сложных вычислений
- Базы данных и хранения состояний относящихся к бизнес-логике (к ней не относятся: очередь команд и буфер команд для оптимизации доступа к интернету, event sourcing snapshots)
- Доменной бизнес-логики. На уровне Raspberry Pi должна быть только логика управления переферийными устройствами! За доменную логику отвечает сервер API
Требования к исполнителю:
- Опыт в production хотя бы с частью перечисленных подходов. Либо другой достойный опыт, который убедит меня, что вы способны качественно и в срок реализовать всё перечисленное. Либо готовность проанализировать планируемую архитектуру и предложить альтернативное решение
- Чёткое понимание: как устроен стек протоколов TCP/IP. Из-за плохого интернета приходится учитывать каждый байт, чтобы минимизировать проблемы
- Опыт программирования передачи данных через com-порт желателен, но не обязателен. Достаточно общего представления об UART
Пожалуйста, в отзыве укажите свою желаемую часовую ставку. Даже, если предпочитаете фиксированную оплату, мне необходимо ориентироваться на какую-то цифру, чтобы начать продуктивный диалог. Скиньте ссылку на ваш лучший проект. Укажите ваш email (обязательно) и логин в телеграме (желательно). ТЗ для первичной оценки отправлю заинтересовавшим кандидатам.
Кандидаты из Санкт-Петербурга в приоритете. Кандидат с возможностью приёма оплаты на счёт юр. лица получит дополнительный плюс от нашего бухгалтера. Различного рода студии, автономные «команды опытных профессионалов» и прочие сомнительные абстракции рассматриваем в последнюю очередь.
-------
P.S.: если вы искали в тексте упоминание PHP, загляните сюда https://freelansim.ru/tasks/155499
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.