Budżet: 5000 USD Termin: 30 dni
Cześć.
Jestem starszym programistą Pythona z ponad 10-letnim doświadczeniem w projektach produkcyjnych. Większość mojej kariery pracowałem z istniejącymi bazami kodu — wchodząc w systemy innych ludzi, odkrywając, jak są zbudowane, i doprowadzając je do stanu, z którego można być dumnym. Przykład: zbudowałem i prowadziłem platformę dyspozytorską dla taksówek samodzielnie przez 6 lat — 130 tys. zamówień miesięcznie, 900+ kierowców online jednocześnie, synchronizacja GPS w czasie rzeczywistym co sekundę. To jest rodzaj presji produkcyjnej, do której jestem przyzwyczajony.
Pracowałem również z integracjami AI: pipeline'y LLM, pobieranie z sieci, warstwy pamięci podręcznej z wersjonowaniem — dokładnie to, co opisujesz w sekcji Smart Review.
Przeczytałem ogłoszenie o pracy i brief. Podanie dokładnych liczb bez wstępnej recenzji kodu zawsze jest trochę zgadywaniem: brief wyraźnie opisuje *co* należy zrobić, ale nie mówi mi, jak głęboko sięgają stuby, w jakim stanie jest dług migracyjny ani co naprawdę dzieje się z modułem Facebooka i pipeline'em obrazów. Każdy z tych elementów może znacząco wpłynąć na oszacowanie.
Mając to na uwadze, na podstawie opisanego zakresu, moje robocze oszacowanie to: 180–240 godzin
Podział według modułów:
1. WebSockets / Redis — 35–45 h. broadcast_to_client, mapowanie użytkownik↔socket, asynchroniczny pub/sub, bezpieczeństwo wieloinstancyjne, testy asynchroniczne.
2. Silnik cenowy — 30–35 h. Wybór warstwowy, filtrowanie wartości odstających, deterministyczny fallback, skrypt backfill.
3. Silnik podobieństwa — 25–30 h. Ważone punktowanie, konfigurowalne wagi, rozstrzyganie remisów, zapytania indeksowane.
4. AI Smart Review — 30–40 h. Odcisk palca → pobieranie z sieci → LLM → pamięć podręczna z TTL i wersjonowaniem.
5. Utwardzanie DB / SQL — 25–30 h. Indeksy, ograniczenia, egzekwowanie własności, bezpieczeństwo null, czyste migracje.
6. Testy / CI — 20–25 h. pytest-asyncio, pokrycie krytycznych przepływów, zestaw zgodny z CI.
Moduł Facebooka i pipeline obrazów oszacuję osobno — gdy tylko będę mógł zobaczyć stan tych modułów.
Aby zacząć, będę potrzebował:
— dostępu do repozytorium
— aktualnych migracji Alembic i schematu DB
— .env.example lub listy zmiennych środowiskowych
— przeglądu infrastruktury (Docker, staging, liczba instancji)
— dostawcy LLM i modelu do Smart Review
— aktualnej konfiguracji CI