General suggestions :<p>- Make sure that the candidate has a really positive experience after the interview. That would mean being very courteous and not interrupting him when he&#x2F;she is talking, etc.<p>- When I interview candidates, I generally read up his resume and circle interesting topics&#x2F;projects he has worked on. By engaging in a technical conversation with him&#x2F;her you can gauge his ability. I despise interviewing processes which google&#x2F;Amazon follow where they just throw a bunch of programming questions irrespective of what his skill set &#x2F; role he is interviewing for.<p>Being junior, you might not be exposed to all those technologies&#x2F;terminologies in the resume, but that&#x27;s where your learning comes in! If you are interviewing a senior candidate, see if he&#x2F;she can actually explain a complex idea and distill it so that you are able to grasp it. Senior folks in the team are expected to lead&#x2F;mentor junior engineers and his&#x2F;her ability in this regard can easily be judged. Also, you can ask him&#x2F;her to explain trade offs&#x2F;design choices, etc.<p>- With respect to programming question&#x2F;design question, let the interview take its own natural course. Have a couple of back up questions just in case. My favorites are design LRU cache or something to that effect &#x2F; atoi or something similar. The problem in itself is simple, but there are a lot of layers to it. You can see the candidate thinking through the problem loudly&#x2F;arriving at a solution and improving on it. Please don&#x27;t ask questions which are hit&#x2F;miss - Eight Queens problem, etc. They are hardly useful!<p>To summarize,
- Make it a positive experience for the candidate.
- Go for his resume - engage in a tech conversation. Ask for a design diagram, explain trade offs, etc.
- Keep a couple of design&#x2F;programming back up questions just in case.<p>And have fun!