Open-ended Interview Questions and Answers on:
(click on the headings highlighted in yellow)
Ensuring code qualityOpen-ended interview questions can tell a lot about a candidate. Code quality starts when you interview someone. You need the right people with the right skills and most importantly the right attitude. If you don't know how to achieve good code quality or don't care about it then your chances of job interview success will be very slim if not zero. | ||
Software ArchitecturesGood calibre candidates have the ability to look at the big picture and drill down into details. The line between software development and software architecture is a tricky one. Regardless of you are an architect, developer, or both, one needs to have a good understanding of the overall software architecture. | ||
Using the right tools to get the right job doneIn today's enterprise Java development, you will use plethora of tools to make your life easier and more productive. The open-ended questions described below are not to make the Hire/No Hire decision, but to judge your seniority.. | ||
Code quality with browser automation tool SeleniumSelenium + WebDriver allows you to reenact web user experience and run it as an automated unit test using JUnit or TestNG. Selenium is a very popular functional testing framework. It allows web developers and QA professionals to automatically test how an application functions on multiple browsers, such as Firefox, Internet Explorer and Chrome and across operating systems, such as different versions of Windows and Mac OS. | ||
Performance testing with JMeterPerformance testing is an important process of any software development. Even though these are not common interview questions for Java developers, you can bring it up yourself to an open-ended question like -- How did you go about fixing a performance issue? | ||
Unit testing with mock objectsUnit testing is widely accepted as a "best practice" for software development. When you write an object, you must also provide an automated test class containing methods by calling its various public methods with various parameters and making sure that the values returned are appropriate. | ||
Build ToolsBuild tools like Ant, Maven, Gradle, etc have their own pros and cons. Questions like What Java build tools are you experienced with? Which tool will you choose? and In your experience, what are some of the challenges you faced with maven, and how do you over come them? can tell a lot about your experience. There are no right or wrong answers, but experienced professionals do have an opinion based on their past experiences. | ||
Keystores and truststoresYou generally need a truststore that points to a file containing trusted certificates, no matter whether you are implementing the server or the client side. | ||
Working with properties filesOne great advantage of property files is that they let you change your application's configuration without recompilation. | ||
Java application performanceI have never been in a project or organization that is yet to have any performance or scalability issues. It is a safe bet to talk up your achievements in fixing performance or resource leak issues in job interviews. It is a pet subject of many job interviewers and if you are in an interview with an organization that is facing performance issue, you will be quizzed on it. | ||
Java memory leaks and profilingHow will you create a memory leak in Java? How would you go about profiling your Java application for memory leaks? What tools would you use? |
| |
Asynchronous processingThe scenario based questions are very popular with the job interviewers, and some scenario based questions are related to decoupling and asynchronous (aka non-blocking) processing. The interviewer will give you a scenario like producing an aggregate report, designing a trading system, or building an application that requires heavy auditing, logging or custom metrics gathering. Feel free to ask the right questions as the interviewer will be more interested in how you think and approach a problem rather than you solve it instantly or not. |
| |
Eclipse IDE TipsIDEs make you more productive. Experienced professionals do have tips as to short-keys to quickly navigate through Java and configuration files and debugging tips to get to the root cause of a problem. |
|
