Python GenAI Developer
Summary
Build and maintain production-grade GenAI agents in Python, integrating LLM tool-calling, RAG pipelines, and real-time speech/data systems for enterprise clients.
Projekty realizowane z wykorzystaniem Pythona oraz technologii AI/ML, obejmujące . budowę aplikacji głosowych, systemów rozpoznawania mowy, analizę danych w czasie rzeczywistym oraz integrację rozwiązań uczenia maszynowego z istniejącymi systemami biznesowymi.
Wymagania
Minimum 4-letnie doświadczenie w inżynierii oprogramowania (Backend lub ML), w tym co najmniej rok w budowaniu i produkcyjnym utrzymywaniu rozwiązań opartych na LLM z realnym ruchem użytkowników.
Udokumentowane wdrożenie co najmniej jednego komercyjnego systemu z funkcją tool calling (działającego produkcyjnie poza fazą demo/PoC) wraz z odpowiedzialnością za jego utrzymanie i obsługę incydentów.
Biegła znajomość języka Python (programowanie asynchroniczne, typowanie, pisanie testów) oraz mile widziana znajomość TypeScript / Node.js na potrzeby warstwy aplikacyjnej.
Praktyczne doświadczenie w pracy z frameworkami agentowymi: LangGraph, LangChain, CrewAI, AutoGen, Pydantic AI oraz oficjalnymi SDK dostawców (Anthropic, OpenAI).
Umiejętność zbudowania autorskiej pętli agentowej od zera (bez użycia zewnętrznych frameworków).
Znajomość standardu MCP (Model Context Protocol) — praktyczna implementacja serwerów oraz klientów, a także projektowanie narzędzi dedykowanych pod konsumpcję przez modele AI.
Doświadczenie w pracy z bazami wektorowymi (pgvector, Qdrant, Weaviate, Pinecone) oraz klasycznymi bazami relacyjnymi (PostgreSQL), z uwzględnieniem technik wyszukiwania hybrydowego (hybrid search).
Znajomość narzędzi do ewaluacji i tracingu: LangSmith, Langfuse, Braintrust, OpenTelemetry oraz praktyczne stosowanie metodologii LLM-as-a-judge i budowy złotych zestawów testowych.
Doświadczenie w inżynierii promptów na poziomie systemowym, pracy ze structured outputs i wymuszaniem schematów danych.
Dobra znajomość infrastruktury i narzędzi deweloperskich: Docker, CI/CD, chmura (AWS / Azure / GCP), platformy zarządcze (Amazon Bedrock / Google Vertex AI), obsługa kolejek, zadań długobieżnych oraz komunikacji streamingowej (SSE / WebSocket).
Znajomość fundamentów MLOps / LLMOps: wersjonowanie promptów i konfiguracji, wdrażanie strategii rollout/rollback oraz praca z feature flagami.
Znajomość wymogów prawnych i zgodności (Compliance) w praktyce: wdrażanie logów audytowych dla działań agenta, stosowanie retencji i minimalizacji danych (RODO) oraz przekładanie zapisów AI Act na wymagania architektury technicznej.
Umiejętność debugowania systemów niedeterministycznych — cierpliwość i dociekliwość w analizie trajektorii modelu oraz sprawnym izolowaniu źródeł błędów.
Ekspercka diagnoza problemów — szybkie i precyzyjne odróżnianie usterek promptu od błędów w narzędziach, danych czy samej architekturze.
Umiejętność współpracy z Analitykami i Product Ownerami — przekładanie złożonych ograniczeń technicznych na realne konsekwencje produktowe i biznesowe.
Nawyk skrupulatnego dokumentowania decyzji projektowych, w tym czytelnego uzasadniania odrzuconych wariantów architektonicznych.
Zadania
Implementacja agentów i orkiestracji: pętla działania, planowanie, warunki zakończenia, obsługa przerwań i wznowień
Projektowanie i implementacja narzędzi (tool/function calling): kontrakty, walidacja argumentów, idempotencja, komunikaty błędów zwracane modelowi w formie, z której potrafi się naprawić
Zarządzanie kontekstem: budowanie promptów systemowych, kompresja i pamięć długoterminowa, kontrola rozmiaru okna, cache'owanie kontekstu
Integracje z systemami klienta: API, MCP, kolejki, bazy, uwierzytelnianie i propagacja uprawnień użytkownika do działań agenta
Warstwa RAG: pipeline'y ingestii, chunking, embeddingi, retrieval i re-ranking, oceny trafności wyszukiwania
Niezawodność: timeouty, limity iteracji, circuit breakery, budżety tokenów i kosztów per zadanie, degradacja do prostszej ścieżki
Bezpieczeństwo: obrona przed prompt injection, sandboxing wykonywania kodu, zasada najmniejszych uprawnień dla narzędzi, sanityzacja danych wejściowych z niezaufanych źródeł, unikanie wycieku danych przez narzędzia
Observability i evale w CI: tracing trajektorii, logowanie wywołań narzędzi, regresje jakości jako blokada merge'a
Optymalizacja: dobór modelu do zadania, routing, batching, streaming, redukcja latencji i kosztu bez utraty jakości
Utrzymanie po wdrożeniu: reagowanie na zmiany wersji modeli, aktualizacje promptów i narzędzi, analiza incydentów