vladislav@rajtik:~$ whoami
Vladislav Rajtmajer
Senior PHP / Laravel vývojář
Plzeň · remote · spolupráce na IČO
k dispozici pro novou spolupráci
vladislav@rajtik:~$ cat about.md
Webové aplikace a backend stavím už víc než dvanáct let. Pracuji hlavně v Laravelu: navrhuji REST API a API pro frontend, data ukládám do PostgreSQL, řeším fronty a tu nudnou práci kolem spolehlivosti, díky které se API chová předvídatelně. Frontend dělám v Livewire a Vue.js.
Než jsem přešel na web, deset let jsem dělal embedded a IoT: firmware v C pro Atmel AVR a PIC, binární protokoly a telemetrii. Tam jsem se naučil hlídat přesný formát dat a brát okrajové případy jako běžný provoz.
AI používám každý den, v produktech i v editoru, a vím, kde selhává. AI proto dostává přísné schéma výstupu a deterministické nástroje. A o tom, jestli je práce hotová, rozhodují testy a já, ne AI.
# Hledám dlouhodobou remote spolupráci na IČO, ideálně na moderním PHP/Laravel stacku.
vladislav@rajtik:~$ cat ai.md --in-production
Billify LLM v produkci Claude převádí PDF faktury od dodavatelů do typovaného schématu. Kurz ČNB si model bere z nástroje napojeného na mou vlastní kurzovou službu. Co je nejasné, skončí v poznámce ke kontrole a každý řádek potvrdí člověk. Kvóta pro každý tým, auditní log a nejlevnější model, který obstojí (asi 0,01 USD za PDF). pis-cesky open-source plugin pro Claude Code Učí model psát česky tak, aby text nezněl jako strojový překlad. Nejde o blacklist frází: pravidla vycházejí z textů psaných lidmi a kontrolní agent nikdy nevidí zadání, takže posuzuje jen text. Každodenní práce Claude Code AI je pro mě nástroj, autorem kódu zůstávám já. Kde pomůže, nechám ji projít kód, porovnat možnosti, zkontrolovat změnu nebo převzít rutinu. Návrh a rozhodnutí zůstávají na mně a nic se nemerguje, dokud neprojdou Pest a PHPStan a já si diff nepřečtu. Měřím, kolik práce s AI stojí (audity tokenů), a na blog.rajtik.com píšu o jejích chybách. vladislav@rajtik:~$ ls projects/
CAPTCHA bez sledování · EU CAPTCHA na principu proof-of-work, od začátku navržená v souladu s GDPR. Nic nesleduje a Google nepotřebuje. Má vlastní balíček pro Laravel a plugin pro WordPress.
fakturační API · LLM · CZ Faktury vystavíte přes jednoduché REST API. Pro vývojáře, kteří radši zavolají endpoint, než by se proklikávali účetním programem. Přijaté PDF faktury přečte LLM a aplikace z nich připraví měsíční přiznání k DPH.
open-source produkt · PoE2 Bezplatný pomocník pro Path of Exile 2 postavený na Laravelu, Reactu a Inertii: plánovač buildů, nástroje pro pasivní strom, generátor loot filtrů a sdílení buildů.
herní nástroje · OSS TypeScript toolkit nezávislý na frameworku: extrakce z GGPK, typované extraktory herních dat a headless engine pro geometrii pasivního stromu s rendererem v Reactu. Používá ho Exile to Exile.
psaní · CZ/EN Zápisky z dílny: píšu o programování, elektronice, AI nástrojích a podnikání. Česky i anglicky.
ESP32 · Laravel · PostgreSQL Meteostanice na balkoně, můj vlastní koncept, od čidla po web. Firmware pro ESP32 v C++ čte čtyři senzory přes I2C a I2S, déšť pozná ze spektra mikrofonu, a když vypadne síť, uchová ve flash paměti měření za celý den. Schémata jsou v KiCadu. Data přijímá API v Laravelu a ukládá je do PostgreSQL. Slunce ohřívá radiační štít, a tak regresní model kalibrovaný podle stanice ČHMÚ Plzeň-Mikulka tenhle ohřev odečítá podle osvitu a polohy slunce. Model jde do provozu teprve tehdy, když je na dnech, na kterých se neučil, přesnější než RAW data z čidla.
vladislav@rajtik:~$ cat packages.json --published
balíčky vycházejí ve 3 ekosystémech: Composer · WordPress.org · npm
vladislav@rajtik:~$ cat exile2exile app/Services/GameDataReleases.php
public function activate(string $version): void
{
if (! $this->has($version)) {
throw new RuntimeException("release {$version} is not staged");
}
$tmp = $this->currentLink().'.'.bin2hex(random_bytes(4));
if (! @symlink("releases/{$version}", $tmp)) {
throw new RuntimeException("could not create the swap symlink at {$tmp}");
}
if (! @rename($tmp, $this->currentLink())) {
@unlink($tmp);
throw new RuntimeException('could not swap the current symlink');
}
} Ukázka z Exile to Exile. Ověřená vydání herních dat se aktivují atomickou výměnou symlinku: každý požadavek vidí buď předchozí úplné vydání, nebo nové, nikdy napůl nahraná data.
vladislav@rajtik:~$ git log --oneline --career
2022 - dosud PHP vývojář · Na volné noze (OSVČ) Webové aplikace, REST API a API pro frontend, Livewire, Vue.js, PostgreSQL.
2021 - 2022 PHP vývojář · UBK s.r.o. Vývoj v Laravelu na několika klientských produktech.
2018 - 2021 Vývojář · Na volné noze CMS pro mezinárodní firmu. SCRUM, denní komunikace jen v angličtině. PHP 8, Nette, MariaDB.
2016 - 2018 Vývojář · MySolutions s.r.o. Seznamovací platformy ve 12 zemích. SCRUM, standupy v angličtině. PHP, Nette, MySQL.
2013 - 2015 IT administrátor a vývojář · Yazaki Interní software pro skladové hospodářství kabelových svazků, k tomu správa IT.
před 2013 Embedded, IoT a správa systémů Deset let firmwaru v C (Atmel AVR / PIC) včetně validátoru bankovek, binární protokoly pro komunikaci s hardwarem, telemetrická API, LoRaWAN; servery s Linuxem a Windows; podnikové aplikace v Delphi a FoxPro.
vladislav@rajtik:~$ cat stack.txt
PHPLaravelnávrh REST APIPostgreSQLMySQLRedisPest / PHPUnitPHPStanLivewireVue.jsInertiaTypeScriptintegrace LLM (Claude, laravel/ai)Claude CodeDockerLinuxNette (2016 - 2021)embedded CIoT / LoRaWAN
Čeština: rodilý mluvčí. Angličtina: pracovní úroveň, roky denních standupů jen v angličtině.
vladislav@rajtik:~$ contact --now
vladislav@rajtik:~$ cv --download
vladislav@rajtik:~$