Gotem · Launching
Hunting pirated copies across the web
Scans search engines, websites and Telegram for copies of digital products, comparing both text and images.
Context
Creators of digital courses lose revenue to copies of their products sold or shared for free. Finding them by hand doesn’t scale. Gotem scans the web for them.
Constraints
- Heterogeneous sources: search engines, websites and Telegram channels.
- Copies are rarely identical: renamed titles, cropped covers, rewritten descriptions.
- Each customer’s data must stay isolated.
Decisions and trade-offs
- Scans on a task queue. Long, failure-prone searches run in the background with retries, without blocking the API.
- Text and image comparison. Two independent pieces of evidence reduce false positives when a copy is disguised.
- Isolation enforced in the database. Customer isolation uses Postgres Row Level Security and is proven by automated tests, not just by the application.
Result
Product launching, with a public landing page at usegotem.com.
What I’d do differently
Log every “copy / not a copy” decision confirmed by customers from the first day, to later train an in-house classifier on that history.
Stack