Bidirectional Level Shifter without IC
There are lots of issues with the circuit that you drew.  I could go on at great length about what is wrong, but it doesn't matter because there is one fundamental issue:  RS-232 levels are inverted from TTL signal levels.  A binary '1' coming out of your PI is a high voltage level, but a binary '1' to your PC is -12 volts (ideally).  Your circuit doesn't do the inversion.

Other issues that you have are:  Modern RS-232 ports can't source much current.  10 mA is probably too much.  RXD needs a pulldown resistor.  The transistor might have problems switching correctly-- you can use an NPN to level shift AND invert.