Python / Inżynier Sieciowy: Optymalizacja sieci bota (WAF, integracja C-lib, uvloop)
O projekcie: Zautomatyzowany bot do snajpingu. Podstawowa logika biznesowa (parsowanie, autoryzacja, budowanie pakietów JSON/XML) jest już gotowa i stabilnie działa w Pythonie. Docelowe środowisko — Ubuntu
Aktualny problem: Architektura napotkała ograniczenia fizyczne sieci. Czas cyklu bojowego nie jest zadowalający z powodu opóźnień sieciowych, agresywnych limitów równoważenia obciążenia platformy oraz wolnej pracy lokalnego modułu kryptografii (Java). Naszym celem jest optymalizacja pracy z http/1.1, obejście opóźnień sieciowych i osiągnięcie maksymalnej prędkości.
Szukamy inżyniera, który rozumie budowę sieci na niskim poziomie, wie, jak działają WAF (Rate Limits, Leaky Bucket) i potrafi integrować biblioteki systemowe w pamięci Pythona.
Zadania (Rozwój izolowanego silnika sieciowego):
Eliminacja opóźnień I/O (Integracja C/C++): Obecnie operacje kryptograficzne przechodzą przez zewnętrzną aplikację Java na desktopie z przesyłaniem danych przez lokalne gniazda. Wymagane: Całkowite zrezygnowanie z tego połączenia. Zintegrować natywną systemową bibliotekę C bezpośrednio w przestrzeni adresowej Pythona (przez ctypes lub CFFI), przenosząc wszystkie operacje wyłącznie do pamięci operacyjnej.
Obchodzenie WAF i podgrzewanie połączeń (Silnik Sieciowy): Ochrona platformy przerywa nieaktywne połączenia TCP po upływie czasu i blokuje za spamowanie zapytaniami. Wymagane: Napisanie silnika sieciowego (na bazie uvloop), który z wyprzedzeniem otwiera pulę połączeń TCP i utrzymuje je "gorącymi" (Keep-Alive) za pomocą legalnego tła "pulsu", nie przyciągając uwagi ochrony.
Monitorowanie pływającego startu (Staggered Polling): Czas wystąpienia docelowego zdarzenia jest nieprzewidywalny (pływający start). Ślepe spamowanie zapytaniami doprowadzi do zablokowania IP. Wymagane: Opracowanie asynchronicznego "radaru" z przesunięciem fazowym (rozsynchornizacja puli), który pozwoli monitorować status lotu z mikro-opóźnieniami, ściśle pozostając w ramach limitów platformy (na przykład 1 zapytanie na sekundę na połączenie).
Zamrożenie sesji (Maszyna Stanów): Wymagane: Zrealizowanie ścisłej sekwencyjnej wysyłki wielu pakietów przez jedno podgrzane połączenie z dynamiczną aktualizacją tokenów bezpieczeństwa (CSRF/Sequence), aby uniknąć unieważnienia sesji przez serwer przy dużych obciążeniach.
Wymagania dla kandydata:
Głębokie zrozumienie asyncio i budowy protokołów HTTP.
Umiejętność analizy ruchu sieciowego i obchodzenia limitów równoważników obciążenia.
Doświadczenie w inżynierii odwrotnej, parsowaniu agresywnie chronionych systemów, HFT lub skanerach arbitrażowych.
Umiejętność pracy z pamięcią i integracji bibliotek C w Linuxie.
Gotowość do zachowania poufności szczegółów projektu (NDA).
Ważne: Potrzebujemy precyzyjnej pracy z siecią. Bruteforce i rozwiązania na poziomie while True: sleep() nie będą brane pod uwagę.
Warunki akceptacji projektu (Krytyczne): Płatność za projekt jest ściśle związana z Internal Overhead — czystą wewnętrzną prędkością działania Twojego silnika. Potrzebujemy chirurgicznie zoptymalizowanego kodu bez blokad I/O, zbędnych ponownych połączeń i spadków Event Loop'a. Dokładne metryki akceptacji (dozwolone milisekundy na każdy wewnętrzny etap) oraz wymagania dotyczące profilowania/logowania przekażemy kandydatom z odpowiednim doświadczeniem w prywatnej korespondencji.
Aby odpowiedzieć: 1. Proszę krótko opisać swoje doświadczenie w optymalizacji latencji lub obchodzeniu WAF. 2. Rozpocznij swoją odpowiedź od tego, jaką bibliotekę/podejście byś zastosował do rozwiązania zadania nr 3. 3. Zaproponuj realne terminy i koszty.