Веб-разработка. Разработка с нуля, доработка существующего продукта. Техническое задание (ТЗ) на поиск разработчика для оптимизации клиента WebSocket (P2C-платформа) Название проекта: Разработка высокопроизводительного клиента для захвата заявок через WebSocket P2C-платформы. 1. Суть задачи и проблема Существует P2C (peer-to-client) платформа, где заявки на выплаты появляются в реальном времени и мгновенно разбираются участниками. У нас есть рабочий клиентский скрипт, написанный на Go, который подключается к платформе по WebSocket, слушает заявки и пытается их "забрать". Проблема: Наш текущий скрипт на Go проигрывает в скорости другим участникам, которые используют, предположительно, более оптимизированные решения. Задержка в десятки или даже единицы миллисекунд является критической. Необходимо разработать нового клиента или кардинально оптимизировать существующий, чтобы достичь максимально возможной скорости отклика. 2. Требования к специалисту (кто нам нужен — "сетевик") Нам нужен низкоуровневый разработчик с глубокими знаниями в области сетевых протоколов. Это НЕ типичный веб- или бэкенд-разработчик. Обязательные компетенции: • Языки программирования: Свободное владение C++ и/или Rust. Приоритет — на умении писать высокопроизводительный, предсказуемый по времени код. Знание Go — как плюс для анализа текущего решения. • Глубокие знания сетевого стека: Понимание работы TCP/IP, WebSocket на уровне фреймов, handshake, ping/pong. • Опыт с сетевым программированием: Работа с сокетами (socket, epoll/kqueue, io_uring), оптимизация сетевых вызовов, минимизация задержек (latency). • Понимание проблем конкурентности: Умение работать с многопоточностью и асинхронностью в контексте сетевых операций без блокировок. • Аналитический склад ума и дотошность: Способность анализировать сетевой трафик (Wireshark, tcpdump), логировать каждый этап работы клиента, находить "узкие места" (bottlenecks) — не только в коде, но и в сетевом взаимодействии. • Бонусом (то, что имел в виду ваш сотрудник): Опыт написания или глубокой оптимизации сетевых прокси, VPN, кастомных TCP-клиентов, понимание методов ускорения доставки пакетов (приоритизация, QoS на уровне приложения). 3. Технический стек и окружение • Целевые языки: C++ (17/20) или Rust. • Протокол: WebSocket (вероятно, ws:// или wss://). Нужно уметь работать с "сырыми" сокетами и библиотеками низкого уровня. • Критически важные навыки: Работа с библиотеками для WebSocket, которые позволяют тонкий контроль (например, boost::beast для C++ или tungstenite/tokio-tungstenite для Rust). • Инструменты анализа: Wireshark, perf, strace, tcpdump, бенчмарки. • Платформа: Linux (скорее всего, потребуется настройка ядра для низких задержек — sysctl оптимизации). 4. Задачи для разработчика 1 Анализ текущего решения: Изучение существующего Go-скрипта, выявление слабых мест (алгоритмических, сетевых, библиотечных). 2 Анализ протокола: Исследование реального сетевого трафика между клиентом и P2C-платформой для понимания формата сообщений, механизма оповещения о новой заявке и команды "захвата". 3 Разработка прототипа: Создание минимального клиента на C++/Rust, который может установить соединение, аутентифицироваться (если требуется) и прослушивать канал. 4 Оптимизация (ключевой этап): ? Минимизация накладных расходов от библиотек. ? Оптимизация парсинга входящих сообщений. ? Реализация максимально быстрого отправления ответа на целевое сообщение. ? Возможная работа с временными метками, анализ задержек на каждом этапе. ? Настройка ОС и сетевого стека для уменьшения задержек. 5 Тестирование: Нагрузочное тестирование и сравнение скорости с текущим решением. Проверка стабильности при длительном подключении. 6 Документация: Краткий отчет о проделанных оптимизациях и ключевых факторах, влияющих на скорость. 5. Условия работы • Формат: Удаленно. • Оплата: 40 000 рублей за выполнение всего объема работ (за проект). • Компенсация расходов: Все необходимые расходы на тестовые серверы, инструменты и т.д. — за наш счет при предоставлении чека/документа. • Наша ответственность: Мы предоставим ? Доступ к тестовой среде или детальное описание поведения платформы. ? Существующий Go-скрипт. ? Доступ к специалисту для пояснений по бизнес-логике. 6. Что будет плюсом (ожидания от идеального кандидата) • Собственные идеи по оптимизации на уровне протокола (например, "можно ли отправить подтверждение, не дожидаясь полного парсинга тела сообщения?"). • Опыт в реверс-инжиниринге протоколов (не для взлома, а для понимания). • Знакомство с темой low-latency trading или high-frequency trading (HFT), даже на базовом уровне. • Готовность провести небольшой аудит текущего скрипта перед заключением договора (за символическую плату или в рамках собеседования) и предложить план работ. 7. Как откликнуться В отклике пожалуйста укажите: 1 Краткий рассказ о вашем опыте, соответствующем требованиям выше (особенно сетевые проекты). 2 Примеры кода или проектов на C++/Rust, связанных с сетевым взаимодействием. 3 Вашу гипотезу: какие, на ваш взгляд, могут быть основные причины проигрыша в скорости в подобной задаче? (Это будет мини-тестом на понимание проблемы). 4 Ссылки на профили на GitHub, Stack Overflow и т.д.
Почему стоит искать работу для фриласнеров по профилю программисты в России у нас?
🔸 Более 5 предложений о работе за сегодня в тематике программисты
🔸 Работа и подработка на бирже фриланса от прямых заказчиков, которым нужна помощь специалистов по профилю программисты уже сегодня!
🔸 Свежих заказов на программисты в России для фрилансеров на июнь 2026 года — 6896 шт.
Как найти удалённую работу для фриланс-специалистов по профилю программисты в России?
Вы специалист по программисты и ищете проекты и заказы на удалёнке в России? Нам всегда есть что вам предложить. Ежедневно мы публикуем новые проекты и заказы по вашей специальности. Найдите интересную работу уже сегодня
Сколько проектов для IT-специалистов по профилю программисты в России?
На июнь 2026 года опубликовано 6896 предложений удалённой работы от прямых заказчиков для исполнителей по специализации программисты
Сколько можно заработать выполняя проекты по программисты?
Специалисты по профилю программисты зарабатывают от 0.00 рублей с заказа. Хотите больше? Выполняйте как можно больше заказов и зарабатывайте сколько пожелаете