I’ll build the whole thing.

From first idea to live product.Design, code, payments and launch.

A cover in the style of an old popular-science magazine: an engineer’s desk at night, a brass lamp, a monitor with a Battleship game, a wooden toy ship, a notebook with a ticked list, posters of the Moon and a space shuttle, and a glass of tea in a holder.
  1. Ideas
  2. Code
  3. Payments
  4. Users
  5. Real products
that’s me

About mefor friends

What’s your name?
Nick Lukashik
What do you do?
One engineer for the whole product, from idea to production

Built, shipped and live.

Battleship

Play

Classic Battleship, online — the first product on my platform. Designed, built and run end to end: interface, game server, payments and infrastructure.

How it works

  1. Live 1-on-1. Matches run in real time and survive a dropped connection.

  2. 4 bots. From random shots to a probability map.

  3. Elo rating. A quick match with an equal opponent, or a room by link.

  4. Stats. Leaderboard, shot heatmap, match replays.

  5. Premium. Subscription and purchases via Lava.

  6. Multilingual. On desktop and on a phone.

Against the Expert bot
  • Fleet placement
  • Elo leaderboard
  • Profile and stats
  • Next.js
  • NestJS
  • WebSocket
  • PostgreSQL
  • Kubernetes
Play

Screens from a local build with test data.

What I can build.txt — Notepad

What I can build for you.

6+ years in the JavaScript ecosystem. You bring an idea or an existing product; I take it through design, code, payments and infrastructure to launch, and stay for support. One engineer for the whole chain: no handoffs, one person answerable for the result.

Stack

frontend

  • Next.js 16
  • React 19
  • TypeScript 6
  • Tailwind CSS 4 · Radix UI
  • next-intl
  • MobX
  • Three.js · React Three Fiber
  • sql.js · Web Worker

backend

  • Node.js 24
  • NestJS 12
  • Zod 4
  • jose · ES256 JWT
  • WebSocket · ws
  • Backend for frontend
  • Lava
  • Resend · React Email
  • grammY
  • Google sign-in
  • Passkeys · WebAuthn
  • AI helper in the books

data

  • PostgreSQL 18 · CloudNativePG
  • Drizzle ORM
  • Valkey 9

messaging

  • RabbitMQ 4
  • Outbox and inbox

infrastructure and delivery

  • K3s
  • Cloudflare
  • Traefik · cert-manager
  • Argo CD
  • GitHub Actions · GHCR
  • Docker Buildx Bake
  • Sealed Secrets
  • pnpm · Turborepo

observability

  • Prometheus
  • Grafana
  • Loki · Alloy
  • Pino
  • Watchdog → Telegram

quality and testing

  • Vitest
  • Testcontainers
  • Playwright
  • axe-core
  • Biome

AI-assisted development

  • Claude Code · Codex
  • Context7 · MCP
  • Contracts and tests as the gate

Each one in detail on the stack menu

Process

Clear steps, visible progress.

Every stage ends with something you can open and check, not a status report.

  1. Discovery

    Goals, users, constraints and the smallest version worth launching.

    You see A written scope, milestones and an estimate.

  2. Design

    Key flows and screens first, then the architecture and the data model.

    You see Screens to review and a short architecture note.

  3. Build

    Short iterations: frontend, backend, payments, integrations and tests together.

    You see A staging version to click through after every iteration.

  4. Launch

    Production setup — domain, CI/CD, monitoring, alerts and backups — then the release.

    You see The product live on your domain, with alerts already wired.

  5. Support

    Fixes, improvements and new features, with an eye on metrics and alerts.

    You see Regular releases and a clear list of what comes next.

AI coding agents take the routine; contracts, tests and my review decide what ships.

08Editor’s column

How I became a programmer.

Hi, I’m Nick! I’ve been writing code since I was 12. It started with websites for Counter-Strike servers (HTML, CSS, JS, PHP), so headshots have been part of my life for a long time :) From 2016 I was already building Counter-Strike projects to order: roulette and jackpot sites, Steam trade bots, a browser extension with skin prices. Somehow it never stopped.

Now it’s 6+ years of commercial full-stack work, mostly TypeScript, React, Next.js and Node.js with Postgres. I joined my first company in January 2020, before university even started, and then studied at MIREA alongside the job.

Right now I’m at Printify, a big print-on-demand platform, where I work on both the frontend and the APIs. At one point I took a whole B2B ordering product from an idea to production with a small team. That’s the kind of work I like most: you own something end to end and then actually watch people use it. Alongside that I’m an AI full-stack engineer at Toggle, building LLM products: from a self-hosted open-source model on GPUs to RAG and MCP agents.

I’m pretty AI-first in how I work. I use coding agents for most of the code, with my own rules and skills for them, and Jira and Confluence plugged in through MCP. I still review every step myself, because the agent is fast but I’m the one who gets the call when prod breaks :)

For fun I run my own platform, outegro.dev, on a Kubernetes cluster I set up myself. I’m the only DevOps, the on-call and the person who gets paged there. It’s my playground where I try things out before I bring them to work.

I like to keep learning. My favorite way is to take a service I already know well and rewrite it from scratch in something new. Lately that’s been Go and Rust. That’s how my platform’s watchdog got rewritten, and its drawing is in the hobby club below.

Nick

editor-in-chief

10Hobby club

Made by hand.

Drawings of things I built and wrote myself, outside the day job. Feel free to try this at home.

  1. A bike built from parts

    Sheet 1

    Fig. 1. The bike, general view

    I built my own bike from parts. I love long rides and cycling trips on it.

    • on the bike I try to shave off seconds, at work milliseconds
    • if the brakes don’t work, nothing else matters
  2. A price extension for skin trading

    Sheet 2

    Fig. 2. The browser window, general view

    From the years I built Counter-Strike projects to order, 2016–2020. A browser extension took item prices from csgolounge.com and market.csgo.com and showed both right on the trading pages.

    Diagram

      • csgolounge.com
      • market.csgo.com
    1. a browser extension
    2. both prices on the trading page
  3. One watchdog, two breeds

    Sheet 3

    Fig. 3. The watchdog’s kennel

    Every 5 minutes the watchdog makes its rounds of my platform: pods, the node, certificates, backups, Argo CD and HTTP checks, and it sends alerts and a daily digest to Telegram. Production runs the shell version. From the same spec I rewrote it from scratch twice, in Go and in Rust, with a DRY_RUN shadow mode.

    Diagram

    1. one spec
      • Go
      • Rust
    2. Telegram
    • woof! every 5 minutes

12Incident report

What broke and how it got fixed.

Tales from production: short notes on what broke on my watch and what was done about it.

  1. Production

    Minor version runs riot

    A minor Bun release broke next-auth right in production. Rolling back did not help: the old builds had already been overwritten. The bug was reproduced on dev, Bun went back to the previous version, and later the fix landed upstream.

    Action taken: versions are now pinned like life depends on it.

  2. id.outegro.dev

    Post-quantum signature too big for the door

    On Node 24, SimpleWebAuthn offered the ML-DSA-44 algorithm first. Its signature weighs 3.2 KB, and passkey sign-in broke.

    Action taken: passkey registration is pinned to ES256, EdDSA and RS256.

  3. outegro.dev

    Eleven apps go out at once

    During a full rollout of all 11 apps the server lost its way out to the internet: load average around 68, image pulls failing. Then it all came back by itself.

    Action taken: none, the server caught its breath and went back to work on its own.

  4. Home

    Load test chokes the home internet

    A load test ran from home, from one IP, through Cloudflare. Cloudflare started dropping connections, and the home link, about 460 KB/s, filled up completely.

    Action taken: load tests now run on the server itself, straight at the origin.

  5. CRM

    Late webhook rewrites history

    Messaging webhooks arrived out of order, and a delayed callback overwrote newer CRM state.

    Action taken: events got versions and updates became idempotent. A latecomer can’t overwrite anything now.

  6. Checkout

    One slow carrier holds up the whole checkout

    A single slow delivery provider could hang the entire checkout.

    Action taken: bounded timeouts, a circuit breaker and controlled retries. A slow carrier now only slows itself down.

14Employment record book

Where I’ve worked and what I got done.

Building to order since 2016, on staff for over 6 years, since January 2020. Every entry comes from my résumé.

Employment record book

Surname
Lukashik
Name
Nick
Education
higher: MIREA, Bachelor’s in Computer Science, 2020–2024
Occupation
software engineer
Since 2016

Employment record

  1. 2016 – 2020

    Worked as an independent developer

    Counter-Strike roulette and jackpot sites set up to order, Steam trade bots and skin-trading tools.

    Commended for:

    • Steam trade bots with automated trade-offer confirmation and the then-new Steam Guard mobile confirmations.
    • Custom visualisations for trading on csgolounge.com, so listings and trade offers were easier to read and compare.

    Source: résumé

  2. 01.2020 – 01.2021

    Joined AdviceSolution as a Software Engineer

    Customer-facing service pages, technical knowledge tools and business integrations.

    Source: résumé

  3. 01.2021 – 02.2022

    Joined FridayTech as a Full-Stack Engineer

    E-commerce logistics and fulfillment platform for Latin America.

    Commended for:

    • A Node.js BFF for checkout: roughly seven backend dependencies moved server-side, about two browser requests left.
    • A React component library adopted by three teams.

    Source: résumé

  4. 02.2022 – 02.2023

    Joined Kommo as a Software Engineer

    Global CRM platform for small and midsize businesses.

    Commended for:

    • A lead-notification wizard: typical setup down from more than 30 minutes to under 5.
    • Telegram and WhatsApp provider modules unified behind one shared contract.

    Source: résumé

  5. 03.2023 – present

    Joined Printify as a Full-Stack Engineer

    Print-on-demand e-commerce platform, 1M+ monthly users platform-wide.

    Commended for:

    • A new B2B ordering platform from requirements to production; the new revenue stream reached profitability in roughly 3 months.
    • Three back-office workflows consolidated into one operations platform; employee onboarding down from around 3 weeks to 1 week.

    Source: résumé

  6. 04.2025 – present

    Joined Toggle as an AI Full-Stack Engineer, alongside Printify

    Applied LLM products, agentic workflows and GPU inference.

    Commended for:

    • A conversational AI SaaS on a self-hosted open-source LLM, since commercial APIs could not meet its content requirements: GPU inference and a Node.js API with retries and graceful degradation.
    • An MCP support agent with scoped, read-only tools that files structured Jira reports.

    Source: résumé

The full version: a one-page résumé to print

16Contact

Good things start with a conversation.

Tell me what you want to build or fix — a few lines are enough. Open to projects, long-term contracts and ambitious teams.

Coupon

A free 30-⁠minute call

Valid for the bearer: we’ll go through the task, the timeline and the cost. No strings attached.

Book a call