Nowadays, drive enumeration can sometimes be a little unpredictable. Especially with removable devices. It's probably one of the reasons for using UUIDs instead of device names in boot loader config files. Anyway, one way to exert your will over this matter is with custom udev rules. Here is a tutorial which, at first glance, may be intimidating. But after I read it a few dozen times, it began to make sense to me. A udev rule basically uses one or more match keys that are unique attributes of the device to positively identify it, and then it uses an assignment key to apply an "action", so-to-speak (such as name the device node or symlink to it). The tutorial will teach you how to get the device's unique attributes for the match keys and how to write your custom rule specifying the assignment key to do what you want to the device. It will also tell where to put your custom rules.
Writing udev rules
P.S.: Depending on exactly what you are doing, partition labels may be a simpler thing to do. I use them for the partitions on my external drives and deal with them by their labels without even looking at what their device names happen to be.