Case study

SurveyFace to Thisys

A survey platform that took about 14,000 person-days to build across three versions, rebuilt in six weeks by its founder working with AI and moved onto a modern, tested stack. The client was us: it is our own product. That is why we can publish the numbers.

25 daysfirst commit to running in production
0 to ~24,700automated tests, before and after
9.24 / 10independent validation score for the core product at release
14,000 → under 40person-days to build, before and after

The starting point

SurveyFace was an online survey service that ran commercially for well over a decade, until new sign-ups closed in 2023. Building it took about 14,000 person-days of development effort between 2009 and 2014.

YearVersion
2009Concept and planning begin in Australia
2010Version 1 goes live as OnlineSurveyExport.com (OSE)
2011Version 2, still on OSE
2012Version 3 launches as SurveyFace.com
2014Main development ends; the product moves to maintenance
2023New sign-ups close

By 2026 it could not be patched any further. We measured the code before we touched it:

What we foundWhy it mattered
93,663 lines of PHP across 1,063 files, no frameworkBehaviour was spread across page scripts. One class driving the respondent experience was 4,875 lines long.
The old mysql_* database functions in 116 filesRemoved in PHP 7.0, so the system was tied to PHP 5, which stopped getting security updates at the end of 2018.
Passwords hashed with MD5; no prepared statements anywhereWeak credential storage and a standing SQL-injection risk.
No automated tests, no schema migrations, no dependency managerEvery change was a manual risk, and nobody could prove the system still worked afterwards.
Answers stored as newline-separated text by positionCheap to save, expensive to analyse; reordering a question could change what old data meant.

Source: our measurement of the SurveyFace source tree, September 2026.

What we did

We rebuilt the product from scratch as a single, strictly typed TypeScript application on Next.js and PostgreSQL, hosted in Sydney. AI wrote most of the code. Every change was directed and reviewed by the engineer accountable for it, and had to pass the test suite before it could go anywhere.

Date (2026)Milestone
26 AugustFirst commit of the rebuild
20 SeptemberRunning in production under the new name, Thisys
2 OctoberPublic launch on a clean production database
8 OctoberRelease 1.1.0002 live, after an independent validation round
10 OctoberMigration of SurveyFace accounts, surveys and responses (scheduled; results to follow)

By 8 October the project had about 3,500 commits, 19,284 unit tests and 5,417 browser tests running on desktop, tablet and mobile screen sizes.

The safety net, working

Independent validation found three serious problems. All three were fixed before release.

Before each release, a separate validation run scores the product against written claims and test cases, the way an outside tester would. For release 1.1.0002 it scored the core product 9.24 out of 10. On the way there it found three high-severity defects. All three were fixed, given regression tests and re-checked before the release went live, so it shipped with no open critical or high defects. Each medium-severity finding was either fixed the same way or written up with a justification the product owner accepted.

That is the point of the method. AI-written code has defects, as all code does. What matters is a process that finds them before your customers do.

The migration

Moving real customer data is where most rebuilds go wrong, so we rehearsed it on a full copy of production data and reconciled every count before the real move.

Rehearsal (October 2026)Count
User accounts16,173
Surveys28,940
Responses564,863
Individual answers4,776,227

The live migration is scheduled for 10 October 2026. We will publish its results here about two weeks later: the counts reconciled, the downtime and any issues found.

Before and after

SurveyFace (before)Thisys (after)
LanguagePHP 5, untypedTypeScript, strict
DatabaseMySQL, queries built as stringsPostgreSQL through an ORM, versioned migrations
PasswordsMD5Argon2id
Automated testsNoneAbout 24,700
HostingDigitalOcean, New YorkDigitalOcean, Sydney, behind Cloudflare
Development effortAbout 14,000 person-days (2009 to 2014)Under 40 person-days (26 Aug to 8 Oct 2026)

Effort counts people's working time, at 8 hours per person-day. SurveyFace: the development team's working days from 2009 to 2014, at 240 days a year (52 five-day weeks less 20 days of holidays), plus the founder's 40 hours a week from 2010 to 2014; maintenance after 2014 is not counted. Thisys: the founder's 40 to 50 hours a week for 6 weeks (240 to 300 hours). The cost of AI services is not included.

Have a system like SurveyFace?

Start with a fixed-fee assessment. You get the plan, the risks and a fixed price for the rebuild.