Looks like: A database projectOften turns out to be: One missing data flowHistorical crew data ↓
Looks like: A new enterprise platformOften turns out to be: A bridge between existing systemsTowage crewing ↓
Looks like: Months of specificationOften turns out to be: One missing workflowVoice agent ↓
Looks like: A replacement projectOften turns out to be: Something worth leaving aloneExisting phone system ↓
„The project is often bigger than the problem.“
Products
Built for operations, proven in production
Software shaped by real operational work — starting with towage crewing.
Towage Crewing & Competency
Not just where a tug is, but whether it can go.
For towage operators: crew, qualifications and certificates at a glance, so you know instantly whether a tug is ready for the job. Built around the departments' existing systems.
Platform details (coming soon)
In production Europe-wide at FAIRPLAY TOWAGEGROUP
Readiness on the map
Every tug in context, directly on the harbour map: positions, crews on board and open warnings in one view.
Competency in one click
From the vessel straight to the crew member: certificates, validity dates, scanned originals, experience, history and availability.
From plan to deck, in sync
Planners assign, masters confirm, crew sees their next rotation — all on the same live data.
fleet · port of hamburglive
loading map…
ELBE-07 · Hamburg - Germany
30.07.26 – 18.09.26
Crew · rank
CW31
CW32
CW33
CW34
CW35
CW36
A. MercerMaster
J. ValeMaster
S. MarinChief Engineer
L. NovakChief Engineer
T. ReedDeckhand
K. BrandtShip's Mechanic
OnboardTime offVacationTrainingSick leave
6 days onboard
Member
J. Vale (Master)
Period
13.08 – 18.08
Vessel
ELBE-07
Exact
13.08.26 06:00 – 18.08.26 18:00
Reminder
not sent
Remarks
Relief required — master reported sick.
Cancel
Reminder
Remove
Save
Click an assignment in the plan · all data anonymised
AI Voice Agent
Keep your phone system. Automate the work behind the call.
No new telephony, no new CRM. The agent joins your existing PBX, works through your own APIs and hands anything that needs a human to your ticket system.
3 meetings from first conversation to production.Existing telephony stayed in place.
In production at PCA
Joins your phone system
Registers as an IP phone on your PBX. All SIP-based systems work. The dialled extension decides the tenant.
Workflows are configuration, not code
Services, rules and API calls defined in JSON, with linting and built-in help. Any company with an API can plug in.
Done, or queued for a human
Tasks are executed on the call or land in your ticket system. Once staff confirm, a webhook lets the agent finish the job.
1{2"Goal":"Identify the affected child as the customer and provide the customer number for subsequent services. Parents are callers, not customers.",3"Prerequisites": [],4"Communication": {5"Instructions":"Greet the caller first. If knownPhone=true, ask for the child's first name; otherwise ask for contract number and date of birth.",6"Rules": [7"Only use details the caller has given or that are already in context.",8"Never invent customer data.",9"On multiple matches, never pick one yourself.",10"Run no other service before the customer is identified."11 ]12 },13"Inputs": [14 {15"Name":"contractId",16"Type":"integer",17"Required":false,18"Description":"Contract number of the child."19 },20 {21"Name":"birthDate",22"Type":"date",23"Format":"yyyy-MM-dd",24"Required":false,25"Description":"Date of birth of the child, not the parent."26 },27 {28"Name":"firstName",29"Type":"string",30"Required":false,31"Description":"First name of the affected child."32 }33 ],34"Api": {35"Config":"API",36"Endpoints": [37 {38"Id":"customer_lookup",39"Method":"POST",40"Path":"/customers/lookup",41"Parameters": [42 {43"Name":"contractId",44"Input":"contractId"45 },46 {47"Name":"birthDate",48"Input":"birthDate"49 },50 {51"Name":"firstName",52"Input":"firstName"53 }54 ]55 }56 ]57 },58"Evaluation": [59 {60"Result":"UniqueMatch",61"Condition":"Exactly one customer is returned."62 },63 {64"Result":"MultipleMatches",65"Condition":"Several possible customers are returned."66 },67 {68"Result":"NoMatch",69"Condition":"No customer is returned."70 },71 {72"Result":"TechnicalError",73"Condition":"The API call fails."74 }75 ],76"ContextUpdates": [77 {78"Name":"CustomerNumber",79"Source":"customer_lookup.Response.customerId",80"Required":true81 }82 ]83}
Goal is set
Every input has a name and type
Endpoint ids are unique
Parameters map to known inputs
TechnicalError is handled
Context sources reference endpoints
Pick a call or a service · all data anonymised
AI where it pays off, inside your own systems
Not every problem fits a product. Custom AI and automation, integrated with your existing schemas, designed for reliability and built to be maintained long term.
Experience
Built to last
FAST has been in production since 1995 for broadcasters, publishers and media marketers: more than 1.2 billion advertising placements across every major medium, complex ad-hoc reports in about 1.4 seconds, and Tableau dashboards embedded right in the application. That track record is why we can build serious operational software today.
In continuous production
Since 1995
Advertising placements captured
1.2 billion
Typical complex ad-hoc report
~1.4 s
TV spot · Northlight Audio · Night Session60 s · 6 channels
Spend per TV channel for this spot
Last
Channel
k€
Total
4,180
28.06.26
RTL
1,240
28.06.26
ProSieben
1,010
27.06.26
Sat.1
780
28.06.26
VOX
520
26.06.26
Kabel Eins
340
27.06.26
n-tv
290
0:00
0:07
0:14
0:22
0:31
0:39
0:47
0:55
Brand and figures shown are illustrative.
Print
TV
Online
Streaming
Cinema
Out-of-home
Direct mail
Selected organizations over the years
ARD
RTL
Sat.1
Axel Springer
Burda
G+J
DER SPIEGEL
S.Z.
Handelsblatt
IQM
Visoon
Bauer Verlag
MPS
B&M
Lotto24
WPV
Roche
pilot
Initiative Media
rs media
WEFRA
GFI
Biermann
Avoxa
Financial Times
mds
Medical Tribune
Urban+Vogel
FRoSTA
Integrates with
Tableau, embedded
Excel
PowerPoint
Qlik
Alteryx
HubSpot
Salesforce
REST
Ask the Database
Piloted with users
Questions in plain language, answers straight from the data. The AI only sees the database structure and writes the query; the query itself runs locally. Records never leave your system.
Natural language
Schema only
Runs locally
Core capabilities
Schema and database design
Data classification and enrichment
AI integration on top of real data
Long-term system maintenance
Approach
Founder-led, from the first conversation to production
datrmine is led by Ralph Ulrich. You work directly with the person who designs and builds the system, with no account managers or handoffs in between.
40+ years change the way you look at complexity. Technologies come and go; none of them is the goal.
Replace only for a reason.
Reliable systems stay in place unless there is a reason to replace them.
Integrate around reality.
Architecture follows the operation, not the other way around.
Handle the edge cases.
That is where operational reality becomes visible.
In practice
Expected
Centralisation project with an enterprise platform and external consultants.
Delivered in weeks
One central data layer for tug data across technology, dispatch, crewing and offshore. Every department kept its tools.
Expected
Database and reporting project to import historical crew experience.
Delivered same day
In about 40 minutes the data was inspected, special cases handled and the report adapted.
Contact
Describe the problem. We'll tell you how small it can be.
A direct conversation with Ralph Ulrich, the engineer who will build it. No sales process.