Przejdź do treści
QuorX

Smart Contract Engineer (Solidity)

Warstwa tokenowa agregatora wymian cross-chain: wielosezonowy airdrop, buy-and-burn i audyt, który ma wrócić czysty.

O tej roli

Budujemy niepowierniczy agregator wymian cross-chain. Routing i backend są zbudowane, a wymiana przechodzi od początku do końca; start jest przed nami. Po nim przychodzi token: wielosezonowy airdrop dla ludzi, którzy korzystają z produktu, i buy-and-burn finansowany z opłat. Routing idzie przez agregator, a nie przez własne pule, więc nie ma tu AMM: powierzchnia on-chain jest mała i celowo nudna, bo tak naszym zdaniem powinien wyglądać kod, przez który przechodzą pieniądze. Mniej więcej jedna trzecia tej roli to nie Solidity, i ta trzecia część też należy do Ciebie.

Czym będziesz się zajmować

  • Airdrop i odbiór na drzewie Merkle, wielosezonowy. To główna część pracy. Nowy korzeń na sezon, brak podwójnego odbioru, wypłata z vestingiem powyżej progu, bramka uprawnień i możliwość wstrzymania odbioru.
  • Buy-and-burn: wydaje USDC ze skarbca na otwartym rynku i pali. Najpierw wyzwalany z multisiga, później przez keepera. To zlecenie rynkowe, więc ochrona przed poślizgiem i MEV musi być prawdziwa.
  • Token: ERC-20 z kreatora OpenZeppelin, z permit. Bez pauzowania, bez własnej logiki transferu.
  • Zestaw testów w Foundry (jednostkowe, fuzz, stanowe inwarianty i fork mainnetu, pokrycie powyżej 95%), plus weryfikacja formalna matematyki i czysta analiza statyczna.
  • Repozytorium kontraktów, jego CI i droga na testnet: lokalny fork Arbitrum, potem Arbitrum Sepolia, potem skrypty wdrożeniowe i weryfikacja na Arbiscanie.
  • Podpięcie Safe i timelocka: dwa Safe (administracyjny i skarbcowy), progi, portfele sprzętowe, timelock przed administracją i osobny klucz pauzy o niskim progu, który go omija na wypadek incydentu.
  • Strzeżony start: limity podnoszone stopniowo, haki pauzy i każdy setter ograniczony już przy wdrożeniu. `setMaxSlippage` bez sufitu to tylne drzwi, a nie pokrętło.
  • Cały cykl audytowy: niezależny przegląd przed audytem, firma audytorska, publiczny konkurs, poprawki i wdrożenie dokładnie tego, co było audytowane.
  • Obsługa sezonów i przekazanie: narzędzia Merkle, nowy korzeń przepchnięty przez multisiga, okno odbioru, nieodebrana reszta. Wszystko zbudowane, a potem przećwiczone na testnecie, aż dwie osoby spoza tematu poprowadzą to bez Ciebie.

Dwa kontrakty, których może nie być

Staking z udziałem w opłatach (blokady, rozliczanie nagród, boost, limit depozytu) i losowa mechanika skrzynek (rozliczanie kluczy, progi nagród i źródło losowości, które nie kosztuje więcej niż nagroda) czekają na opinię prawną. Domyślnie zakładamy, że żaden nie powstanie, ale wyceń oba, bo odpowiedź musi zapaść przed zamrożeniem zakresu audytu, a nie da się zamrozić zakresu wokół nierozstrzygniętego kontraktu. Chainlink CCT jest po starcie: na starcie token ma być tylko gotowy na CCT, a to, czy kiedykolwiek będzie mógł emitować, rozstrzyga się przed wdrożeniem tokena i jest nieodwracalne.

Co jest nasze, nie Twoje

Wszystko off-chain. Backend routingu, frontend wymiany i środowiska są zbudowane; silnik punktów, przeciwdziałanie sybilom, snapshot Merkle, interfejs odbioru i monitoring budujemy obok Ciebie. Vesting zespołu i inwestorów to konfiguracja Sabliera, a nie kontrakt, który piszesz. Opłaty przychodzą off-chain w wielu tokenach na wielu łańcuchach i ich zbieranie to nasza rutyna. Do Ciebie trafia USDC w skarbcowym Safe, a to, jak buy-and-burn z niego czerpie, jest pytaniem projektowym, na które chcemy Twojej rekomendacji, przy jednym warunku: błąd w tym miejscu nie może nigdy sięgnąć dalej niż przydzielona kwota. Płynność zakładamy sami; chcemy Twojego zdania o miejscu notowania przed napisaniem tokena, a nie Twojego czasu na jej prowadzenie.

Pasujesz, jeśli masz

  • Solidity, który trafił na mainnet i trzymał prawdziwe pieniądze.
  • Twoje kontrakty, które przeszły formalny audyt i o których ustaleniach potrafisz opowiedzieć.
  • Stanowe testy inwariantów w Foundry, nie tylko jednostkowe.
  • Potrafisz wymienić realną klasę exploita i powiedzieć, co ją zatrzymuje w kodzie.
  • Zgłaszasz otwartą decyzję, zamiast jej zakładać.

Mile widziane

  • Wypuszczone kontrakty dystrybucji Merkle, vestingu albo stakingu.
  • Profil na Code4rena, Sherlocku albo Cantinie.
  • Obsługa Safe i timelocka.
  • Chainlink CCT albo CCIP.

Co oferujemy

  • B2B, w PLN albo równowartości w USDC. Faktura miesięczna, płatna w siedem dni.
  • W pełni zdalnie, z dowolnego miejsca. Domyślnie asynchronicznie, bez stałych spotkań, CET.
  • Twoje godziny: rozliczasz to, co przepracujesz. Bez dolnego progu i bez sufitu.
  • Firmowy laptop i sprzętowe klucze bezpieczeństwa, dostarczone i skonfigurowane.
  • Spisana specyfikacja, model zagrożeń i katalog klas exploitów, żebyś nie zgadywał wymagań.
  • Dwa do trzech opłaconych audytów (firma plus publiczny konkurs), niezależny recenzent przed nimi i bug bounty działające przed mainnetem.
  • Kilka miesięcy do startu, zakończonych przekazaniem, i opcjonalny retainer po nim.

Jak aplikować

  1. 1.Dwa lub trzy kontrakty Twojego autorstwa, które trafiły na mainnet, i to, co trzymały.
  2. 2.Raporty z ich audytów.
  3. 3.Jeden akapit: przy takim zakresie, co niepokoiłoby Cię najbardziej?
  4. 4.Dostępność i to, na który koniec widełek liczysz.

Punkt trzeci jest tym, który naprawdę czytamy.

Aplikuj

Jedna wiadomość, jeden plik. Trafia do nas mailem, a na tej stronie nic się nie zapisuje.

Punkt trzeci w „Jak aplikować” jest tym, który naprawdę czytamy.
CV
PDF, DOC albo DOCX, do 5 MB.
jobs@quorx.org

Tego, co wyślesz, używamy wyłącznie do odpowiedzi na tę aplikację i usuwamy po zamknięciu rekrutacji. Plik trafia na naszą skrzynkę i nie zostaje na tej stronie.