"pm" would be me.
I've been working for Intel for about 10 years, and I've been doing interviews for Intel and screening resumes for about 5 of those years. The first thing to do to get a job at a larger high-tech company is to make sure that your resume has all of your skills in it and that these skills are clearly written out. This may seem like a silly thing to say, but I have almost tossed resumes due to lack of skills being on it and then asked in the interview and then found out that the applicant just didn't think it was important. All of our design (at this site anyway) is in Unix. Not knowing Unix is going to get an applicant downgraded a bit - but I've stopped screening resumes for Unix experience because not everyone mentions it on their resume. The way that all high-tech places screen resumes is with search engines. So one would type in "VLSI", "digital logic", "GPA > 3.0" "Unix" into the search engine and see what comes out. So you want everything that could be caught by a search engine to be in your resume because if you are missing a buzzword that an interviewer is search for, then your resume will never get read by human eyes.
Also keep the resume focused on what is most relevant - if nothing else, this frees up space for more buzzwords. If you are a new college graduate or an intern, don't use a lot of space on work experience unless it's relevant. Put one job down, but that's it - put one charity work if you haven't had a job. The rest should be spent on college class descriptions and projects. Don't put in references - high tech companies usually have a 3rd party company do a background check and references are checked then. So at the bottom put "references upon request" or something like that. If your GPA is lower than 3.0, then leave it off the resume and wait for the company to ask for it. But bear in mind that people hiring pretty much know this trick... still, you are better leaving off a 2.7 GPA than including it. You want people to read your resume, not have some search engine eliminate you.
Another thing that really throws me off is people putting things on their resume that aren't true. This looks really bad in an interview If their resume says "C/C++ programming" and then I ask how to do something really simple in "C" and they can't answer... well, I can hope that nervousness is to blame, but it gets noted. Since I ask at least one question on each part of the resume that is relevant to the job, any exaggerations get uncovered.
Once I get into the interviews, I focus about 1/3 of the time on college projects. I'd hope that anyone who puts down "built switched mode power supply" in their resume could tell me how a switched mode supply works. So, similar to the previous paragraph, know what's on your resume. Someone who doesn't know how a project that they spent several weeks on works, or what problems they encountered while doing it, would be even worse than someone who can't answer a basic question about something on their resume. The latter could be nervousness, but even those who are nervous should be able to tell me about a project.
In the interview, I normally tell the person what I will be interviewing on - this is our local policy. So I basically give them head's up on what the questions will be about. If someone does this for you, make sure that you study a bit for the interview. I have had several people who clearly were smart, got great grades, had a great resume, but then couldn't answer a basic question from a class they took a couple of years ago. To be honest, this is fine and normal - I couldn't remember stuff that I learned and don't use very frequently either. But if the interviewer says "the interview will be on digital logic incl. boolean algebra and state machines" then one would hope than an interviewee would crack the book and see how to do these questions again. Walking someone through a K-map in an interview is an odd thing.
Another bit of advice on the interview is to talk the interviewer through the problems. At Intel a common technique is to introduce something that is unlikely to have been learned in a class and watch the interview work through it. I want to see someone say "Well, I've never heard of this, but it seems like..." and then go off and solve the problem. The thing not to do is say "I don't know." I've had candidates that can rattle off book definitions, do Laplace transforms, solve second order response questions and then faced with a relatively simple problem that they have never seen before, just clam up and say "I don't know.". Being an engineer is about being a problem-solver, and part of any good engineering interview should a section where people need to demonstrate problem-solving skills.
So, the keys in my mind are:
1. Get your resume through the search screen. To do this you need buzzwords that people will search for - make sure you have the right ones in there.
2. Make sure you don't exaggerate on your resume - despite #1 - any gross exaggeration will likely be uncovered
3. Make sure you know everything on your resume very well
4. In the interview, study prior to the interview and be sure to talk your way through problems.
Lastly, the absolute best way that I know of to be in a great position to get a job at a high-tech company coming out of college, is to do an internship at a high tech company. The usefulness of this can't be overstated. For one thing, if your internship goes well, the company you interned with will likely offer you a job straight-up. So you graduate and go into other interviews knowing that you have a job already lined up. This is a huge confidence boost, and being self-confident is a great way to interview. Also an internship gives you valuable knowledge on what companies are like, and what jobs people actually do in a company. You gain skills with the CAD software that's actually used in the industry. Even the intern interview process gives you valuable practice at interviewing - which is something that definitely takes practice. So my best advice in this whole post is, apply for internships early and often. It takes very little time once you have a resume put together, to send it to all of the major high tech companies out relevant to what you want to do. Send it to Intel (jobs@intel.com), send it to other companies, send it all over. And then resend it about every 6 months.
Patrick Mahoney
Senior Design Engineer
Intel Corp.
Fort Collins, CO