Trouble programming ATMEGA328 via FTDI cable

Are you powering the board via the FTDI lead and what frequency crystal do you have? If the board is running at 5V and you plug the 3.3V FTDI cable into it you should have ~10k resistors in the signal lines to protect the FTDI chip, or some level-shifting circuit - also the DTS reset generation probably won't work from a lower voltage.

If the board is running at 3.3V then a 16MHz crystal is pushing the limits for that voltage (but usually works in practice).