Ottawa, Canada (EST) · 10+ years enterprise

Senior full-stack developer: end-to-end builds, sized to the problem

  • end-to-endI design and build web apps end to end: backend, UI, deploy - one senior developer who owns the result.
  • paymentsStripe and PayPal integrations that survive retries and double clicks.
  • databasesPostgreSQL that answers in half a second instead of eight.
  • processScope and a staged plan in writing before any work starts - and if a simple fix solves it, I say so.

Discuss your projectMessage me on Telegram

Ivan Senishin, full-stack developer
Ivan Senishin

Section 1

Projects

The demo catalog - landing pages, e-commerce, dashboards - comes with screenshots and write-ups, and 12 of the builds are open as live demos you can click through before you order.

Freelance Radar: a Go monitoring and scoring pipeline

Go · PostgreSQL · Telegram Bot API · Claude API · Docker

Not a portfolio piece - the tool I use every working day, built end to end by one person: it polls two marketplaces, scores each job with rules and an LLM, and delivers the good ones to Telegram within 2-3 minutes.

Section 2

What I do

Seven situations clients bring most often. The headlines are their words, not mine. If one sounds like yours, that is my kind of work.

Request index07 entries

Building the whole product means hiring three people or an agency

end-to-end

One senior full-stack developer takes the project end to end instead: data model, backend, UI, integrations, deploy. No handoffs between a PM, a backend dev and a frontend dev - nothing gets lost in between, and there is no agency overhead. Works at any scale, from a single integration to a large complex system, with a staged written plan so you see progress at every stage.

Stripe webhooks fail and customers get charged twice

payments

I make payment flows boring: signature verification, idempotency keys, retries and a queue for everything that did not get through. A double click or a dropped connection never turns into a double charge, and if Stripe or your server is down for an hour, the events are re-delivered and processed when it recovers. No more customers who paid and got nothing - and fewer chargebacks from people who trusted you with their card.

Subscription billing is held together with duct tape

billing

I set up subscription billing on Stripe or PayPal Subscriptions: upgrades, downgrades, prorations, failed-payment retries and cancellations that actually cancel. Billing edge cases stop leaking revenue, and your support inbox stops filling up with "why was I charged" emails.

A report that took one second now takes 8-12

databases

I read the query plan, add composite indexes and remove full scans of large tables. Usually it is a few hours of work with a measurement before and after: eight seconds becomes half a second. Your team stops waiting for the admin panel, and customers stop leaving a slow page.

The previous developer disappeared mid-project

legacy

I take over codebases with no documentation and bring them to a state where the project deploys with one command: tests on the critical paths, migrations, a reproducible environment. You can ship changes again without fearing that one edit takes checkout down.

A third-party API keeps failing and takes orders down with it

integrations

I build integrations that expect failure: retries with backoff, a dead-letter queue for what could not be delivered, and a morning reconciliation report that compares money against orders. When a provider has a bad day, you find out from a report - not from an angry customer a month later.

Not sure what exactly you need built

discovery

That is a normal starting point. We begin with the problem, not the tech: I help you figure out what is actually wrong and what the smallest solution that fixes it looks like. Sometimes that is a full build; often it is not. I will not sell you a complex project where a simple fix solves the problem - and the scoping ends with a written staged plan you keep either way.

Section 3

How I work

Async-first. Everything important - scope, plan, decisions - is written down, so you can re-read it a month later. Calls are optional.

  1. Step 1

    Describe the problem

    Write in plain words: what you have now, what is not working, and what you want to get. No technical language needed - figuring out what you actually need is part of the job, and I will ask the right questions myself. You get a reply the same business day, EST.

  2. Step 2

    Staged written plan

    You receive it in writing: what we are actually solving, the scope, stages with a clear deliverable for each, timeline and price. If a simple fix covers the problem, the plan says so - I do not build complex where simple works. Nothing begins on a verbal agreement.

    1 business day
  3. Step 3

    Fixed price or milestones

    Pick what fits: a fixed price for the whole project, or milestone payments where you pay for each stage after you have seen and accepted its result - your risk is capped at one stage, never the whole budget. Hourly works too for open-ended work. Rates are in CAD or USD, fixed in writing before the work starts.

  4. Step 4

    Work with interim demos

    Timeline comes from the plan in step 2. I show results as stages are finished, not at the end: feedback lands while the code is still warm, and there are no surprises at delivery.

  5. Step 5

    Handover

    Code, access, and written instructions for running and updating the project. It stays yours and does not depend on me; questions after delivery still get answered.

Section 4

About

I am Ivan Senishin, a senior full-stack developer based in Ottawa, Canada (EST). For over ten years I built enterprise systems - the backbone of that experience is backend engineering: fintech, government systems, high-load services. Now I take business projects directly and end to end: web apps, payment integrations, subscription billing, PostgreSQL performance, projects left without a developer. If a project is not a fit, I say so upfront.

Section 5

Discuss your project

Describe the problem in a few sentences - you will get a reply the same business day, EST, and a staged written plan before any work starts.

Discuss your project

Fixed price or hourly, agreed in writing.

Telegram @IvSenEmail ivan.senishin@gmail.com