Book a 30-min call

For CTOs and engineering leaders

Modernize a legacy Rails application without a big-bang rewrite.

Fabrica observes your running Rails system, turns its behavior into a reviewed specification, rebuilds selected workflows and proves them side by side before any traffic moves. Other stacks are available on request.

The observation and specification layer

What we observe, and how.

A proposed architecture for discussion. Compatibility and availability of each component are confirmed in a pilot.

Rails instrumentation

Requests, jobs, errors, SQL

Active Support instrumentation hooks, with observations tagged by release version.

Schema and data

Read-only catalog inspection

Keys, types and constraints from the live catalog and migrations, plus approved data-quality profiling.

Reporting and lineage

Reports mapped to outputs

Views, report SQL and ETL jobs mapped to the business outputs they feed, with important totals reconciled.

Usage evidence

Product analytics

PostHog event exports, GA4 via BigQuery or other clickstream sources where they exist.

Context and change

Code, tests and owners

Release and schema history, existing tests and owner review fill the gaps observation cannot.

Coverage review

Confidence, not volume

Critical workflows, business cycles and exceptions checked against a threshold owners and engineers agree.

Routing and rollback

Legacy keeps serving until the evidence says otherwise.

A reverse proxy sits in front of the legacy app and initially routes everything to it. Rebuilt workflows run as a modern twin with isolated data and controlled side effects. When proof passes, gated cohorts shift, and rollback is a routing change.

  • Users and APIs keep hitting the same endpoints
  • The twin is built by agents and reviewed by engineers
  • Cohorts shift in evidence-gated steps
  • Data cutover is planned separately: mappings, backfill and sync, write ownership, reconciliation and rollback

What your engineers review

Everything is checkable.

  • The System Specification and its links to evidence
  • Every pull request, built to written standards and reviewed
  • Proof results: outcome, data, permission and performance differences
  • The data transition plan before any live writes route to the twin

Known limits

What we will tell you up front.

  • Compatibility with your Rails version, gems and hosting is confirmed in a pilot
  • Collection overhead is measured, and collection failures stay off the request path
  • Background jobs, queues and batch reports need their own handling, scoped in the assessment
  • Not every Rails app should be rebuilt. An upgrade may be the better answer

Other stacks

Rails first. Others on request.

We are starting with Ruby on Rails applications because the instrumentation and schema tooling are mature and well documented. Java Spring, .NET Framework, PHP and Django systems can be discussed on request, and the assessment would confirm what observation is possible.

Want your engineers to pressure-test this?

Book a technical call. Bring the system, its constraints and your hardest questions.

Book a technical call