Best Interview Questions to Ask in Your IT Interview

Still not sure what questions to ask during IT interview? There are some great examples of good questions to ask during a job interview. As you know an interview is a two-way street. Your potential employer is asking you questions to figure out you and your skills. In return, the interviewee need to prepare questions to ask your potential employer about the position, team, and the company in order to be sure that this is the right job for you. Do not think that your opportunity to ask questions usually comes at the end of the interview. Demonstrate your interest in the position, your drive to excel in the role, and the fact that you've done some homework during an interview.

  • Establish a clear list of expectations for the position for which you are interviewing. Estimate whether you feel that expectations are excessive. It will also help you negotiate a higher salary should they be excessive.
  • Figure out the company's recent history. If the company just underwent some big changes, find out what was changed, why it was changed, how it was changed, and what the desired effect was on the company performance.
  • Check out site before you go in for an interview. It can give you some insight into company internals and interview process.
  • Try to find and speak with the employees of the company at conferences and meetups. This is very important. You may learn things that are not mentioned during the interview. This can also help you gain insight into other parts of the company.
  • During an interview ask the employees to tell you something they do not like about their current company, team or position. How employees answer this question will tell you a lot about the company.
  • If the company has public code on GitHub or Bitbucket, look it over. Every company has their own engineering process. When a company publishes source code to public, they are usually proud of it. This is one of the best ways to measure the engineering process within. Find something technical to criticize and politely notice it during the interview. Dealing with criticism is an important part of technical jobs. Being mature when accepting both valid and invalid criticism is very critical. Additionally, you should measure the response. If you do not like the response or the way that they deal with the criticism, go away.
  • Figure out very specific information about the companies technology stack. Reverse interview the employees about the work they do and the technology they use every day. Feel free to ask them about every detail, no matter how insignificant it may seem to you. This will show you at least three things: If they make right technical decisions; How well they understand the stack that they are using; The technical debt that you will be dealing with.
  • Reach out to former employees and ask them about their experience Be polite and don't be pushy. Let them know you are considering joining company and you would like to hear about their experiences at company. Their insight can provide invaluable information on whether or not you should join company.

Any other IT interview questions?

Java software developer resume

We recently went through about 15 resumes for Java software developer position in our company None of them told us anything about how well the candidate can develop software.

Here is what we noticed:

Almost all Java software developers resumes with 3 year experience list as many technologies as possible starting from Microsoft Office, they also list a bunch of tools (e.g. JIRA, Tomcat, MySQL, JDBC, JSON, Hibernate, Ajax, EJB, JSP. So far it doesn’t tell anything about how well they can develop software.

All software developer candidates string together a bunch of test buzzwords. For example, extensive knowledge of object oriented analysis & design with experience in full software development life cycle (SDLC) or extensive experience in developing web applications using Core Java, Servlets, JSP, JDBC, XML and HTML. I’m still not sure what do you mean by SDLC, it may change from company to company or why you choose JSP while crafting those web applications.

Perhaps we are just not good reader between the lines and determining which Java developer candidates would thrive in our company. Sometimes I think that candidate would have probably gotten an instant software developer interview if they had included any of these:

  • My approach to software development is as follows …
  • I enjoy software development because ...
  • I recommend these top Agile books because ..
  • I choose Java vs Python because ...

Anyway we will interview a few Java developers with 3 year experience tomorrow and we will ask all these as an interview questions.

IT resume buzzwords

Rephrasing Tolstoy's opening to Anna Karenina, every recruiter may say - best resumes are all alike; every bad resume is bad in its own way. One of the surefire ways to write a bad resume is to include every single IT buzzword for which IT professional can claim proficiency. It applies to both technical and people skills. For example, almost every resume use "Attention to detail" buzzword, but while using this term make sure that there are absolutely no spelling, punctuation or grammatical errors in your resume. It may cost you a job interview. Another example is "excellent communication skills", if you have amazing communication skills they should glare through in the quality of your resume.
Let's go back to the technical skills. As we all know the resumes usually go through automated scans and it is really tempting to include in the software developer resume something like
  • J2EE Technologies JSP, Servlets, EJB, Java Beans, JDBC, JNDI, JMS
  • J2EE Frameworks Model View Controller (MVC), Struts
  • Languages Java 1.4, SQL, PL/SQL
  • Operating Systems Windows, UNIX, LINUX
  • Web/Application Servers Oracle App Server, Tomcat, iPlanet, Jboss, Weblogic
  • Web Technologies HTML, XML, DHTML, XHTML, Java Script, AJAX
  • Tools and IDEs Toad, RPM (project Management), Eclipse, Flex Builder
  • Databases Oracle9i, MySQL, Informix, DB2
  • Version Control PVCS, SCME (Version of Sublime), Perforce
  • Domain Knowledge Healthcare, Telecom, Finance
  • Cloud Env Amazon AWS, Google App Engine, Windows Azure, CloudShare, Eucalyptus
  • Hypervisors VMWare Fusion, Oracle VirtualBox, OpenStack, Xen

  • Functional Business Requirements Analysis, Gap Analysis, Creating design document, Sharing Unit Test Plan, Code Review, Uploading Status report and Deployment of Bug fixes
  • Programming Languages and Frameworks Java, J2ee, Struts 2.0,Spring 2.5, Hibernate
  • Web Technologies Ext JS 3.0, EXTJS 4.0, JQuery 1.7,JSP, JDBC ,JNDI, Java Mail , XHTML, HTML, JavaScript, Hibernate, AJAX, DOJO, Json, Servlets, CSS, J2ee design patterns, XML, Log4j appenders, Ant scripts,
  • Web and Application Servers Apache 2.2, Jboss 4.2.2, BEA Weblogic 7.0, WSAD 6.1
  • Databases Oracle 9i/10g(SQL/PL/SQL), MySQL 5.0
  • Version Control Tool Microsoft VSS, RSA Clear Case, CVS
  • Performance Testing Tool(QA) Mercury Load Runner
  • Security ACEGI Security for Spring.
  • Build Tools Maven.

There are obviously no story telling the recruiter why and how software developer used the technologies mentioned above. Another and much bigger problem is the list by itself. Do you really want to work with Java 1.4 or BEA Weblogic 7.0 with in 2012? Why do you spell J2EE as J2ee, ANT as Ant? This is great that you have Microsoft Visual SourceSafe, but Microsoft will retire it from mainstream support next month. I am just trying to tell that I’m not getting what both these software developers are looking for and won't follow up with an interview, as I don't feel I can trust their resumes.

IT Interview Brain Teasers Puzzles Riddles

Friend of mine got this puzzle at a job interview for Java developer position:
You are standing outside a closed door. On the other side of the door is a room that has three light bulbs in it. The room is completely sealed off from the outside. It has no windows and nothing can get in or out except through the door. On the outside of the room there are three light switches that control each of the respective light bulbs on the other side of the door.

How would you identify which switch corresponds to which light bulb, if you are only allowed one to enter the room only once?
He became very upset and instead of answering on interview puzzle decided to finish the interview with the company. He explained his decision to me in a following way:
It's one thing to ask an open-ended technical question that lends itself to straightforward answers like, "What are some things you could do to minimize the need for garbage collection?". It's quite another to subject the interviewee to interview puzzles.

My advice to job-hunters: Don't hire the employer who subjects you to such nonsense.

When I say "don't hire the employer," I'm referring to the fact that a job interview is a two-way process. The employer is interviewing the prospective employee, but the prospective employee is also interviewing the employer. Each is hiring the other. Both actors should be asking reasonable questions. Both should be engaged in meaningful conversation. Meaningless puzzles and riddles are out-of-band.

Reject a brain teaser by asking if you can have a more concrete, job-related question. Ask if there's perhaps a difficult problem currently receiving attention in the department you'd be working in. Ask if you can take a crack at that problem, or something just like it.

If you're lucky (and if the interviewer is anywhere near as smart as he or she thinks he/she is), the interviewer will pick up on the fact that you're a serious, pragmatic individual with domain expertise and intelligence, who is anxious to apply hard-won knowledge to real-world problems. You're not a game-show contestant, in other words.

A really stubborn, inflexible interviewer will stick to the puzzle strategy and defend it by saying something like "I don't really care if you get the question right, I just want to see how you think." Which is, of course, ludicrous. The truth is, a candidate who immediately gets the riddle "right" will always impress this kind of interviewer far more than someone who doesn't. That's the whole point of riddles. If a person really wanted to "see how you think," wouldn't it take getting to know you a little bit? Wouldn't it mean engaging you in two-way conversation about something meaningful?

Ask yourself: Do you want to work for the kind of hiring manager or organization that sees its new hires as successful game-show contestants?

The right thing to do if you're an interviewer who wants to see how a candidate "thinks" (or "reasons" or "problem-solves") is to ask open-ended questions that are both job-related, and call for domain expertise.

If you're hiring a Java programmer, by all means ask an open-ended question like "What would you do if an application is failing because of OutOfMemoryErrors?" This could lead to discussions around a whole host of issues relating to checked and unchecked exceptions, memory leaks, garbage collection, design patterns, good coding practices, debugging strategies, etc. Within a few minutes, you should know a lot more about the applicant's qualifications than whether or not he or she bought this year's common job interview puzzles book before coming to the interview.

Let's be clear. There's absolutely no need, ever, to subject an interviewee to questions for which there's a "trick answer." The hiring process isn't about tricks and games. Is it?

If you're a job candidate and you feel an interview is going in an inappropriate direction, it's up to you to speak out. Don't forget, you're doing some interviewing here, too. Ask politely if you can have another question. If the interviewer sticks with riddles and says "I just want to see how you think," you're dealing with a certain kind of person (colloquially known as a jackass), so dumb it down and (politely) ask the interviewer if you can have another question, job-related, that will allow you to demonstrate how you think. You may even have to suggest possible questions yourself, if the interviewer is a bit thick in the head.
What do you think about my friend’s decision to walked out of an IT interview, because the interviewer started to asked puzzles and brainteasers?

Related books

  1. The Google Resume: How to Prepare for a Career and Land a Job at Apple, Microsoft, Google, or any Top Tech Company
  2. Tricky Interview Questions, Riddles, Puzzles, and Other Interviewing Techniques

How To Deal With Bad Interviews

Bad interview questions and bad interviewers - how would you deal with them? In an ideal world, all job interviews for Java Developer or QA Tester positions would be conducted by managers, business analysts, developers and testers who are skilled at asking relevant questions and ensuring that candidates for software engineer role has enough experience to fit the position, the company, and the culture. The interviewers may ask stupid and bizarre interview questions, but regardless of whether you hate them or not, you have to provide the proper answer. For example, one of my teammates spends more than half of the interview asking a common interview puzzles. Do you think he test the ability of the interviewees to figure out how to move mount Fuji? No way, the interviewer is looking for Java Developer who does not exhibit frustrations or a negative attitude in an interview. We would rather hire less experienced developer, than the developer who provides succinct answers on all Java interview questions, but roll his eyes and exhibit self-righteous anger during an interview. You have to remember there are no bad interview questions, there are only bad interview answers. Use all interview questions as the opportunity to learn how the company operates before you have accepted a job offer.