Thursday, September 24, 2009

Surviving a Career Fair


I didn't have time this week to put together a regular post because of my weekend recruiting trip, so I thought I'd instead provide some tips for those of you in school trying to do well at career fairs. Granted, my tips are aimed more towards CS majors, but some of them are definitely applicable to all fields of study. I thought about these on the way back from 5 hours of non-stop career fair pre-screening, and the folks that I gave my highest recommendation to for getting interview slots based on my conversations with them all had these things going for them. This is by no means an exhaustive list, but it's the best I could come up with on short notice.


I have to admit that I'm a little surprised that this had to be included on the list. Please make sure you shower before going to a career fair. If it's hot outside where you are then plan out your transportation appropriately so that you're not all sweaty by the time you get to the fair. Also, brush your teeth! If I can see yellow gunk between your teeth, guess what I'm looking at? I didn't deduct points from folks for these things because I didn't think it was fair to, but the point is that you're trying to sell yourself and presentation is everything. It's harder to hold a conversation with someone who smells terrible - there's really no getting around that. I know almost for a fact that there are companies out there that won't be so forgiving if you have terrible hygiene, so get cleaned up and at least come business casual.

Shake the Representative's Hand!

A firm handshake is a pretty standard thing. It's a matter of politeness and tact. When you've been standing for hours and talking to folks nonstop, it really sucks when someone just walks up to you and sticks a resume in your face. That's a pretty bad first impression and given that you only have a few minutes to wow the representative, you don't have much time to make up for it. You want the entire experience to average out positive, and no greeting starts you out in the negative.

Eye Contact

This generally wasn't a problem for me, but there was one guy who I seriously thought was blind. To be perfectly honest, I spent a good 20 seconds trying to figure out if he was blind. It doesn't count against you if you're blind, but it does count against you if you're trying that hard to not look me in the eye. My end conclusion is that they guy was looking at the ground. Aside from showing a huge lack of confidence (you don't want to be self-deprecating here, it's basically an interview situation), it's really awkward. It felt like talking to a wall. Being a software developer involves a lot of communication, how can I endorse someone who's not comfortable talking with people? I'll come back to communication though.

Refine Those Resumes

My biggest pet peeve was seeing resumes that were clearly not properly prepared. It's really as easy as going to your school's career services and having someone go through your resume with you. I only have 3-5 minutes to talk to you, and I don't want to spend a minute reading an essay about your life while you stand there awkwardly. A resume is a concise summary of your professional career and what you're looking for, so don't give me every little detail. Highlight the key points and let me ask you questions about what I care about. Since different companies sometimes look for different things it doesn't make sense to try to explain everything in detail and hope for the best. The things I focused on the most were:

  • Previous Degrees

  • Graduation Date (do you want an internship, full-time position, etc.?)

  • Skills (programming languages, familiar technologies, etc.)

  • Relevant Coursework (more important for underclassmen)

  • Technical Work Experience (people seemed to not like to mention what languages or technologies they used, or their role in the projects, and instead used a lot of ridiculous acronyms)

  • Technical Independent Projects (which ones were done outside of the classroom and what technologies/languages did you use?)

  • GPA (this was low on my list, but could help more than hurt people)

  • Objective (not always necessary, but was important for folks where I didn't understand what role they were looking for at Amazon and it can't hurt to have it there on the safe side)

Another thing: don't print on the back of your resume because then I can't take notes on it. I know several companies take notes on the backs of resumes, and the less space you give me to take notes the less likely I'll be able to recommend you for an interview spot since I can't read my tiny notes in the margin. If you have to have more than one page (consult with your career services first) then use multiple sheets of paper and staple them.

Keep Your Resume Professionally

I expect for people to have swag bags and probably backpacks, but don't keep other junk in your hands and don't keep your resumes in your swag bag. For one thing, it took those people like 30 seconds to reach in their corporate swag bag for their resume, and it's just tacky. I literally paid $15 for a leather zipper case that I kept my resumes in back in the day and it worked great. Some people kept crumpled papers in their hand, which was also strange. Feel free to use your hands to help you speak, but don't use them to fidget with crumpled papers.

Offer to Summarize Yourself

Some people don't like this, but I do. When you hand your resume to someone, if they don't ask you to give a brief summary of yourself and what you're looking for, then ask them if they'd like you to. It can't hurt. Don't launch into the story of your life unprovoked, but I liked having the guidance as I read someone's resume of what they found most important. It was less awkward than the person just watching me read their overly long resume (in the cases where the resume wasn't well-prepared, I mean). It can backfire if you go into each thing in grave detail though because it's going to give me less time to talk to you and formulate a positive opinion of you (more on this below).

Talk Concisely

Please do not ramble. Please! If you ramble when you're nervous then go through some mock interviews with your career services. Even though it's not a full-blown interview it still is a very small one. Be concise in your answers and feel free to politely ask if you properly answered their question or if they'd like to hear more, but don't offer more information than was asked for. Aside from being irritating, it means that the representative has less time to ask you for the information they really care about, which gives them less evidence to build the case they'd have to make on your behalf to get you an interview. Also, if there's a line behind you then that's even worse because it's impolite to those people and is going to encourage the representative to cut your time short prematurely because they want to keep the line moving since they're not going to get to ask you what they need to ask you in under 5 minutes.

Be Confident

This is a pretty tricky one. You want to be confident, but never arrogant. There were a few people that were kind of unsure on my questions that were, in my opinion, intentionally pretty softball and they used the words "I think". It's one thing if I'm grilling you in an interview with a trick question and you're trying to think out loud about a solution. If I'm asking you to define something like a hash table though, you should really know the answer. I don't want someone to say "I don't know" because I don't want them to give up though, I'd rather see them persist and ask for hints. You don't want to confidently give an answer you really don't think is right, but you also don't want to give a sloppy answer. If you need guidance then just talk it out with the representative and let them guide you. I didn't ask a single difficult question that I didn't preface with "this is kind of hard so it's ok if you get it wrong", and I only asked them to folks that I was already impressed with. Odds are that the person at the booth isn't trying to grill you, they're just trying to figure out if you stand out among the rest.

Be Articulate

I want to say that just having the talent is enough, but it's not quite all of it. You have to be able to communicate, plain and simple. Communication is key to software development at pretty much every good company. If you're being asked a softball question, it's probably to see if you can elegantly talk about something very simple that you ought to be very comfortable with. If you can't talk about something simple, how can you help brainstorm solutions to critical operational problems with your team? You don't have to be a toastmaster (though participating in your local chapter would almost certainly help you with this), you just have to be able to articulate technical and non-technical answers in an easily understandable way. The easier it is for me to understand what you're getting at and the more efficient our time together is, the better my overall impression of you will be and the more time I'll have to take notes about how great your answers were.

Bring Questions

Bring good questions about what you're interested in working on or even questions about the general process. Don't ask stupid questions about the company that you know they can't answer. For example, a recruiter can't comment on a rumor or a recent scandal, so don't ask about it. That can actually leave a bad taste in the mouth of the recruiter and hurt their overall impressions of you. Feel free to ask questions about their experience at the company or what they do or why they still work there, just don't ask anything irrelevant to your potential future at the company.

Warm Up and Don't Get Discouraged

It's a good idea to start out by visiting a few companies you're not all that interested in just to whet your whistle and shake off any anxiety you may have. Then move on to the places at the top of your list. You don't want to launch into your top choice cold turkey.

Also, don't get discouraged too easily. If you don't get the company interested you want one semester, just try again the following one. Don't let one bad experience with one person get you down. Most companies won't blacklist you because one person didn't like you in some career fair. They'll usually give you another chance if you give them another chance.


It all boils down to this: you're at a career to sell a brand. That brand is you. Any good tech company is looking for a solid, well-rounded individual. Not someone who is a guru in one thing and nothing else, but someone who is smart, has the aptitude to learn very quickly, and can communicate effectively. Of course, some core technical knowledge is required, but past that any good tech company is looking to see if you can grow into an exceptional, rock star developer. That drives their long-term growth. No good company wants a code monkey, and no reasonable company expects you to already be a seasoned professional out of college, but they're looking for something intangible that's very hard to detect so you need to make it as easy as possible for them to find that in you.

My tips aren't a sure fire way to get you an interview in the aftermath of a career fair, but they definitely go a long way. You still have to put in the effort inside and outside the classroom to build up your talent, of course.


The Boss said...

I think the converse of being a "solid, well-rounded individual" has its merits; an individual with a higher degree of specialization can stand above the rest of his or her peers in an interview. Specializing will help you focus on what you want to do and target only the companies that will help you do that. You may have to look beyond the career fair to find the right company, but the end goal is employment, like any other market, you need a competitive advantage in the job market. It's not an easy path, either, given what you're passionate must be employable.

Elton said...

I think it was hasty for me to say that good companies don't look for specialists because they do. We were hiring for the company as a whole, so we were looking for individuals who were good engineers, not just good at X. I actually meant to get to the point that not knowing a specific language shouldn't be a deal breaker as long as you can easily learn it and understand the concepts on which it's based.

You should definitely only look for companies that do something in a field you're interested in, but what I meant is that you shouldn't only know how networks work and not know how to program at all. You should still know how to develop software even if you're better at working in low level software protocols than most people. It's ok to have a specialty, but I don't think it's so smart to know that and nothing else.