commit cf69964aaf98411b1f58d42aae5726fea14da2b0 Author: marauder-actual Date: Wed Jun 10 22:31:01 2026 +0200 initial CV — LaTeX source and compiled PDF diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9c28817 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +*.aux +*.log +*.out +*.synctex.gz +*.fls +*.fdb_latexmk diff --git a/cv.pdf b/cv.pdf new file mode 100644 index 0000000..0feb108 Binary files /dev/null and b/cv.pdf differ diff --git a/cv.tex b/cv.tex new file mode 100644 index 0000000..0c8e835 --- /dev/null +++ b/cv.tex @@ -0,0 +1,220 @@ +%------------------------- +% CV — Adam Ladachowski +% Sans-serif, A4, matches desktop style +%------------------------- +\documentclass[a4paper,10pt]{article} + +\usepackage[a4paper,left=1.8cm,right=1.8cm,top=1.5cm,bottom=1.5cm]{geometry} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{helvet} +\renewcommand{\familydefault}{\sfdefault} +\usepackage{titlesec} +\usepackage{enumitem} +\usepackage[hidelinks]{hyperref} +\usepackage{fontawesome5} +\usepackage{xcolor} +\usepackage{tabularx} +\input{glyphtounicode} +\pdfgentounicode=1 + +\pagestyle{empty} + +% Section: bold, large, with thick rule underneath +\titleformat{\section} + {\large\bfseries} + {}{0em}{}[\vspace{2pt}\hrule height 0.8pt\vspace{4pt}] +\titlespacing*{\section}{0pt}{10pt}{4pt} + +% Remove paragraph indent +\setlength{\parindent}{0pt} + +% Bullet list style +\setlist[itemize]{leftmargin=1.2em, itemsep=1pt, parsep=0pt, topsep=3pt, label=\textbullet} + +%------- Custom commands -------- + +% Job heading: two rows, full width tabular +% Row 1: bold title (left) — date (right) +% Row 2: italic company (left) — italic location (right) +\newcommand{\jobheading}[4]{% + \vspace{6pt}% + \begin{tabular*}{\textwidth}{@{}l@{\extracolsep{\fill}}r@{}} + \textbf{#1} & #2 \\ + \textit{#3} & \textit{#4} \\ + \end{tabular*}% + \vspace{2pt}% +} + +% Skill table row +\newcommand{\skillrow}[2]{% + #1 & #2 \\[3pt] +} + +%------------------------------------------- +\begin{document} + +%---------- HEADING ---------- +\begin{center} + {\huge\textbf{Adam Ladachowski}} \\[5pt] + {\small Warsaw, Poland \enspace|\enspace Remote\,/\,Hybrid \enspace|\enspace EU Citizen} \\[4pt] + {\small + \faIcon{envelope}\enspace\href{mailto:adam@saiden.dev}{adam@saiden.dev} \quad + \faIcon{github}\enspace\href{https://github.com/aladac}{aladac} \quad + \faIcon{linkedin}\enspace\href{https://linkedin.com/in/aladac}{aladac} \quad + \faIcon{phone}\enspace\href{tel:+48535329895}{+48\,535\,329\,895} + } +\end{center} + +\vspace{2pt} + +%---------- SUMMARY ---------- +\small +Backend engineer with 20 years shipping production systems in Ruby and Rails. +Built platforms across telecom, media, proptech, SaaS, and event ticketing --- +from sole-engineer greenfields to large-scale Rails monoliths. +Currently designing and operating an AI development platform: agent orchestration, +model fine-tuning, and a semantic memory system. + +%---------- EXPERIENCE ---------- +\section{Experience} + +\jobheading + {Senior Software Engineer}{Jan 2023 -- Present} + {Jampack --- Event ticketing \& hotel packages for festivals (180K+ guests, 90 countries)}{Remote} +\begin{itemize} + \item Owned payment integration (Coinbase Commerce), insurance workflows, auth system, and cart recovery --- recovery mechanism measurably reduced booking abandonment. + \item Drove architectural decisions across the platform. Mentored junior engineers. + \item Stack: Ruby, Rails, PostgreSQL, Redis, Sidekiq, AWS (EKS/Kubernetes, CodePipeline), Heroku, GitHub Actions. +\end{itemize} + +\jobheading + {Senior Ruby Engineer}{Aug 2021 -- Jan 2023} + {Marketer Technologies --- Norwegian proptech, AI-powered marketing for 1/3 of Norway's residential market}{Remote} +\begin{itemize} + \item Led a 3-person Rails team within a 15-person polyglot group (Rails, Node, Python). Designed inter-service communication via RabbitMQ. + \item Delivered Smartsale --- a real estate sales platform with interactive Mapbox visualization and real-time pricing, now serving the Norwegian market. + \item Stack: Ruby, Rails, PostgreSQL, GraphQL, RabbitMQ, Mapbox, OpenAPI, Elasticsearch. +\end{itemize} + +\jobheading + {Senior Software Engineer}{2016 -- 2021} + {Roomzilla --- Smart workplace management SaaS (Cambridge Innovation Center)}{Warsaw} +\begin{itemize} + \item Joined as sole engineer. Rebuilt the application, drove Rails 5\textrightarrow6 migration, then hired and led the team (2 Rails, 1 Vue) that completed the platform refactor. + \item Calendar sync across Google and Microsoft ecosystems, Stripe payments, interactive floorplan navigation. + \item Stack: Ruby, Rails, PostgreSQL, Vue.js, Redis, Google Calendar API, MS Graph API, Stripe. +\end{itemize} + +\jobheading + {Software Engineer}{2014 -- 2016} + {Cyfrowy Polsat --- Largest digital TV platform in Central/Eastern Europe (3.5M+ subscribers)}{Warsaw} +\begin{itemize} + \item Built Kantei --- a centralized Heroku-like CD platform, eliminating ad-hoc deployment across 5 engineering teams. + \item Optimized VOD page load with global lazy loading. Co-developed IP tracking system for unauthorized streaming detection. + \item Stack: Ruby, Rails, PostgreSQL, MongoDB, Sidekiq, Docker, HAproxy, etcd, fluentd. +\end{itemize} + +\jobheading + {Software Engineer / Team Lead}{2006 -- 2014} + {Comverga (mProfi) --- Telecom SaaS, SMS/voice APIs with direct carrier integrations}{Warsaw} +\begin{itemize} + \item Built and grew the engineering team from 3 to 6 over 8 years. Designed SMS APIs (REST, SFTP), IVR flows on Asterisk, carrier-grade gateways via Kannel, ISDN/SIP trunk integrations, billing system for an MVNO. + \item Stack: Ruby, Rails, PHP, Perl, Bash, Asterisk, Kannel, PostgreSQL, MySQL. +\end{itemize} + +%---------- AI & PLATFORM ENGINEERING ---------- +\section{AI \& Platform Engineering} + +\jobheading + {Creator / Operator}{2025 -- Present} + {Personal AI development platform}{} +\begin{itemize} + \item Designed a multi-host agent orchestration platform (Rust, TypeScript, WireGuard mesh) with a semantic memory system (SQLite + embeddings, 5{,}500+ entries) and cross-machine task dispatch. + \item Ran LoRA fine-tuning on Qwen 27B (H100/H200, Unsloth, vLLM serving) and built a voice synthesis pipeline with cloned voices (Chatterbox/Piper TTS). + \item Shipped client applications (web chat via FastAPI/SSE, iOS and macOS prototypes) and an extensible plugin system with 25+ tool modules. +\end{itemize} + +%---------- INFRASTRUCTURE ---------- +\section{Self-Hosted Infrastructure} + +\begin{itemize} + \item Three-host mesh over WireGuard (macOS + 2x Linux) --- Gitea for source control, Coolify for Docker deployments, Cloudflare tunnels for public endpoints. + \item opencode (AI coding platform) running across all hosts --- agents, MCP servers, cross-machine dispatch, persistent sessions. + \item GPU compute on RunPod (H100/H200) for training, local NVIDIA for inference and TTS serving. +\end{itemize} + +\newpage +%---------- OPEN SOURCE ---------- +\section{Open Source} + +\vspace{2pt} +\begin{tabularx}{\textwidth}{@{}l X@{}} + \textbf{tensors} & Python CLI for safetensor files, CivitAI model management, and image generation via ComfyUI / stable-diffusion.cpp. Published on PyPI. \newline \textit{\href{https://repos.saiden.dev/saiden/tensors}{repos.saiden.dev/saiden/tensors}} \\[8pt] + \textbf{browse} & TypeScript MCP server for headless browser automation in Claude Code. \newline \textit{\href{https://repos.saiden.dev/saiden/browse}{repos.saiden.dev/saiden/browse}} \\[8pt] + \textbf{madcat-tts} & Python GPU TTS daemon --- multi-engine voice synthesis with Chatterbox, Piper, VoxCPM2, and XTTS. \newline \textit{\href{https://repos.saiden.dev/madcat-os/madcat-tts}{repos.saiden.dev/madcat-os/madcat-tts}} \\[8pt] + \textbf{lora} & LoRA fine-tuning toolkit --- persona and specialist adapters for Qwen models (Unsloth, H100/H200). \newline \textit{\href{https://repos.saiden.dev/madcat-os/lora}{repos.saiden.dev/madcat-os/lora}} \\[8pt] + \textbf{spark} & Recipes and scripts for fine-tuning on the NVIDIA DGX Spark (GB10). \newline \textit{\href{https://repos.saiden.dev/madcat-os/spark}{repos.saiden.dev/madcat-os/spark}} \\[8pt] + \textbf{chat-saiden} & Web chat application --- Python/FastAPI, Google OAuth, persona calibration, SSE streaming, TTS integration. \newline \textit{\href{https://repos.saiden.dev/madcat-os/chat-saiden}{repos.saiden.dev/madcat-os/chat-saiden}} \\ +\end{tabularx} + +%---------- SKILLS ---------- +\section{Skills} + +\vspace{2pt} +\begin{tabularx}{\textwidth}{@{}l X@{}} + \skillrow{\textbf{Core}}{Ruby (20 yrs), Rails, PostgreSQL, Redis, Sidekiq, REST/GraphQL APIs} + \skillrow{\textbf{Secondary}}{TypeScript, Python, JavaScript, Vue.js, React, FastAPI, Hotwire/Turbo} + \skillrow{\textbf{AI \& ML}}{LLM fine-tuning (LoRA/Unsloth), vLLM serving, prompt engineering, RAG, embeddings, agent orchestration, MCP/tool-use} + \skillrow{\textbf{Data}}{PostgreSQL, MongoDB, Redis, Elasticsearch/OpenSearch, SQLite, MySQL} + \skillrow{\textbf{Infrastructure}}{Docker, Kubernetes (EKS), AWS (S3, SQS/SNS, RDS, CodePipeline), Heroku, GitHub Actions, Cloudflare, WireGuard} + \skillrow{\textbf{Practices}}{RSpec, CI/CD, code review, system architecture, mentoring, remote-first collaboration} +\end{tabularx} + +%---------- EDUCATION & OTHER ---------- +\section{Education \& Other} + +\vspace{2pt} +\begin{tabularx}{\textwidth}{@{}l X@{}} + \textbf{1998 -- 2000} & Warsaw University of Technology (Politechnika Warszawska) --- Faculty of Production Engineering, weapons systems specialization. Did not complete. \\[4pt] + \textbf{Languages} & Polish (native), English (fluent, daily working language), German (basic), Russian (basic, reads Cyrillic). \\[4pt] + \textbf{Availability} & B2B contract or employment. Remote preferred, hybrid possible. Immediate. \\ +\end{tabularx} + +%---------- ANCIENT HISTORY ---------- +\section{Ancient History} + +\jobheading + {Linux Systems Administrator}{1999 -- 2006} + {Polska Online \textrightarrow\ NET2NET \textrightarrow\ TDCI --- ISP and network integration (successive acquisitions)}{Warsaw} +\begin{itemize} + \item Joined Polska Online as a Linux sysadmin. Transitioned through NET2NET into TDCI as the company changed hands. + \item Network installations and configurations for Polska Online and Polbox --- DSL deployments, Cisco equipment, on-site infrastructure. Built a large-scale corporate network for Ford dealerships on Cisco 1603 ISDN BRI routers. + \item TDCI contract for MSWiA (Ministry of Internal Affairs) --- network setup and Windows 2000 fileserver on Active Directory domain. + \item Stack: Linux (Red Hat, Debian), Cisco IOS, Windows 2000 Server, Bash, DNS, DHCP, Apache, qmail. +\end{itemize} + +\jobheading + {Unix Systems Administrator}{1998 -- 1999} + {Polnet Technologies International --- IT services for PKO BP (Poland's largest retail bank)}{Warsaw} +\begin{itemize} + \item First job. Administered Sequoia fault-tolerant servers and Oracle databases serving PKO BP's housing savings system. + \item Stack: Solaris, Linux (Red Hat), Oracle, Bash, Apache. +\end{itemize} + +\vspace{2pt} +\small\textit{Linux user since 1996 (Red Hat 4.x, kernel 2.0). First internet dial-in the same year.} + +%---------- INTERESTS ---------- +\section{Interests} + +\begin{itemize} + \item Honda guy. Own Sayuki --- a track-prepped EJ9 Civic with a B16A swap. Helga the Q5 8R handles family duties. Track days at Tor Modlin and Tor \L\'od\'z --- short technical circuits, both around 1 km. + \item Science fiction --- both reading and writing. Currently working on a near-future military fiction project. + \item Anime and manga. Ghost in the Shell is a permanent reference frame. + \item Linux since the mid-90s. Still run it on everything that isn't a Mac. + \item Aggressive inline. Rarely visit the skatepark these days --- kids grew out of it, but I can still fakie and grind. + \item Mechanical engineering dropout who never stopped thinking about how things move. +\end{itemize} + +\end{document}