why use 2 diodes when shifting from 3.3 to 5v?
There are several issues with this circuit.


If "data in" is a 3.3v signal, then:


In low state, (5v-0.7v diode)/10k = 430uA will be back-fed into the 3.3v device. As long as the device can keep it's output low, this will only waste power.
In high state, (5v-0.7v-3.3v)/10k = 100uA at 1.0v above the 3.3v supply will be back-fed into the 3.3v device. This can cause latch-up or even damage the device.
In the high input state, D1 is on, Data Out will be 3.3v+0.7v of diode = ~4.0v.
In the low input state, D1 is on, Data Out will be ~0v+0.7v = ~0.7v



This is assuming the 3.3v device has perfect sourcing and sinking characteristics. 4.0v and 0.7v should register as logical high and low for most 5v devices, but always check the datasheet to be sure. Some may specify a maximum TTL \$V_{IL}\$ value of 0.1*Vdd... so in that case, 0.5v and thus, no "low" would ever be valid.