The ID prefixing is cool from an identification point of view, but we've been using UUIDs for tokens and if we implemented this we wouldn't be able to use the UUID optimized datatype field in Postgres.
Surely you can just strip off the prefix in the application layer before sending it to Postgres? You still get the benefits, while being able to use the native query.
I do it like that. We're only using a two char prefix (I copied Twilio)
Why not? You don’t have to store the prefix and the UUID in the same column?
Can’t you just add a column to your schema with the prefix?