I have been through a number of interviews now in my career and I have fared pretty well in many of them. While going through the interviews, I have created a mental list of what has worked well and what made a good impression on those conducting the interview. I have also made note of what impresses me (or turns me off) when I am the one conducting an interview.
Here are my top tips for success during your .NET developer interview.
Have an Honest Resume A successful interview starts with your resume. If you exaggerate or flat out lie about your experience and/or skills you are setting yourself up for failure. The truth is always the best policy when looking for a new job (and in life in general.) If you don't have the skills that the hiring company is looking for, then it isn't a good match. If they know your honest strengths & weaknesses before they hire you, there won't be a rude awakening when you start working and can't perform as expected.
If you look at your resume and realize that your skills aren't very attractive, then it is time to update your skills - not throw every tech buzzword you can think of into your resume.
On the flip side of this, don't under-value yourself on your resume either. Make sure to highlight what you are good at and confidently state your level of expertise in an area. If you are unsure of what level you are in an area, compare your skills to those of your co-workers & peers. This is usually a good way to determine your level of expertise in a given area.
ConfidenceEasier said than done, but you need to go into an interview with confidence. If you followed my first point and have an honest resume, this part will come a lot easier.
If you doubt your abilities & what you can accomplish it will come across in the interview. If you need to, rehearse answers to common questions that you might face, talk through your past projects & experience aloud (it might seem strange, but it will help you become more comfortable) and make note of your strengths before entering the interview. The more preparation you do, the more comfortable you will be during the interview.
There is a fine line between being confident & being boastful, and you want to stay on the confident side. Don't go into the interview thinking that you are the biggest, baddest developer the company has ever seen - there will always be someone better out there. Valuable team players recognize their need for others on the team.
Living Examples of Your WorkIf you want to set yourself apart from other candidates you need to show your prospective employer why they should hire you over Joe Schmoe #2. One way to do this is give your prospective employer the ability to view an example of your work first hand. Interviews are great, but nothing is as helpful as being able to review actual code that a potential employee has engineered.
If you are a website developer, figure out something that interests you and develop it in your free time. Create a fan site for your hobby, a site about your family or even develop your own application as a side business.
Create a blog. Whether or not you are a website developer, you can have a technical blog that showcases your interests, provides code samples & also demonstrates your communication skills & ability to document your work.
PreparationDo your homework before you go to the interview. Read up about the company you are interviewing with, search professional social networking sites for information on the people interviewing you, prepare answers for technical questions as well as behavioral questions. If you go into the interview well prepared you will be more confident & comfortable in your answers and your prospective employer will notice the polish.
Ask Important Questions
As part of your preparation, write down questions to ask your prospective employer. Figure out what makes you happy as a developer: Do you like chaotic programming? Are you more structured? Do you want engineering vs. get 'er done development? Do you care about having different environments to work in (Dev, Test, Prod)? Is a QA team important to you? Based on the working conditions that make you enjoy development, come up with a set of questions to ask your prospective employer to learn more about how they approach software development.
- What size is the company?
- What size is the development team?
- Are there dedicated resources for server administration, database administration, QA, etc.?
- Are there training opportunities available? Are there funds available for off site training classes?
- Could you describe the process for an average project? (i.e. sales, marketing, deadlines, requirements, etc.)
- Are there any development best practices in place?
- Do you adhere to a specific SDLC?
Dress Like a Professional I know this is a big thing to ask for most computer geeks, but dress professionally. Early in my career one of the executives at a company I worked for told me this : "Dressing professionally is one of the easiest things you can do to make a big impact on how people view you." This has stuck with me and is something that I have followed throughout my career. You are applying for a professional level position and you should dress the part. This is an easy thing to do and it is just silly to give a bad first impression by looking like a slob during your interview.
Buy a nice suit & tie. If you can't coordinate colors to save your life, then find a cute girl working in the suit department at the store of your choice and have her select an appropriate business suit, tie & shirt. Comb your hair, shave & polish up your look.
After you get hired you can dress according to company policy for developers, but make a professional first impression.
Hope that helps!