Apr 29, 2026
Some projects end with a sign-off email. This one ended with Paul Osborne, Director of FHR Services, turning up with a bottle of Champagne. That's the kind of outcome that makes this work worthwhile — and it's worth sharing what we actually did to get there. Thanks Paul !!
The platform we inherited
FHR Services operates a SaaS platform used by multi-site food businesses to manage compliance with UK Food Standards Agency data. When we took it over, the picture was not great.
Reports were timing out. Large data imports were exhausting server memory and failing mid-run. Security controls were inconsistent, a serious concern for a platform handling sensitive compliance records across multiple clients. The interface was confusing, deployments were manual and unreliable, and the codebase had accumulated years of shortcuts from a previous developer.
Paul's team had been living with these problems for a long time. They knew something was wrong but hadn't had anyone take real ownership of fixing it.
What we fixed
We approached the work in three areas:
Performance. We profiled the database query patterns across every critical workflow. The problems were consistent: missing indexes on columns used for filtering and aggregation, and inefficient query patterns that fetched far more data than needed. We rewrote the worst offenders and introduced targeted indexing. Reports that previously timed out after tens of seconds now return in under two. Large imports were restructured to process data incrementally, eliminating the memory spikes that caused failures.
Security. We did a thorough review. Scoped middleware was applied consistently, data-modifying endpoints were hardened, and validation gaps in request handling were closed. We also produced documentation to support ongoing data protection compliance.
Usability and deployment. The reporting dashboards and risk assessment interfaces were reworked to surface the most important information immediately. Navigation was simplified. A deployment pipeline replaced the manual process, making releases predictable and low-risk.
The result
The difference was immediate and visible. Paul's words sum it up better than I can:
"Glen is a pleasure to work with: communicative, thorough, and highly capable. He took on a system that was experiencing serious issues from a previous developer. He quickly transformed the system, creating a much clearer and intuitive user interface together with identifying and delivering a number of major performance upgrades. The improvements have given our clients data security, great new features and reliable performance."
— Paul Osborne, Director, FHR Services Ltd
And then he turned up with a bottle of Champagne. I can't think of a better way to mark a platform going live.
Is your platform in a similar position?
If you've inherited a PHP or Laravel platform that has performance problems, security gaps, or years of technical debt — we can help. The fixes are often more targeted than a full rebuild. Get in touch for a straightforward conversation about what you're dealing with.
Enjoyed this? Let's work together.
If you're dealing with a similar challenge on your platform, I'd be happy to take a look. Get in touch for a straightforward conversation — no jargon, no pressure.
Get in Touch →How a PHP config change and libary update eliminated every PDF failure on a 27-module SaaS
Consultants on a health and safety compliance platform were hitting intermittent PDF failures in the field. The root cause was PHP memory configuration. Here's how we found it and fixed it.