Save to eprom at power off diagram.

If only it were so.

Regrettably, no. 4700uF is 0.0047 farads, not 0.47 farads. Instead of 94 seconds, you'd get 0.94 seconds at 30 mA. That's a long time, in digital years. However, the equation we used is valid only for a constant-current load. A buck regulator looks to me to be primarily a constant-power load, and that's different.

A constant-power load draws, well, constant power. That means that as the capacitor voltage falls, the output current goes up, so that the product of the current and voltage stays the same. So, the capacitor voltage drops faster as time goes on. In the constant-current case, the voltage drops at the same rate all the time.

I'm showing the math - not to torture you, but so other readers can check it and tell me why it's wrong. Solving it in terms of energy:
PT = (C / 2) * (Vi2 - Vf2)
where P = power, watts; T = time, seconds; C = capacitance, farads; Vi = initial voltage, and Vf = final voltage. We know everything but T. Solving for T is trivial - we just divide everything on the right by P, which is 12V * 30mA = 0.36W.
T = (0.0047 / 2) * (122 - 62) / 0.36 = 0.705 seconds. Less than the constant-current case, but not a whole ot less.

The Arduino library reference, here - http://arduino.cc/en/Reference/EEPROMWrite - says that "an EEPROM write takes 3.3 ms to complete." All 34 bytes can be written in about 0.11 seconds, leaving nearly 600 milliseconds tor the Arduino to figure out that power is going down, initiate the EEPROM write sequence, and do whatever else you want it to do before it fails. That seems like plenty of time.