Alin Nitu | Workbench
{{ initials }} {{ ownerName }}
CV ↓
The Workbench
A journal of building & breaking software
Vol. 09
9+ years in quality engineering
Based in
BUCHAREST, ROMANIA
Status
Open to new roles
h1 · Instrument Sans 600 + Instrument Serif italic clamp(44px → 120px) · tracking −0.04em

I know how software breaks. I engineer ways to prevent it. Build it. Break it. Make it better. Engineering reliability. Building possibility.

Quality Engineer/Product Builder/AI Explorer

Nine years in test automation and framework design across aviation, enterprise and fintech. Lately I also build my own products with AI-assisted tools, and put them in front of real users.

Live component · positioning as a test report
Run · identity.spec
✓
test_engineer
9+ yrs · Python, TypeScript, Playwright, Pytest
PASSED
✓
test_builder
2 independent products, live & in beta
PASSED
{{ pulse }}
test_explorer
AI-assisted development, coding agents
RUNNING
2 passed, 1 running. This one isn't meant to finish.
§ 01

Selected work

PROFESSIONAL. Client work under NDA. Shown as abstract, public-safe diagrams. No screenshots, no proprietary detail.
INDEPENDENT. Products I conceived and built myself. Public, and open to try.
Every case has an Inspect switch. Use it for the engineering notes.
01 — Indra Avitech · Aviation Confidential

A test framework for flight-information exchange, built from zero.

On EUROCONTROL's iNM and FF-ICE projects, I designed the test strategy and built the automation framework for an FF-ICE aviation integration system from scratch: behaviour-driven scenarios in Python, driving message flows over AMQP, verifying state in PostgreSQL, across multiple deployment configurations in CI.

Role
Senior Test Automation Engineer
Stack
Python · BDD · AMQP · PostgreSQL · CI
Scope
Strategy, architecture, implementation
Fig. 01 — Test harness, message flowPublic-safe abstraction
CI PIPELINE
DEPLOY CONFIGABC 4
Scenarios
Gherkin · BDD
1
Step library
Python
publish →
Message broker
AMQP
2
Assertions
consume · compare
← consume
System under test
FF-ICE integration
State checks
SQL
query →
PostgreSQL
persisted state
3
Inspector · engineering notes
1Strategy and framework designed from scratch. Nothing inherited, every convention chosen.
2Tests operate at message level: publish to and consume from AMQP, as the real integrations do.
3Outcomes verified against persisted state in PostgreSQL, beneath the messaging layer.
4One suite, multiple deployment configurations, run in CI.
Feature: Flight plan submission
  Scenario: Filed plan is acknowledged
    Given a valid flight plan is published to the broker
    When the system processes the message
    Then an acknowledgement is returned
     And the plan state is persisted
— ILLUSTRATIVE, NOT PRODUCTION CODE
Fig. 02 — One suite, every environmentAbstract representation
LAYER / ENV ENV·1 ENV·2 ENV·3 ENV·n E2E workflows1 GraphQL API2 Pipeline gates3 AI-assisted4 authoring & triage
Playwright · TypeScript API layer CI/CD
Inspector · engineering notes
1Complex administrative and governance workflows automated end to end in Playwright and TypeScript.
2GraphQL API tests run beneath the UI, so failures point at the right layer.
3Multi-environment architecture: the same suite targets each environment, integrated into CI/CD.
4AI-assisted testing workflows introduced alongside conventional automation.
02 — PwC · Enterprise platform Confidential

Quality engineering for an enterprise content-governance platform.

A large administration and governance platform with long, stateful user workflows. My work spans TypeScript and Playwright automation, GraphQL API testing, a multi-environment automation architecture, CI/CD integration, and AI-assisted testing workflows.

const res = await api.query(GET_POLICY, { id });
expect(res.errors).toBeUndefined();
await page.goto(env.url('/policies'));
— ILLUSTRATIVE, NOT CLIENT CODE
Role
Senior QA Engineer
Stack
TypeScript · Playwright · GraphQL · CI/CD
03 — Independent product · Solo Live · early, small group of trial users

Maponim

Turns a local business's Google reviews into a one-page website its customers will recognise.

maponim.com
Real product screenshot only. No mockups.
  1. 01
    Paste a Google Maps link
    Public business info is pulled in: name, hours, phone.
  2. 02
    AI reads the reviews
    Extracts strengths, standout offerings, and what customers come back for.
  3. 03
    Publish a one-pager
    Mobile-first, editable line by line, shareable in one click.

“We don't invent claims.” The product's core constraint: every line on a site traces back to a real review, the business profile, or the owner.

Inspector · product notes
Problem spotted, product conceived, designed and built solo with AI-assisted development tools.
Grounding is a product rule, not a prompt: generated copy must be backed by source data.
English and Spanish today. Free, Pro and Agency plans; custom domains on paid tiers.
Stack: Next.js 15 (App Router) in TypeScript, React 19, Tailwind CSS 4. Supabase for database and auth; Upstash Redis for rate limiting.
AI and data: Anthropic SDK behind an LLM provider abstraction, plus a Google Places API abstraction for business lookup.
Payments and hosting: Stripe for billing; Vercel with Analytics and Speed Insights.
Tooling: Zod for validation, Vitest for tests, ESLint, lucide-react for icons.
Visit maponim.com ↗
04 — Independent product · Solo Beta · free during beta
Next Job Radar

Fewer job listings. Only the ones you can actually take.

It started with my own search for software engineering roles in Europe. Most listings failed on something basic: country of work, remote scope, language, contract. Next Job Radar checks each opening against a candidate's real constraints first, then explains the fit with evidence from the posting.

01
Eligibility
Can you take it?
02
Fit
Explanations, not scores.
03
Honesty
Unknown stays unknown.
Try the beta ↗
Fig. 04 — Eligibility checkExample only, not a real listing
Example Labs
Senior QA Automation Engineer
Country"Remote from RO, PL, PT"PASS
Salary basis"EUR 75–95k gross / year"PASS
Contractnot stated in postingUNKNOWN
Language"Fluent German required"FAIL
Silence never becomes a yes. Each verdict quotes the posting text it came from.
Inspector · product notes
Hard rules first, ranking second: eligibility checks return pass, fail or unknown before any fit is assessed.
Feedback improves ranking without rewriting a candidate's hard rules.
Delivered as a daily email digest and a small dashboard. Users apply on the employer's original listing.
Stack: TypeScript end to end on Node 22, in an npm workspaces monorepo. Next.js 16 (App Router), React 19, Tailwind CSS 4, shadcn/ui on Radix. PostgreSQL 18 with Drizzle ORM and SQL migrations; magic-link auth via better-auth.
Background work: a Node worker on pg-boss, a Postgres-backed job queue, polls sources, runs matching and sends digests and alerts on a schedule.
AI: Anthropic SDK with structured outputs and Zod schemas. Haiku 5.5 for job extraction and fit evaluation, Opus 5.5 for onboarding drafts. Prompt caching on the system prompt and candidate block, a per-call cost ledger and a daily budget cap.
Sources: public feeds from Greenhouse, Lever, Ashby, SmartRecruiters, Recruitee, Workable and Personio, careers pages with JobPosting markup, and four aggregator feeds. No LinkedIn or Indeed.
Ops: Railway hosting with two Docker images (web, worker) and managed Postgres. Resend for email with delivery webhooks. CI with Vitest, Playwright and npm audit; Dependabot; nightly backups. pino logs and operator pages for sources, costs, duplicates and traces.
§ 02

On the bench

Products, prototypes and experiments. Each one is tagged with its real status, and the tags change as things ship or get shelved.

EXPLORING NOW → Coding agents Agent-based workflows AI-assisted testing
Specimen tags · ±1.2° rotation, straightens on hover
SPECIMEN 001
LIVE
Maponim
AI-generated websites for local businesses, grounded in their Google reviews.
PRODUCT · SOLOmaponim.com ↗
SPECIMEN 002
BETA
Next Job Radar
Eligibility-first job discovery for tech professionals in Europe.
PRODUCT · SOLObeta ↗
SPECIMEN 003
{{ pulseSteel }}EXPLORING
Agents in the loop
Working coding agents into my daily engineering workflow, and noting where they help and where they need supervision.
EXPERIMENT · ONGOINGnotes soon
SPECIMEN 004
EMPTY SLOT
Next thing
Reserved for whatever gets built next.
[PLACEHOLDER]
§ 03

Field Notes

Articles on quality, automation
& building things
Issue 01 · October 2026First article published. Two more in draft.
Lead story + index · serif titles, mono metadata
N° 01Quality engineering· Published 17 Oct 2026· 10 min

Testing a system that will not tell you which output belongs to your input.

The response has no correlation ID. A field note on a Python test framework for an AMQP service, and the broker investigation that explained why tests passed alone but failed together.

N° 02
AI & agents · Draft
How AI coding agents are changing my engineering workflow
N° 03
Building alone · Draft
I was tired of searching for jobs, so I built my own tool
Sections
Quality engineering/Playwright, Python, TypeScript/AI & agents/Architecture/Building alone/Learning out loud
§ 04 — ABOUT
FIG. 05 — {{ ownerName }}

I've always been more interested in why things break than simply knowing that they do.

That's what drew me deeper into software engineering. From manual testing to automation architecture and designing frameworks, I've spent over nine years learning how complex systems behave, and how to make them more reliable.

I like solving problems and understanding how systems actually work. Lately that curiosity goes into building my own products, using AI-assisted tools to get from an idea to something people can use.

RouteNot to scale
Curiosity for softwareOrigin
Manual testingWay in
Coding and automationLearned on the job
ArchitectureFrameworks
Building productsYou are here
Nine years, drawn as a route
2026 — PresentPwCSenior QA Engineer / AI Agentic QA EngineerEnterprise · Content governance
2023 — 2026Indra AvitechSenior Test Automation EngineerAviation · EUROCONTROL iNM, FF-ICE
2021 — 2023MoonfareSDET / Full-stack Software DeveloperFintech
2018 — 2021BillieQA Engineer / Test AutomationFintech
2017 — 2018UbisoftQA EngineerGaming
2014 — 2017Teamnet / Nutre Group / CenterPoint EnergyGIS SpecialistGeospatial · Where it started
Languages & tools
Python
TypeScript
Playwright
Pytest
Practice
Framework architecture
Test strategy
Page Object Model
BDD
Testing scope
API & integration
End-to-end
Distributed systems
Messaging (AMQP)
Delivery & AI
GitHub Actions · Azure DevOps · Jenkins
AI-assisted engineering
Coding agents
§ 05 — CONTACT

Got something worth building? Open an issue.

Recruiters, engineering leads, founders and fellow engineers are all welcome. I read every message myself.

Form · posts to Web3Forms
New issue · #001Status: Open
Reporter
Priority
{{ error }}
✓ ISSUE #001 OPENED · {{ reporter }} · {{ priority }}
Received. I'll take it from here.
Expect a reply at the address you left.