But what about on the device -> arduino?
Sometimes...nothing. If a device outputs exactly 3.3V that is high enough to be recognized by the Arduino (specs say 0.6*5V or 3V is minimum to guarantee a logic high).
If a 3.3V device outputs ~3V then it's on the edge and you should either use a level converter or pull-up resistor to 3.3V to try to get the voltage higher. I'd go with the second as it's simple enough.
The Gadget Shield
: accelerometer, RGB LED, IR transmit/receive, speaker, microphone, light sensor, potentiometer, pushbuttons