Jaimbi- This has been talked to death over on the Solidworks forums. There's a good thread over there from power users. I've built about 3 machines recently for Solidworks myself and tested and benchmarked everything. Processor frequency is king, the higher the better. So is memory bandwidth and cache.
#1, for Solidworks, AMD can't post performance anywhere close to Intel, so don't even waste your time there. It all depends on what version Solidworks your friend is going to use, 2012 and older, multi-core isn't as important. 2013 and newer and multi-core is very important.
As far as your system above, you'd be doing your friend a disservice by going with anything less than a i5-3570k for the same money, find a Microcenter. Get a good water cooler and overclock to at least 4.2 Ghz. GET AN SSD.
Now, if you want to really help your friend and future proof the money he's going to spend now, look into an i7-3820 and a socket 2011 mobo. Yes, it is more expensive up front by about $100. However, you can drop a six-core 3930 any time as his demands require and sell off the 3820. In 2014, he'll be able to drop an 8 core Ivy Bridge-E into the socket as well. So the system will have good longevity. And for an Engineering app like Solidworks, you'll want scalability.
The last couple of considerations: Solidworks will load hardware unlike any game. Unless it is dead stable, BSOD is common place. Solidworks is unforgiving, so make sure it is all very stable.
If this is all too much specificity, feel free to PM me, I have some Solidworks workstations sitting around that I've just built and stabilized that I'm willing to part with.