Scope is worldwide and no work-authorisation, presence, language, timezone, or credential restriction was found in the body text.
“Worldwide” Geographic scope — No location restrictions stated — worldwide.
Device fingerprinting is often misunderstood.
From the outside, it looks like a simple problem: collect a set of signals from the browser, hash them, and suddenly you have a device identifier that can track bots and fraudsters.
Anyone who has built fingerprinting systems at scale knows the reality is very different.
Browsers and operating systems evolve constantly. APIs appear, change behavior, or disappear. Hardware configurations change. Users travel, change networks, or simply resize their screens. At the same time, fraudsters actively manipulate their environment using anti-detect browsers, patched Chromium builds, canvas manipulation, and residential proxies. They clear storage, rotate identities, and try to make multiple devices look like one — or one device look like many.
In practice, production-grade fingerprinting systems are much more than a hash of JavaScript attributes. They combine reliable client-side signal collection with sophisticated server-side logic that determines whether two fingerprints actually belong to the same device or user — even when the signals are noisy, drifting over time, or intentionally manipulated.
Castle is a small, profitable team building a real-time trust layer for modern platforms, and fingerprinting is one of the core components of that system.
Many fingerprinting systems look stable at first but break down under real-world conditions. Signals evolve, environments are manipulated, collisions happen, and what once looked like a reliable identifier becomes unusable. Our approach is to treat fingerprints as evolving representations rather than static identifiers. The goal is to reliably recognize devices over time, even when signals change and attackers actively try to interfere.
This role owns fingerprinting end to end: from signal collection in the browser to the matching logic on the server side.
In practice, this means working with other JavaScript researchers and detection engineers to design new signals, build reliable client-side collection mechanisms, and develop the algorithms that determine whether two fingerprints likely belong to the same device or user.
We already have fingerprinting systems running in production. The goal of this role is to take them much further.
You have worked on signal collection in real browsers, not just theoretical models. You have dealt with unstable signals, fingerprint collisions, and manipulated environments. You understand the tradeoffs between entropy, stability, and collection cost. You have experience designing matching or clustering algorithms that operate under noisy and adversarial conditions.
Opens the original posting, where you apply.
Tell us and we'll mark Castle as a company that has actually hired in the Caribbean. It's the most useful thing on this board and it only exists because people report it.
I got hired here →