Iurii RoguliaIurii Rogulia
AboutServicesPricingProjectsStackReviewsPhrasesBlog
Contact
Iurii ships.

Iurii Rogulia, IT partner for business & fractional CTO. Professionally building software since 2001.

Think of a number
PricingQuality checklistPrivacy PolicyCookie Policy

Business

TMI Iurii Rogulia
VAT ID: FI29845875
DUNS: 368664211
Lappeenranta, Finland 🇫🇮

[email protected]
All tags

Iurii Uses: #Architecture

5 projects · 30 articles · 16 reviews

Architecture posts and projects focus on system design decisions — service boundaries, data flow, scalability trade-offs, and how to structure large applications for long-term maintainability.

Projects

Pikkuna — AI-Powered Localization Pipeline
Pikkuna — AI-Powered Localization Pipeline
July 30, 2026
Pikkuna — AI-Powered Localization Pipeline

A production localization pipeline built entirely on the OpenAI API: one English source of truth, SEO-aware translation prompts, cross-model verification with

Stack

Python

Libraries

pytestOpenAI SDKpython-dotenvpycountry

Services

OpenAIAnthropic

Topics

AILLMPrompt Engineeringi18nLocalizationSEOAutomationTestingArchitectureCTO
pi-pi.ee — B2B Deal & Document Portal
pi-pi.ee — B2B Deal & Document Portal
July 1, 2026
pi-pi.ee — B2B Deal & Document Portal

Internal sales portal that turns a wholesale deal into a full set of trade paperwork — pro forma, contract, commercial invoice, packing list, CMR and more —

Stack

Next.jsReactTypeScript

Services

Notion

Topics

B2BCRMSales AutomationPDFSSRArchitectureInternational TradeInternal Tools
HTPBE? — Internal Admin Dashboard
HTPBE? — Internal Admin Dashboard
March 15, 2026
HTPBE? — Internal Admin Dashboard

Role-gated admin dashboard for the HTPBE? SaaS platform — real-time KPIs, per-user quota tracking, and a zero-dependency bar chart, all server-rendered via

Stack

Next.jsReactTypeScript

Libraries

Drizzle ORMNextAuth.js

Databases

Turso

Services

Stripe

Topics

Admin DashboardSaaSAuthArchitecture
pi-pi.ee — B2B E-commerce for Waterless Urinal Systems
pi-pi.ee — B2B E-commerce for Waterless Urinal Systems
January 17, 2026
pi-pi.ee — B2B E-commerce for Waterless Urinal Systems

i18n B2B e-commerce platform for waterless urinal products across 32 European countries with automated VAT handling, PDF invoicing, and CRM integration.

Stack

Next.jsReactTypeScriptTailwind CSS

Libraries

next-intlDaisyUIStripe SDKreact-pdf

Services

StripeVercelResendNotionGoogle Analytics

Topics

E-commerceB2Bi18nPDFSSRArchitectureSEOSchema.org
Pikkuna — E-commerce for Vinyl Curtains & PVC Products
Pikkuna — E-commerce for Vinyl Curtains & PVC Products
October 12, 2024
Pikkuna — E-commerce for Vinyl Curtains & PVC Products

International e-commerce platform with 30 locales, product configurators, AI chatbot, and fully automated order flow: Stripe → Zoho CRM → Airtable → Mailgun →

Stack

Next.jsReactTypeScript

Libraries

next-intlZodpdf-libPuppeteerStripe.js

Databases

Redis

Services

StripeZohoMailgunPostNordNetvisorVercelVercel BlobGoogle AnalyticsMeta CAPIAirtableUpstash

Topics

E-commercePaymentsShippingPDFPWACTOArchitectureSEOSchema.orgi18nPerformance

Articles

Preventing Overselling: Inventory Locks Under Concurrent Checkouts
July 31, 2026· 13 min
Preventing Overselling: Inventory Locks Under Concurrent Checkouts

Prevent overselling under concurrent checkouts: reservations vs hard decrements, SELECT FOR UPDATE, deadlock-safe multi-line carts, and the payment window.

Stack

Next.jsTypeScriptNode.js

Databases

PostgreSQLRedis

Topics

E-commercePaymentsArchitectureSaaS
Gated B2B Pricing in Next.js: Hiding Prices Behind Per-Customer Access
July 24, 2026· 9 min
Gated B2B Pricing in Next.js: Hiding Prices Behind Per-Customer Access

Gated B2B pricing in Next.js: per-account price lists, server-side access control so prices never leak to crawlers, and a deal-record data model where every

Stack

Next.jsReactTypeScript

Databases

PostgreSQL

Topics

B2BE-commerceAuthSSRArchitectureSecurity
Build an Internal CRM on Supabase: A Weekend-Scale Guide
June 24, 2026· 21 min
Build an Internal CRM on Supabase: A Weekend-Scale Guide

Build an internal CRM on Supabase: schema design, RLS policies, Next.js App Router frontend, realtime subscriptions, and an honest look at where the weekend

Stack

Next.jsTypeScript

Libraries

Drizzle ORM

Databases

PostgreSQL

Services

Supabase

Topics

CRMArchitectureSaaSInternal Tools
Rewrite or Stabilise: The Decision Framework I Use
June 22, 2026· 12 min
Rewrite or Stabilise: The Decision Framework I Use

Rewrite or stabilise a legacy codebase? A practical decision framework: when stabilisation wins, when rewrite is justified, and the Strangler Fig middle path.

Topics

Rescue ProjectsTechnical StrategyLegacy CodeArchitectureEngineering Practice
Multi-Tenant SaaS Database Design: Shared Schema vs Schema-per-Tenant
June 19, 2026· 18 min
Multi-Tenant SaaS Database Design: Shared Schema vs Schema-per-Tenant

Multi-tenant SaaS database design: shared schema with RLS, schema-per-tenant, and database-per-tenant — trade-offs, real pitfalls, and when to use each.

Stack

TypeScriptNode.js

Libraries

Drizzle ORM

Databases

PostgreSQL

Topics

SaaSArchitectureSecurity
HubSpot to Custom CRM Migration: When It's Worth It
June 17, 2026· 23 min
HubSpot to Custom CRM Migration: When It's Worth It

Migrating from HubSpot to a custom CRM: pre-migration sampling, data export gaps, integration cutover, and what breaks in week two. Practical guide.

Topics

CRMMigrationHubSpotOperationsArchitecturePractical
How to Reduce OpenAI API Costs in Production (2026 Guide)
June 15, 2026· 24 min
How to Reduce OpenAI API Costs in Production (2026 Guide)

OpenAI API cost optimization: where the money actually goes in production, prompt caching, model routing, budget controls, and observability that surfaces

Topics

AIOpenAICost OptimizationProductionObservabilityArchitecture
Best Headless CRM in 2026: Twenty vs EspoCRM vs Custom Build
June 12, 2026· 21 min
Best Headless CRM in 2026: Twenty vs EspoCRM vs Custom Build

Headless CRM comparison 2026: Twenty vs EspoCRM vs DIY on Postgres. Real trade-offs on schema flexibility, integration, cost, and ecosystem risk.

Topics

CRMOpen SourceArchitectureBuild vs BuySaaS
Why AI Coding Widens the Senior–Junior Developer Gap
June 1, 2026· 16 min
Why AI Coding Widens the Senior–Junior Developer Gap

AI coding widens the gap between senior and junior developers — it amplifies existing skill.

Topics

AIEngineering PracticeBest PracticesArchitectureOpinion
Vibe Coding Problems: What AI-Generated Code Gets Wrong
May 28, 2026· 14 min
Vibe Coding Problems: What AI-Generated Code Gets Wrong

Vibe-coded codebase problems: duplicate auth flows, tests that assert nothing, unused dependencies, security shortcuts, schema drift — why they happen and how

Topics

AITechnical DebtArchitectureBest PracticesSecurity
Health Check Endpoint in Node.js: Liveness vs Readiness
May 25, 2026· 18 min
Health Check Endpoint in Node.js: Liveness vs Readiness

Production healthcheck endpoints: liveness vs readiness probes, dependency checks with timeouts, 200 vs 503 logic, Docker and Kubernetes config, and security.

Stack

Node.jsTypeScript

Libraries

HonoBullMQ

Databases

PostgreSQLRedis

Topics

ArchitectureDevOpsInfrastructure
PostgreSQL Production Checklist: UUIDs, RLS, Indexes, Pooling
May 21, 2026· 15 min
PostgreSQL Production Checklist: UUIDs, RLS, Indexes, Pooling

PostgreSQL production patterns: UUID v7, soft deletes, RLS for multi-tenant SaaS, partial and covering indexes, PgBouncer connection pooling, and migration

Stack

TypeScriptNode.js

Libraries

Drizzle ORM

Databases

PostgreSQLRedis

Topics

SaaSArchitecture
BullMQ vs pg-boss vs Cron: Node.js Background Jobs Compared
May 18, 2026· 15 min
BullMQ vs pg-boss vs Cron: Node.js Background Jobs Compared

BullMQ vs pg-boss vs node-cron for Node.js background jobs. Trade-offs between Redis and Postgres queues, retries, deduplication, and production monitoring.

Stack

Node.jsTypeScript

Libraries

BullMQpg-boss

Databases

PostgreSQLRedis

Topics

ArchitectureSaaSAutomation
JWT vs Sessions vs OAuth: Which to Use for SaaS Auth
May 14, 2026· 15 min
JWT vs Sessions vs OAuth: Which to Use for SaaS Auth

JWT vs sessions vs OAuth for SaaS: token invalidation, mobile clients, refresh token rotation, and a decision matrix to pick the right auth pattern.

Stack

Next.jsTypeScriptNode.js

Libraries

Better Auth

Databases

PostgreSQLRedis

Topics

SaaSAuthArchitectureSecurity
5 Features That Kill MVPs Before They Launch
May 11, 2026· 12 min
5 Features That Kill MVPs Before They Launch

MVP features that kill products before launch: roles, notifications, dashboards, multi-tenancy, onboarding. What to cut and what matters at launch.

Topics

MVPProductSaaSArchitecture
AI Document Processing in Production: Full Pipeline Guide
May 7, 2026· 14 min
AI Document Processing in Production: Full Pipeline Guide

AI document processing in production: full PDF pipeline — OCR fallbacks, structured output, validation, cost at scale. Beyond naive GPT calls.

Stack

TypeScriptPython

Services

OpenAIAWS TextractGoogle Document AI

Topics

PDFDocument ProcessingArchitectureSaaS
How to Add AI to an Existing Product Without Rewriting It
May 4, 2026· 11 min
How to Add AI to an Existing Product Without Rewriting It

Add AI to an existing product without a rebuild. Three integration patterns, how to pick the right one, and what production-ready AI actually demands.

Stack

Next.jsTypeScript

Libraries

Vercel AI SDK

Databases

PostgreSQLRedisUpstash Vector

Services

OpenAI

Topics

RAGArchitectureSaaSE-commerce
How to Take Over a Codebase from a Web Agency (5-Day Process)
April 27, 2026· 12 min
How to Take Over a Codebase from a Web Agency (5-Day Process)

Agency codebase handover checklist: first 48 hours, security triage, architecture mapping, and how to write a takeover assessment. Practical guide.

Stack

TypeScriptNode.js

Topics

ArchitectureTechnical DebtSecurityProcess
llms.txt for AI Discoverability: Should You Add It?
April 25, 2026· 9 min
llms.txt for AI Discoverability: Should You Add It?

llms.txt: what it is, how AI systems actually read your site (training crawls vs. runtime vs. agents), and why adding it now costs almost nothing.

Topics

SEOArchitecture
Real-Time Dashboard in Next.js with TanStack Query + Zustand
April 16, 2026· 12 min
Real-Time Dashboard in Next.js with TanStack Query + Zustand

Real-time Next.js admin dashboard: TanStack Query polling, Zustand for filter state, Sentry error boundaries per panel, and a zero-dependency bar chart.

Stack

Next.jsReactTypeScript

Libraries

TanStack QueryZustandDrizzle ORM

Services

SentryStripe

Topics

Admin DashboardSaaSData VisualizationArchitecture
IndexNow in Next.js: Instant Indexing After Every Deploy
April 14, 2026· 18 min
IndexNow in Next.js: Instant Indexing After Every Deploy

IndexNow implementation guide for Next.js: key generation, TypeScript client with retry logic, GitHub Actions workflow, and pitfalls that break submissions

Stack

TypeScriptNode.js

Services

GitHub Actions

Topics

SEOAutomationPerformanceArchitecture
Next.js 16 proxy.ts Migration: From middleware.ts
April 10, 2026· 10 min
Next.js 16 proxy.ts Migration: From middleware.ts

Migrate middleware.ts to proxy.ts in Next.js 16 without breaking auth.

Stack

Next.jsTypeScript

Topics

SecurityMigrationArchitecture
React Masonry Layout: Fix Column Order (without a Library)
March 11, 2026· 9 min
React Masonry Layout: Fix Column Order (without a Library)

React masonry layout that keeps left-to-right card order with variable heights — where the popular CSS column-count trick silently breaks.

Stack

ReactTypeScript

Topics

ArchitectureUI/UXPerformance
UUID v7 vs v4: PostgreSQL Performance Benchmark
March 11, 2026· 16 min
UUID v7 vs v4: PostgreSQL Performance Benchmark

UUID v7 vs v4 in PostgreSQL: why random UUIDs fragment B-tree indexes, how UUID v7 fixes it, benchmarks at 5M rows, and Drizzle ORM migration steps.

Stack

TypeScriptNode.js

Libraries

uuidulidnanoidDrizzle ORM

Databases

PostgreSQL

Topics

ArchitectureSaaSPerformance
Next.js SaaS Checklist: Launch Production-Ready in 8 Weeks
January 19, 2026· 17 min
Next.js SaaS Checklist: Launch Production-Ready in 8 Weeks

40+ point production SaaS checklist: auth, Stripe billing, PostgreSQL, rate limiting, email, monitoring, and security — with honest 8-week build estimates.

Stack

Next.jsTypeScript

Libraries

Drizzle ORMBetter AuthBullMQZodReact Email

Databases

PostgreSQLRedis

Services

StripeVercelResendSentry

Topics

SaaSArchitectureAuth
Stripe Webhooks: Idempotency, Retries, and Queue Setup
January 2, 2026· 11 min
Stripe Webhooks: Idempotency, Retries, and Queue Setup

Stripe webhook production architecture: idempotency keys in PostgreSQL and Redis, BullMQ queue, signature verification in Next.js App Router — with full

Stack

Next.jsTypeScriptNode.js

Libraries

BullMQDrizzle ORMioredis

Databases

PostgreSQLRedis

Services

Stripe

Topics

SaaSWebhooksArchitecturePayments
Technical SEO for Next.js: SSR, JSON-LD, and Sitemaps
December 15, 2025· 3 min
Technical SEO for Next.js: SSR, JSON-LD, and Sitemaps

Technical SEO built into Next.js: server-side rendering, dynamic meta tags, JSON-LD structured data, and automatic sitemap generation — no plugins, just code.

Stack

Next.jsReactTypeScript

Topics

SEOArchitecturePerformance
Next.js i18n with 30 Languages: Production Setup Guide
November 12, 2025· 11 min
Next.js i18n with 30 Languages: Production Setup Guide

Next.js i18n for 30 languages in production, not a 2-locale demo: next-intl routing, type-safe translations, hreflang at scale, and the formatting traps the

Stack

Next.jsTypeScript

Libraries

next-intl

Topics

i18nE-commerceArchitecture
Redis Rate Limiting in Node.js: Sliding Window Algorithm
October 10, 2025· 15 min
Redis Rate Limiting in Node.js: Sliding Window Algorithm

Redis rate limiting for APIs: sliding window ZADD with Lua atomicity, in-memory fallback, multi-tier limits by IP and API key, and developer-friendly response

Stack

TypeScriptNode.jsHono

Libraries

ioredis

Databases

Redis

Topics

SaaSAPIPerformanceArchitecture
Turborepo Monorepo: Next.js and Hono in One Repo With Shared Types
August 4, 2025· 13 min
Turborepo Monorepo: Next.js and Hono in One Repo With Shared Types

Turborepo monorepo with Next.js and Hono, sharing one set of TypeScript types across frontend and backend.

Stack

Next.jsTypeScriptHonoTurborepoNode.jsDocker

Libraries

Drizzle ORMZod

Databases

PostgreSQLRedis

Services

Vercel

Topics

ArchitectureMonorepoSaaS

Reviews

“

We publish 20-30 news articles per day and indexing latency was killing us — by the time Google crawled a story, the news cycle had moved on. Iurii's audit covered IndexNow setup, a sitemap that was hitting size limits and dropping URLs silently, and canonical tags that were inconsistent between AMP and non-AMP versions. The IndexNow integration alone moved median time-to-index for Bing from days to under an hour. Report was direct, no fluff, exactly what we needed.

Andrei Popescu 🇷🇴

Engineering Manager

Topics

SEOIndexNowArchitecturePerformance

Service: seo audit

“

As COO, I worked closely with Iurii, who led our IT department with rare clarity and ownership. He consistently turned business needs into reliable technical solutions, improved our infrastructure, and kept delivery predictable even under pressure. Communication was straightforward, priorities were transparent, and results were measurable. I'd gladly work with him again and strongly recommend him.

Andrii 🇫🇮

COO, Suomen Pehmeä Ikkuna Oy (Pikkuna)

Topics

E-commerceArchitectureLeadershipCTO

Service: e commerce

“

As Head of Production I had the opportunity to work closely with Iurii during his time with our company. Although I do not have a technical background, it was clear to me that he is a highly competent and professional IT specialist. He approaches his work in a structured and well-documented manner, ensuring long-term stability rather than quick fixes. I particularly value his ability to fully understand business needs before implementing solutions, as well as his responsiveness in urgent situations. His contribution extended beyond his formal responsibilities, often bringing valuable insights to the team. I confidently recommend Iurii for any technical role.

David Nemchin 🇫🇮

Head of Production, Suomen Pehmeä Ikkuna Oy (Pikkuna)

Topics

E-commerceArchitectureCTO

Service: e commerce

“

I'd read about llms.txt and AI discoverability but had no idea whether any of it actually mattered for our SaaS docs site. Iurii's audit gave me the honest answer: most of it is speculative right now, but a few things genuinely move the needle today — clean semantic HTML, robots.txt directives for AI crawlers, and structured data that retrieval systems can use. He also flagged that we were blocking GPTBot by accident in a leftover robots rule from 2023. The report saved me from chasing trendy fixes and pointed at the boring ones that actually work.

Dimitris Papadakis 🇬🇷

Founder

Topics

SEOllms.txtAIArchitecture

Service: seo audit

“

Before we closed on a seed-stage SaaS we asked Iurii to look under the hood. He gave us a written report in five days: what was solid, what was held together with tape, and roughly what it would cost to fix the worst of it. He flagged a scaling bottleneck in their database layer that the founders hadn't mentioned, and rated the rest realistically instead of either rubber-stamping it or scaring us off. That report changed how we structured the deal.

Florian Berg 🇨🇭

Investment Principal

Databases

PostgreSQL

Topics

Due DiligenceArchitectureScalabilityCode Review

Service: technical due diligence

“

We had three CRM options on the table and kept going in circles for weeks. Sent Iurii our list of needs, he came back the next day with a clear pick and a short explanation why the other two wouldn't work for us. Done.

Giorgi Beridze 🇬🇪

Topics

E-commerceArchitectureCRM

Service: technical consultation

“

We had a small in-house dev team and no one senior enough to make the hard architectural calls. Hiring a full-time CTO didn't make sense at our stage, so we brought Iurii in two days a week. Within a month he'd untangled the deployment process, sat in on hiring interviews, and helped the team push back on a feature request from sales that would have cost us six weeks. He treats the role like a partner, not a consultant billing hours.

Joachim Weber 🇩🇪

CEO

Topics

LeadershipArchitectureCTO

Service: fractional cto

“

We'd just raised and needed to double the engineering team fast, but nobody internally had hired at that scale or owned the architecture decisions that came with it. A full-time CTO was a six-month search we didn't have time for. Iurii held the role two days a week in the meantime — he set up the interview loop, sat in on the senior candidates, killed a rewrite the team was quietly drifting toward, and made the infrastructure call before it turned into a fire. When we finally hired someone permanent the handover took a week because everything was already documented. He ran it like an owner, not a consultant billing hours.

Kasper Holm 🇩🇰

CEO

Topics

LeadershipCTOHiringArchitectureStrategy

Service: fractional cto

“

I was starting a new project and spent two weeks reading comparisons online and getting nowhere. One hour with Iurii and I had a clear answer. He asked the right questions, cut through the noise, and gave me a real recommendation — not 'it depends'.

Marcus Chen 🇺🇸

Stack

TypeScript

Topics

Architecture

Service: technical consultation

“

We migrated our content platform last autumn and assumed everything was fine because the tests passed. Iurii's audit found 140+ broken internal links — old slugs that survived the migration, redirects that pointed to redirects, and a few documentation pages quietly returning 410. Linkinator in CI now catches them before they ship. What surprised me most was the report explained why each broken link mattered for crawl budget, not just that it existed. That made the case for fixing them easy to sell internally.

Mathias Sørensen 🇩🇰

CTO

Topics

SEOCI/CDDeveloper ToolsArchitecture

Service: seo audit

“

We took over a Next.js project from another agency and inherited a mess — failing builds, no tests, deployments that worked locally and broke in production. Iurii spent two weeks getting it stable before touching any new features. He documented what was broken, fixed the critical issues, and left us a short list of the smaller things we could handle ourselves. By the end the project was actually maintainable, which had felt impossible at the start.

Niamh O'Sullivan 🇮🇪

Agency Owner

Topics

Technical DebtArchitectureProcess

Service: rescue projects

“

Had a client project coming up and wasn't sure which CMS to go with. Iurii asked a few questions about what the client actually needed, then gave me one answer — not a list of options. That's what I wanted. Went with it, no regrets.

Pekka Mäkinen 🇫🇮

Stack

Next.js

Topics

ArchitectureCMS

Service: technical consultation

“

We were about to hand a project off to a new development team and I wanted someone to look at the code first. Iurii reviewed it and found a few things that would have caused real problems down the line. The new team thanked us for the cleanup.

Pierre Moreau 🇫🇷

Topics

ArchitectureCode ReviewE-commerce

Service: technical consultation

“

I'd built most of our MVP with Cursor and it looked finished — it compiled, the tests were green, the demo worked. It just wouldn't survive real users. Iurii took it over and found what I couldn't see: authentication handled four different ways, tests that only asserted what the code already did, and a dependency list half of which was unused. He didn't rewrite it from scratch — he told me honestly what was salvageable, ripped out the dead code, and got it to something a real team could build on. Two weeks and it went from 'looks done' to actually shippable.

Sebastian Falk 🇸🇪

Founder

Stack

Next.jsTypeScript

Topics

Technical DebtAICode ReviewArchitecture

Service: rescue projects

“

We were about to pay for a hosting plan that was way more than we needed. Iurii looked at what we actually have — traffic, data, usage patterns — and suggested something much simpler. We switched, saved money, and nothing broke.

Valentina Russo 🇮🇹

Topics

ArchitectureSaaSInfrastructure

Service: technical consultation

“

We had an acquisition offer on the table and I needed to know whether our own codebase would survive the buyer's technical review before I walked into that room. Iurii did a five-day independent audit and gave me a written report I could actually act on — what was solid, the two things that would raise flags in a data room, and what it would take to fix them first. He caught an undocumented dependency on one ex-contractor's private package that would have been a red flag the moment their team looked. We cleaned it up before diligence started, and the deal closed without a single technical concession. Best money I spent on the whole process.

Wouter Claes 🇧🇪

Founder & CEO

Topics

Due DiligenceArchitectureCode ReviewTechnical Debt

Service: technical due diligence

Iurii RoguliaAvailable

Got a project in mind?

Whether it's a new product, an integration, or scaling an existing system — let's talk about how I can help.

View my projects