JOÃO PEDRO DANTAS THAL
JOÃO PEDRO DANTAS THAL
JOÃO PEDRO DANTAS THAL

I build things with data and AI, then distrust them before publishing.

Data Science & AI at Ibmec BH · Belo Horizonte, Brazil
199,423 IT SUPPORT TICKETS

95.2% of them close between minutes :40 and :44 of some hour.

In the control group, where the agent closes the call in person, it is 7.8%, almost exactly what chance predicts. The closing timestamp does not record who resolved the ticket. It records an automated sweep clearing whatever had gone stale. Every SLA in that operation was measuring the wrong thing.

AI AGENTS

Escriba never hides which rule made the decision.

It turns a recording, a PDF or a photo of the whiteboard into the finished note, already committed. Routing is a three-layer cascade, and the report always names the layer that decided. When it gets it wrong, the fix command repairs the file, the links and the rule itself. APRENDIZADOS.md lists six defects that three review rounds failed to catch.

CPTM SOS · TEAM OF SIX, I SERVED AS SCRUM MASTER

213 tests that we broke on purpose to find out whether they were worth anything.

An emergency flow for women's safety in São Paulo's commuter rail stations, live at cptm-sos.onrender.com. Every fix was verified by mutation testing, breaking what had just been repaired and confirming the suite fails. That is how we found tests measuring the wrong element.

WHAT RUNS THROUGH EVERY PROJECT

Never trust that something worked just because it is documented.

An anonymisation function that refuses to write if a national ID survives the pass. A scraper that waits for the row count to stop growing, because a fixed timeout would save 20 funds out of 547 with no error and no warning. The same analysis rewritten in SQL, with a script that fails if the two implementations disagree.

EXPLAINABLE ANOMALY DETECTION

Intrusion detection and fraud detection are the same problem.

Binary classification on heavily imbalanced data, where accuracy misleads and a false positive carries a real cost, and where explaining the decision is not optional. From September 2026 I join an Ibmec research group on Explainable Machine Learning applied to network attack detection.

The numbers
Public repositories
7
Tickets analysed
199,423
Automated tests
213
AI agents
2
Real estate funds
547
Citations extracted
1,995

All the code is open.

github.com/dantas6773
scroll ↓