Reza's answer certainly helped me, but I was able to program the RobotDyn ESP8266-Pro with a simpler configuration using no resistors or external 5V power.
For clarity's sake, let me say that I'm not using any external power, relying only on 5V the power coming through my SiLabs CP2102 breakout programmer plugged into my Mac. The wires from the CP2102 almost line up correctly with the EPS8266-Pro, except that you must swap order of GROUND and CTS coming from the CP2102. Here are the connections needed:
CP2102 -> ESP8266-Pro
---------------------
DTR -> RST
RXI -> TXD
TXO -> RXD
VCC -> 3.3V
GND -> GND
CTS -> IO12
In order to be able to program from the Arduino IDE, I then had to make a few more connections from the ESP8266-Pro to itself. I did not use resistors for the EN-VIN and GND-IO15 connections, as Reza did.
EN -> VIN
GND -> IO15
GND -> IO0
With any of the three above connections missing, you can't program the ESP8266-Pro. All three are necessary. This makes the board pretty inconvenient to program in place, so I think I'm not going to be ordering any others in the future.
Here are the settings I'm using in the Arduino IDE:

Programming works just fine with these settings. When using an FTDI232 programmer, I had to drop the speed down to 460800 baud, but otherwise the experience was the same.
Unfortunately, I still can't seem to get the serial monitor working from the IDE so I can see what is (and is not) going on with my code.