I am a Ph.D. in industry. I am here because I made decisons in an emotional state. Now to answer the question, "Ph.D. or M.S.?" If you pursue Ph.D stay in academia. The reasoning is that to pursue a Ph.D. you have a natural mentality to like that environmnt. A Ph.D. in industry is out of place. Your work will be judged by people who do not have the same mentality, ie, mismatch. Secondly, only the largest of the large companies do any R&D. So stay in academia. For the M.S. only track, industry is where you want to go. There you can make more money than a lot of PhD's.
Apart from 'listening to heart (and wallet)' another thing important in my opinion is the timing. Now companies are hiring well, and the economy looks better than what it was during 2008-2009 timeframe. I know some of the PhD guys who struggled to get jobs inspite of having excellent academic records because hiring had stopped in many companies. People also mention that it is best to go to school when economy is not doing good.
My suggestion would be to go for industry now. Maybe work for an year, and decide if that is the cup of tea he prefers and enjoys. If he does not like the Industry culture then he can get back to Academics and anyways he would have earned some money in the one year that can come handy during his PhD days.
Timing constraints aside, I think it's very difficult to get out of school, go into industry, and then jump back in for a PhD. Especially in an engineering or science field. My personal advice would be to stick with academia until you're done with that phase (assuming you do want to go into industry).
Your less formal education will continue for the rest of your career, so that's not the issue. It's the rigor required for a PhD that I'm talking about. It's a lot easier to pick up practical knowledge AFTER you've had your ivory tower existence, than vice versa.
Well I don't really agree with that. I too had taken a 2 year break getting some Industry experience before embarking on higher studies... And I have seen many people who do ti as well. Also, even Professors in many schools look for people with prior experience for RA work. This is especially true when it come to Analog Circuits or VLSI. I think it depends on individual experience on what worked for them and what didn't.
Surely, getting abck to college after working for w while takes a lot of courage and determination. It is certainly not easy. But if it were to be easy, then what is the fun.
In today's world perhaps more than any other time (probably not), quality is second to well money, fame and just producing stuff (sheep get bored quickly so we just have to keep pumping out stuff forthem to buy).
If your choice of real-world experience is little more than hacking something together (when your capable of so much "moire"), then may academia is the best place to stay until you find a company that actual needs quality deliverables. The converse is true as well, your academic institution will very most probably require you to do some teaching (and I hear that can be rewarding), so that is a PRO, isn't it? Your academic institution may also be hoaring themselves out to the local cancer-like company and want you to help them devour what they can. For instance you may be asked by the local attack industry company to help develop a guidance system with the SRS stipulating that although it would be nice if the weapon-of-mass-destruction hits its target, don't worry too much about it since we will be firing it a some third-world country which is surrounded by a few other thrid-world countries so meh!
Sidenote: The Wii joystick is a great device as long you don't mind kids, drunk people and well anyone smashing your $2000 tv. They still haven't added the label "Put the strap on fool or you'll break your....ah who cares we sell tvs as well."
In short I would say follow your heart and do what you feel passionate about (assuming you are passionate about anything other than trying to survive), and hope you don't get a "self-taught" boss who removes the comments from your code because he thinks it bloats the compiled code.