Do my defines need to be unique?

Yes they do, the more interesting question is why do you use define instead of const? Take a look here: define() vs const.

The only situation in which you should use a define over const is if you want the user to be able to override your defines in wp-config.php. Obviously things like minimum php version should not be overridable.

Once you go with const you can just use namespaces and get over the whole issue. The only problem is that const before PHP 5.6 could not be assigned an expression and you have two defines which are not simple values.

If you target PHP 5.6 and above then, in my opinion, just use const. Otherwise defines should be avoided as they can be overwritten by mistake, but it is your judgment call about using defined values instead of calling the relevant APIs.