Skip to content
Open to Full-Stack / Backend roles · Berlin · Hybrid · Remote Germany

I build products, not Jira tickets.

Arti — Full-Stack / Backend Engineer, Berlin. I take a feature from the first sketch to the production server, and I stay for what happens after.

TypeScript · React · Next.js · Node.js · .NET · PostgreSQL

$ ship feature --from idea --to production
  1. idea
  2. architecture
  3. database
  4. backend
  5. frontend
  6. deploy
  7. production
in production since 2022
3+ yrs
engineer on a B2B SaaS — me
1
B2B clients onboarded by config
15+
page load after my rebuild
3 s → 150 ms

60 seconds

What you get, in six blocks.

01

Product ownership

For a year I was the only engineer at a Berlin B2B SaaS: architecture, code, releases, incidents. I rebuilt the product and carried the B2C → B2B pivot that took the company to profitability.

02

Multi-tenant backends

Designed a multi-tenant PostgreSQL schema and 100+ REST endpoints. New B2B clients were onboarded through configuration — 15+ of them, zero code changes per client.

03

Auth & access

RBAC, JWT in httpOnly cookies, bcrypt. Replaced ASP.NET Identity in a live system without losing a user.

04

Payments & documents

Stripe subscription billing, generated PDF offers, invoices and receipts with embedded Stripe payment, Lexware accounting and SendGrid email workflows.

05

Infrastructure

Ran production alone: Linux VPS, Docker, Nginx, certbot, PM2, systemd, GitHub Actions. Cut page load from 3–4 s to ~150 ms. This site is self-hosted the same way.

06

Applied AI

Two Python microservices in production — YOLO object detection and OCR over a 300+ item catalog, 96% / 99% accuracy on plain CPUs. Plus OpenAI / Anthropic API integrations.

Case studies

Real products, real constraints, one engineer.

No todo apps. Each case shows the problem, what I built, how it fits together and what changed.

case 01 · Relofair GmbH · Berlin · sole engineer04/2025 – 03/2026

Rebuilt a legacy app and turned it into a multi-tenant B2B CRM

Problem

Relofair ran on a legacy .NET application built for consumers. The business was pivoting to B2B — selling the platform to partner companies — and needed a CRM that could serve many clients from one codebase. There was one engineer.

What I built

  • Rewrote the product on Next.js / TypeScript with Node.js and ASP.NET Core services behind it
  • Multi-tenant PostgreSQL schema and 100+ REST endpoints; tenant behaviour driven by configuration
  • Role-based access control across tenants
  • Generated PDF offers, invoices and receipts with an embedded Stripe payment; Stripe subscription billing
  • SendGrid email workflows, Lexware accounting, Google Analytics / Ads integrations

My responsibility

Everything technical: architecture, data model, backend, frontend, CI/CD, releases and incident handling.

Architecture

  1. client
    • Next.js app
    • Partner admin
  2. api
    • REST API · RBAC
    • PDF + email jobs
    • Python AI services
  3. data
    • PostgreSQL (multi-tenant)
  4. external
    • Stripe
    • SendGrid
    • Lexware
  5. infra
    • Docker · Nginx · PM2 · GitHub Actions · DigitalOcean
architecture · simplified

Result

  • 15+ B2B clients onboarded through configuration only
  • Page load from 3–4 s down to ~150 ms
  • The B2B pivot brought the company to profitability

Tech

  • Next.js
  • TypeScript
  • Node.js
  • ASP.NET Core
  • PostgreSQL
  • Prisma
  • Stripe
  • SendGrid
  • Lexware
  • Docker
  • Nginx
  • PM2
case 02 · Relofair GmbH · applied AI2025

Photo in, structured catalog items out

Problem

Customers had to pick their items by hand from a catalog of 300+ entries. It was slow and error-prone, and it was the step where people gave up.

What I built

  • Python object-detection service (YOLO), restricted to the catalog’s classes, running on CPU
  • Python OCR service
  • Both behind the main API, so the product just receives catalog IDs and quantities

My responsibility

Designed the service boundaries, fitted detection to the catalog’s classes, integrated them into the product and deployed them next to the rest of the stack.

Architecture

  1. input
    • Photo / voice
  2. api
    • Main API
  3. services
    • Detection (YOLO)
    • OCR
  4. output
    • Catalog items → offer
architecture · simplified

Result

  • 96% detection accuracy, 99% OCR accuracy
  • Ran on existing CPU servers — no GPU bill

Tech

  • Python
  • YOLO
  • OCR
  • Docker
  • REST
case 03 · Vechnost · production migration04/2026 – 09/2026 · part-time

Moved a live backend from ASP.NET Core to NestJS without touching the data

Problem

A production catalog site on ASP.NET Core 8 / Entity Framework. The goal: a TypeScript stack that is cheaper to maintain — while every product, image and admin account in PostgreSQL stays exactly where it is.

What I built

  • NestJS 11 + Prisma mapped onto the existing EF Core schema instead of migrating it
  • Replaced ASP.NET Identity (7 tables, cookie auth) with JWT in an httpOnly cookie, bcrypt and roles
  • Rebuilt the React admin panel
  • Fixed production bugs: mixed content from absolute image URLs in the DB, latin1-corrupted Cyrillic filenames
  • Linux VPS with Nginx, a systemd service and a health-check timer

My responsibility

Solo: migration plan, backend, auth, admin UI, deployment and cut-over. In 2024 I had built the original version, which took the business online — sales grew 400% after launch.

Architecture

  1. client
    • React storefront
    • React admin
  2. edge
    • Nginx · TLS
  3. api
    • NestJS 11 · JWT
  4. data
    • PostgreSQL (schema kept)
architecture · simplified

Result

  • Zero data migration, zero lost records
  • One language across the stack, simpler ops
  • Sales +400% after the original 2024 launch

Tech

  • NestJS
  • Prisma
  • PostgreSQL
  • React
  • Nginx
  • systemd
  • ASP.NET Core
  • EF Core

Also

  • RentAGym · 2023–2024

    B2B startup, acquired at MVP stage. ASP.NET Core backend with Clean Architecture, tenant/landlord permissions, booking-conflict resolution, SignalR real-time.

  • Sensor Hub · 06/2026 – now · in progress

    IoT telemetry: ESP32 → MQTT (Mosquitto) → NestJS ingestion → PostgreSQL / Prisma, JWT auth with per-user device ownership, Last Will liveness, Docker Compose, Next.js dashboard.

  • SaM Solutions · 2022–2023

    Internship: 20+ REST endpoints on ASP.NET Core and a background service aggregating 24-hour data streams.

  • BSUIR · Research Assistant · 2020–2023 · part-time

    University lab run in partnership with Yandex: automated testing of algorithm implementations on large inputs against reference solutions, test-run statistics in Python (pandas) and MATLAB.

Terminal CV

Prefer a shell?

Same CV, different interface. Type help or tap a command.

arti@berlin: ~/cv

❯ whoami

Artsiom Abozny — everyone says Arti. Full-Stack / Backend Engineer based in Berlin. 3+ years in production; the last one as the only engineer of a B2B SaaS.

Contact

Want to build something together?

Currently looking for my next engineering role in Berlin or remotely in Germany. EU Blue Card — no sponsorship needed.

English B2 · German B1 (course ongoing) · Russian, Belarusian native