Keep your Rails SaaS reliable as it grows.

Ruby on Rails maintenance and AI integration support from a senior Rails engineer. You work with me directly.

You have customers to look after. I take on the bugs that keep coming back, the overdue updates and the integrations that keep breaking, so they stop eating into your week.

Most people start with a short paid assessment. If there's something worth fixing, I fix it. If you then want someone looking after the app every month, there's a plan for that.

$450
Assessment · one-time
from $1,500
Stabilization sprint
from $650
Monthly care

One engineer, from first look to final fix.

I'm Andy Wang. I've built with Rails since 2008 and worked remotely with US and European teams since 2011. Most of my work today is Rails product engineering, plus AI features, background jobs and third-party integrations.

There's no account manager in the middle. The person who looks into the problem is the one who writes the fix and explains it to you.

More about me  ·  GitHub  ·  Open source

Does any of this sound familiar?

Maintenance keeps getting in the way

Errors that keep coming back, flaky background jobs and overdue upgrades all end up on the founder's desk.

The original developer has left

You need someone who can learn the codebase and make careful changes you can review.

An integration stopped working properly

Payments, webhooks, email or an outside API don't behave the way they used to.

Your AI feature is shaky

A provider changed something, the output is inconsistent, requests time out, or the bill is higher than you expected.

It works best for a Rails app that already has real users or runs part of your business. You might have a small team, or you might be the only one looking after it. If you built your app with AI tools and want something lighter, have a look at VibeCare.

Rails first, AI when you need it.

Rails maintenance

Most of the work
  • Track down bugs and errors that keep coming back.
  • Fix background jobs, webhooks and integrations that fail.
  • Add tests around whatever I change.
  • Handle dependency updates and compatibility problems.
  • Look into slow pages and database queries.
  • Improve deploy checks, error reporting and handover notes.

AI integrations

Optional
  • Look after integrations with model providers and libraries like RubyLLM.
  • Keep up with changes to model APIs, response formats and structured output.
  • Set sensible timeouts and retries, and handle failures properly.
  • Check tool calls for permission problems and duplicate actions.
  • Write small test cases for the AI workflows that matter most.
  • Show where the tokens, time and money are going.

You don't need AI features to use this service. New AI features, a switch to another provider or a bigger redesign get their own quote.

Start with one problem.

Focused Assessment

$450 · one-time

A close look at one problem before you commit to anything bigger.

We pick one app and one main concern: a job that keeps failing, a fragile integration, an upgrade that's stuck, or an AI workflow you don't trust.

What you get

  • What I found, backed by the code, logs or behavior I could check.
  • Which parts are confirmed and which are still open questions.
  • What I'd do next, in order of priority.
  • A proposed fix, or a plan for digging further, with an estimate.

It covers up to four hours of investigation, conversation and write-up. You'll usually have it within five business days of the start date, once I have the access and information I need.

It's a focused look, not a full audit, and four hours won't always be enough to find the root cause. The findings are yours to keep either way, even if you take them to another engineer.

Stabilization Sprint

from $1,500 · fixed price

Fix the agreed problem and leave the app easier to look after.

After the assessment I send a proposal with the scope, how we'll know it's done, the timeline and a fixed price. $1,500 covers a small, well-defined repair. Bigger jobs cost more.

A sprint usually includes

  • The agreed changes, made in your repository.
  • Tests or other checks that show the fix works.
  • A short summary of what changed and how I checked it.
  • Notes on how to release it, and how to roll it back.
  • A handover, plus a list of anything still worth watching.

Typical examples: webhooks being processed twice, a background workflow that keeps failing, or an AI provider changing its response format and breaking a feature.

The assessment is paid for separately, and what it found carries straight into the sprint. You don't pay for the same investigation twice.

Someone who already knows your app.

Monthly care starts once the assessment, and any urgent fixes, are done. Each plan covers one Rails app, including its background workers and integrations, with a fixed number of hours each month.

Essential CareContinuity Care
Per month$650$1,250
Hours5 a month10 a month
Good forA stable app that needs light upkeepAn app with a backlog, or integrations that change often
The hours coverA regular maintenance review, bug fixes, selected updates and AI integration work, in the order we agree
Keeping in touchWritten updates as I go, an optional short call each month, and a monthly note on what I did, the hours used and what's next

Everything comes out of the hours: investigating, coding, testing, technical discussion, calls, write-ups and help with releases, including the monthly review and note. Scheduling and invoicing don't count.

We agree on priorities before I start. If something will take longer than the hours left, I'll explain the options and wait for your OK. Larger upgrades, new features and infrastructure moves get their own proposal.

Extra work is $110/hour, booked when I have time and only with your approval. It doesn't come with reserved hours or emergency response.

What to expect

A reply within one business day

On our agreed working days. A reply means I've looked at it and suggested a next step. It doesn't mean it's already fixed.

Your tools, not mine

I work in your repository, your issue tracker and your deploy process.

Changes you can review

You see the reasoning, the code and how it was checked before anything ships.

Month to month

Plans renew monthly. To cancel, give at least seven days' notice before the next renewal. Unused hours don't roll over, since that time was set aside for you.

This is scheduled support, not an on-call service. There's no 24/7 monitoring, no overnight incident response and no uptime guarantee. I check your error dashboards and alerts while I'm working on your app, but nobody is watching them around the clock.

From first email to first fix.

  1. Email me. Tell me what the app does and what needs attention. A few lines is plenty. If it looks like a fit, we can have a free 20-minute call.
  2. Agree on the assessment. I confirm the access I need, when I can start and what I'll look at.
  3. Decide what's next. Go ahead with a fix, sign up for monthly care, handle it in-house, or stop there.
  4. Ship carefully. We agree who approves, deploys and checks each change in production.

Things people usually ask.

Do you work on older Rails apps?

Yes, after a look. I start by checking the Ruby and Rails versions, the dependencies, the tests and how the app is deployed. Big version upgrades are quoted separately. They won't fit into a small monthly plan.

Can you take over an app built with AI?

Yes, if it's mainly a Rails app and the assessment shows a sensible way forward. I judge code by how it behaves and how easy it is to maintain, whoever or whatever wrote it.

Can I keep making changes myself?

Of course. We'll agree on how changes get made and released. If changes made outside that process cause problems, sorting them out comes out of the monthly hours.

What if something you shipped breaks?

For 14 days after you accept a delivery, I'll fix any bug caused by that work that we can reproduce, at no extra charge. New requests, unrelated bugs, and problems from later changes by other people or third parties are quoted separately.

How do you handle access and AI tools?

We agree on access and data handling before I start, including whether AI tools can see your code or data. I only ask for the access the work needs. Please don't put passwords, production data or API keys in your first email.

When are you available?

I'm in UTC+8 and work mostly asynchronously, with some overlap with US and European hours that we agree up front. Working days, overlap hours, holidays and time off are all in the proposal before you commit. Start dates depend on availability.

How does payment work?

Assessments are paid up front. Fixed-price sprints are usually 50% to book and 50% when the work is delivered for review. Monthly care is paid at the start of each month. Prices are in USD, and taxes and third-party costs are extra where they apply. The proposal confirms the details.

Tell me what's going on with your app.

What does it do, who relies on it, and what's taking up most of your time right now? I'll tell you honestly whether an assessment makes sense.

Helpful to include: the app's URL, its Rails version if you know it, who's on the team, the main problem, your timing and a rough budget. I don't need repository access for the first conversation.