Skip to content

About

I am Ricardo Maia. I build the systems behind Orizonlabs, and I am the person you would actually be working with — there is no one else here yet.

I came to competitor pricing from cybersecurity, which sounds like a detour and is not. For three years at Cybersafe I built the infrastructure and service design for a threat intelligence platform: a system that watched external entities nobody controlled, decided which ones mattered, and got that decision in front of a security analyst fast enough to act on. Competitor pricing is the same problem with different nouns.

The same architecture, a different domain

This is not a loose analogy. The threat intelligence platform I built and the pricing systems I build now share their structure component by component. What follows is the mapping.

Threat intelligence at CybersafeCompetitor pricing at Orizonlabs
Continuous collection of reputation data on IPs and hostnames from across the public webContinuous collection of prices and stock levels from competitor storefronts
Sources that were never designed to be read programmaticallyRetailers running deliberate bot protection
Normalisation across feeds that each described the same thing differentlyNormalisation across shops that each list the same product differently
Deduplication — several indicators pointing at one hostProduct matching — one item listed under three names and two pack sizes
A scoring model rating how likely a host was to be maliciousA judgement about whether a price move is significant or noise
Multi-tenant, with strict logical separation of data between clientsThe same, unchanged
Per-client request monitoring and rate limitingThe same, and it is what the Vespion plan tiers are built on
REST API integration into whatever SIEM the client already ranIntegration into whatever storefront and CRM the client already runs
Automatic escalation to ticketing when severity crossed a thresholdA price change reaching the client for approval when it crosses agreed limits
Everything publicly known about the offending host, gathered so the analyst could judge in secondsThe competitor data behind a proposed price change, attached so the operator can judge in seconds

The classification model at Cybersafe was a colleague's work — he was a mathematician and it was his full-time job. The platform around it was mine: the collection, the normalisation, the tenancy model, the API, the escalation logic, the design of the service as something that could be dropped into a client environment.

Scraping, and the people trying to stop it

Earlier, as a freelancer, I built a system that tracked where products ranked on Amazon across multiple search terms and multiple geographies, so a client could tell whether their SEO and marketing changes were actually moving anything in an A/B test.

That work was mostly about the parts nobody puts in the pitch: captchas, bot detection, rate limits, results that differ by region and by session, and pages that quietly serve you something different when they suspect you are not a person. Competitor pricing runs into every one of those on day one. It is the reason most price monitoring quietly degrades a few weeks after it is set up, and the reason I do not treat collection as the easy part.

The gap, stated plainly

I have not run an online shop. I do not know your category, your margins, or what your customers tolerate, and I am not going to pretend otherwise after a forty-minute call. What I know is how to build the system that gets you the data and acts on the rules you set — reliably, from sources that would rather you did not, without falling over in week three.

If what you need is someone to tell you what your pricing strategy should be, that is not me.

What I am building

Orizonlabs does consulting work now and is building Vespion, a self-serve product for the same problem, alongside it. The consulting is not a placeholder while I wait for the product — the two feed each other. Every awkward catalogue and every shop that fights back teaches the engine something a synthetic test would not.

I will be writing about the parts of this that are genuinely hard, roughly once a month, on the blog. Product matching, stock signals that lie, what a request actually costs at scale. If you want to know how I think before you talk to me, that is the honest place to look.