I had an idea to make a program for my Arduino Uno that beeps whenever a print is done, but I can't find anything about interfacing it with the printer as all Google gives me is stuff about making a 3D printer from an Arduino.
Yes you could. But, as an alternative to the Arduino Uno, it might be far easier to send a beep by G-code
M300 (or here for Marlin firmware), this will bypass the need for an Arduino Uno entirely. You can even play the soundtrack/theme of Beverly Hills cop from this previous answer.
You can add the (set of) G-code(s) to the "end G-code" in your slicer.