Newcastle upon Tyne, United Kingdom

Nick Schreiner

Full-stack engineer working across TypeScript and Rust. Currently building a warehouse management platform at Dropper AS.

About

Full-stack engineer at Dropper AS, a Norwegian warehouse-management SaaS, where I'm building the platform end-to-end — order intake through pick, pack, ship, and returns. I work across the TypeScript stack with React and Node.js, and reach for Rust when the problem calls for it. Bilingual in English and Russian.

Experience

  1. Software Engineer at Dropper AS

    Norway

    Oct 2025 — Present

    Working across the frontend on a small product team building the platform from the ground up — dashboard, packing workflow, warehouse mapping tool, and admin console; shipping the CI/CD.

    • Built the mobile-responsive packing station — QR scanning, 5-minute keepalive heartbeats, and multi-box fulfillment state — for the order-fulfillment flow.
    • Designed a custom 2D warehouse mapping engine in PixiJS — drag-and-drop racks and zones, obstacle-aware pick-route generation using A* (via ngraph) and TSP (nearest-neighbor + 2-opt), backed by a command-pattern undo/redo system for non-destructive edits.
    • Shipped the returns workflow as a five-step wizard with explicit step transitions (find-order → form → details → shipping → success), supporting refunds, exchanges, repairs, and gift cards; integration tests cover the critical operations — approve, reject, resolve, receive items.
    • Built the virtualized data-table layer on TanStack Table + Virtual — saved per-user views, batch actions, drag-to-reorder columns, async rendering — with type-safe column definitions; type-check and lint enforced in CI on every PR.
    • Set up i18n infrastructure with type-safe translation keys across English and Norwegian; integrated Sentry for error tracking and PostHog for product analytics.

    TypeScriptReact Router 7ViteTailwindHeroUI

  2. Software Engineer at WHY Functional Nutrition Clinic

    London, UK

    Jan 2024 — Oct 2025

    Built a full-stack site and e-commerce platform for a London-based functional nutrition clinic.

    • Designed and built the marketing site with React, TypeScript, and Express.
    • Modeled and decoupled content via Contentful — 18 entry types covering programmes, packages, consultations, FAQs, and reviews — so the practitioner ships copy, pricing, and product changes without engineer involvement.
    • Implemented Stripe subscription scheduling for multi-session packages — webhook-driven (customer.subscription.created), configurable phase iterations, auto-cancellation after N sessions across three product lines (consultations, packages, programmes).
    • Added Mailchimp newsletter capture and bilingual content (English + Russian) with locale persisted in localStorage — implemented on React Context, no global state library.

    ReactTypeScriptExpressContentfulStripeMailchimp

Side projects

  1. Azalea

    Creator & maintainer

    github.com/Rodis-Infrastructure/azalea

    Discord moderation toolkit where the defaults fall short.

    Discord moderation toolkit — infractions with audit trails, ban/mute requests with reviewer sign-off, VirusTotal-backed URL reputation lookups, and structured event logging across messages, voice, threads, members, and moderation actions. Bun + Prisma + SQLite; Docker with pinned image digests, AsyncLocalStorage-propagated request context across crons and command handlers, graceful-shutdown Sentry flush, and a Bun /healthz endpoint wired to PM2-reload checks. CI gates every PR (lint, type-check, migrations, tests, audit); deploys via PM2 reload with pre-deploy database backups.

    BunTypeScriptdiscord.jsPrismaSQLite

  2. Magnolia

    Creator

    github.com/Archasion/Magnolia

    Rust Discord bot for Roblox DevForum communities.

    Discord bot built on the Twilight ecosystem — tokio async, SQLite with Refinery migrations, serde_yaml config, and reqwest-driven external API integrations. Verifies Roblox DevForum (Roblox's developer forum) rank, manages roles based on verification state, serves an FAQ interaction command, and persists highlights data. Modular command/component handlers; anyhow error chains throughout.

    RustTwilightTokioSQLiteRefineryreqwest

  3. azalea-editor

    Creator

    github.com/Rodis-Infrastructure/azalea-web-config-editor

    Web UI for Azalea's configs — atomic saves with validation and rollback.

    Full-stack config editor for the Azalea moderation bot — Bun + Hono backend serving a React frontend with Monaco editor and structured forms (react-hook-form + zod). Discord OAuth (identify, guilds), per-guild RBAC mirrored from the bot's permission model. Save pipeline: lock → validate → mtime-check → backup → atomic write → PM2 reload → health poll → rollback on failure. SQLite audit log and session store.

    BunHonoReactMonacoViteSQLite

  4. git-rs

    Solo project

    github.com/Archasion/git

    Reimplementing Git's plumbing in Rust.

    Reimplements Git's plumbing in Rust from scratch — SHA-1 content addressing, zlib-compressed object storage via flate2, and the core inspection commands: init, hash-object, cat-file, ls-tree. Operation-level error chains via anyhow keep failures debuggable when objects are malformed.

    Rustclapflate2sha1

Skills

Languages
TypeScript · JavaScript · Rust · Python
Frontend
React · React Router · Vite · Tailwind CSS · TanStack Query
Backend
Node.js · Bun · Express · Hono · Prisma · PostgreSQL · SQLite
Tooling
Git · Docker · Sentry · PostHog · Vercel · GitHub Actions

Education

  1. Newcastle University

    BSc Computer Science

  2. New City College

    A Levels — Mathematics, Further Mathematics, Computer Science

Get in touch

The fastest way to reach me is by email:

You can also find me on LinkedIn and GitHub.

CV preview

Preview of Nick Schreiner's CV. Press Escape to close.

Preview of Nick Schreiner CV