Technology expertise
Capabilities organised as an architecture stack. Select a layer to see what it covers.
Eleven-plus years building the infrastructure behind flight and hotel search, pricing and booking.
- Travel API aggregation
- A unified engine that normalises multiple Tier-1 GDS, airline-direct NDC, LCC and consolidator feeds behind one canonical shop, price and book contract.
- GDS & NDC integration
- All three major GDSs (SOAP/XML and JSON REST variants), multiple airline-direct NDC endpoints, an NDC retailing-platform AirShopping layer, a European LCC aggregator and a regional flight-content hub.
- Fare & pricing logic
- Markup, commission and pricing-rule engine for B2B agent tiers and B2C channels with multi-currency margin logic; branded-fare and fare-family normalisation into a comparable upsell matrix.
- Shopping & results
- Low-fare calendar search on a 90-day rolling fare cache, baggage-allowance normalisation across piece and weight concepts, and a pipeline that merges, de-duplicates and ranks multi-supplier itineraries.
- Booking normalisation
- Supplier-sync layer that reconciles heterogeneous PNR and order structures into one canonical booking model for post-booking operations.
- B2B distribution
- Agent networks with credit limits, role-based access and white-label channels, plus a public developer platform that exposes the engine as a documented API product for resellers.
Finding the defects that pass tests but corrupt production, and optimising hot paths by measurement.
- Cache correctness
- Diagnosed Redis key collisions caused by XML C14N silently returning empty strings, and redesigned key derivation to hash only semantically stable request fields.
- Benchmark-first optimisation
- Benchmarked a supplier JSON hot path across PHP 7.4, PHP 8.4, Node.js and Go, then optimised the production PHP to byte-identical output at about 3.3x throughput — no rewrite required.
- PHP runtime tuning
- Memory profiling, allocation reduction, array-versus-object trade-offs, and JIT and opcache tuning as a dedicated server-side optimisation track.
- Real-time infrastructure
- A self-hosted WebSocket push server with channel-based pub/sub, removing dependence on external push providers.
Hardening large production monoliths incrementally instead of risking big-bang rewrites.
- Forensic code review
- Reviews of 37,000+ line flight-booking service classes with 100+ methods, returning drop-in corrected code validated against live supplier payloads.
- PHP 8 migration
- Full compatibility review of an enterprise travel platform: deprecated dynamic properties, null handling in internal functions, strict-type boundaries and named-argument safety.
- Error-surface hardening
- Typed exception hierarchies, sanitised client errors and internal correlation IDs so no internal state leaks to API consumers.
- Production diagnosis
- Root-causing live defects from raw payloads and error logs and shipping fixes against live supplier traffic.
End-to-end ownership of architecture across a polyglot production stack.
- Software Architecture
- Canonical internal models with adapters at the edge, so pricing, caching and booking logic never branch on supplier.
- System Design
- Deterministic, idempotent pipelines: cache keys, booking retries and ticketing calls designed to be repeatable without side effects.
- Database Architecture
- MySQL schema design for booking ledgers and fare caches, index strategy, query-plan tuning and transactional integrity for ticketing and accounting flows.
- Cloud Infrastructure
- AWS and Azure deployment, horizontal scaling of stateless API tiers, and observability through trace IDs and structured logs.
- Security
- OAuth2, HMAC, API-key and session auth schemes, secret scanning and PII-safe logging.
35+ products, platforms and engines shipped across travel and adjacent verticals.
- Product Engineering
- Architecting and shipping products end to end across travel, pilgrimage logistics, accounting, messaging, e-signature, education and data intelligence.
- SaaS Platforms
- Travel accounting, omnichannel messaging, e-signature, appointment scheduling and education management products.
- B2B Systems
- Wholesale travel platforms with agent hierarchies, credit control, markup engines and white-label channels.
- Operational tooling
- Debug-trace panels, search consoles and payload inspectors shipped as first-class tools for support and QA teams.
The reference data and validation pipelines travel systems depend on, and the analytics built on them.
- Reference data
- Airport, city and airline master datasets with IATA/ICAO code normalisation, plus a supplier and carrier logo asset library.
- Hotel content mapping
- A Python engine that matches property records across suppliers using fuzzy name, geo-coordinate and address scoring.
- Revenue intelligence
- Fare and margin analytics, competitive pricing signals, and fare-drop and room-rate monitoring with re-shop triggers.
- AI & automation
- A real-time business insights platform with live KPIs and a conversational AI travel assistant; bulk validation and de-duplication of large datasets.
From the code-review casebook
Defect classes found in forensic reviews of large monolithic service classes — including 37,000+ line flight-booking classes with 100+ methods — each returned as drop-in corrected code validated against live payloads.
| Defect class | Root cause | Remediation |
|---|---|---|
| Broken PDO parameter binding | Masked by PDO::ATTR_EMULATE_PREPARES; type coercion and placeholder reuse failed only with native prepares. | Native prepared statements, explicit bind types, unique named placeholders. |
| Date arithmetic errors | date(strtotime()) misuse across timezones and relative formats. | DateTimeImmutable with explicit timezone and format contracts. |
| Information disclosure | Raw getMessage() returned to API clients from catch blocks. | Typed exception hierarchy, sanitised client errors, internal correlation IDs. |
| Parser crash on PHP 7+/8 | A code beautifier split the spaceship operator <=> into separate tokens. | Token-safe formatting rules and syntax linting in CI. |
| Cache hash poisoning | Volatile per-call attributes (TraceId, BookingTravelerRef) included in key material. | Key derivation from semantically stable request fields only. |
Technology stack
Primary production stack is PHP/MySQL with Go for latency-critical services, React for front ends and Redis as the caching and coordination layer.
Primary production stack
Where the systems run today
- PHP (7.4 – 8.4)
- MySQL
- Go
- React
- Redis
Secondary depth
Languages and cloud platforms
- Java
- Python
- .NET
- AWS
- Azure
Protocols & formats
How systems talk
- SOAP / XML (C14N, XSD)
- REST / JSON
- IATA NDC schemas
- WebSocket
- OAuth2 · HMAC · API keys
Travel distribution
Supplier and content sources
- GDS (all three majors)
- Airline-direct NDC
- LCC aggregators
- Consolidator feeds
- Hotel content mapping