Do you have the time to go through 15+ books and 30+ online articles as Java interview preparation?
This is how I used to prepare for job interviews a long while ago. This is very time consuming and not effective. This blog along with our published books strive to provide concise answers to frequently asked Java interview questions with lots of diagrams, examples, and code snippets. Preparation and practice will make you stand-out from your competition who are at the same level (freshers, intermediate, advanced, etc) or more qualified/experienced than you are. This is mainly because the majority won't bother preparing. By preparing, you are taking the road less traveled.
Preparation breeds confidence and confidence breeds success.
Preparation can help you communicate your thoughts more clearly with examples and illustrations. Preparing prior to each interview has immensely helped me fast-track my career. Even with 11+ years of hands-on experience in Java/JEE based design and development, I still brush up on the fundamentals and the 16 key areas using the career companions and the essentials prior to attending job interviews or important meetings.
Preparation has always resulted in multiple job offers and much needed job security as a contractor even in a much tougher job market. Understanding what problems are faced by the industry and what the prospective employers are looking for can make a huge difference to one's career. Being in this know how can also open more doors to take on more challenging tasks in varying capacities. This blog and books share my experience. It is quite encouraging from many personal emails and review comments as to how these materials have helped many others.
What are these 16 key areas?
- Language Fundamentals (LF)
- Specification Fundamentals (SF)
- Platform Fundamentals (PF)
- Design Considerations (DC)
- Design Patterns (DP)
- Concurrency Management (CM)
- Performance Considerations (PC)
- Memory/Resource Considerations (MC)
- Transaction Management (TM)
- Security (SE)
- Scalability (SC)
- Best Practices (BP)
- Coding (CO)
- Exception Handling (EH)
- Software Development Processes (SDP)
- Quality of Service (QoS)
Not for those who just want to cram prior to job interviews
Like many good developers who are really bad at interviews for various reasons, many job interviewers are also not good at weeding out the real talents from those who memorized the answers. These resources are not meant for quick interview success by memorizing the answers. These resources are for brushing-up and proactively applying what you learn here on the job to impress your peers and superiors. Your key focus must be to take the time to understand the concepts and the 16 key areas. Nothing beats good hands-on experience and lots of coding. That is why my books and blogs are full of code and examples.
How do these resources help you fast-track your Java career?
If you rely only on your own experience, it will take you a lot longer to get a good handle on these 16 key areas. The best way to fast-track your career is to pro-actively learn these 16 key areas from others' experience, good books and online articles, and apply what you had learned to practice. This will help you earn a reputation as a "go to person" through your contributions and achievements at work.
Why use these resources?
Standout from the candidates who are more qualified than you are
The resources provided in here are full of practical examples, diagrams, code snippets, and cross references to provide clear and concise answers to most of the very frequently asked Java interview questions. Each question in the book is tagged with one or more of the 16 key areas.
The questions and answers approach also give a different perspective to clearing up your fundamentals in Java. The answers are detailed enough to learn the fundamentals while preparing for job interviews, code review sessions and technical team meetings. Depending on your level of experience, some answers may require additional research on Google to get a better understanding.
Good caliber professionals are promoted and paid well for thinking, reasoning, solving business problems, and getting things done by drawing on their experiences and skills
- to look at the big picture.
- to pay attention to details.
- for applying the fundamentals/key areas to solve business problems.
- for complimenting their technical "know how" with good soft skills and attitude to get things done.
Should you get certified in Java?
Certifications combined with many other "know hows" can make you a better programmer. At the end of the day, it is what you know and can do makes the real difference and not what some documents declare what you know. Certified or not, you will be grilled in job interviews. In my view, favor continuous learning and hands-on experience. Learn more here Why Java certifications are alone not enough?. I never bothered getting certified. If it works for you, and employers are specifically asking for in the job advertisements, then go for it.
How do you get your first break with Java?
In summary, the best way for people to get their first break with Java is to:
- Learn the core concepts and work on a Java programming project. Start a little Java-based project of your own.
- Participate in an open-source project - even if it's just submitting a little patch to see how things fit together.
- Update your resume based on the experience and skills you acquired in the above steps to get a break by acquiring an entry level job, even volunteer work should help you open more doors. More on this here -- How to get the much needed experience in Java?
Note: Even though the certifications can be useful, don't wait until you've passed certifications before trying to get work. Recruiters don't hire just because someone has a certification. Certified or not, your Java knowledge and experience will be tested at job interviews.
What Java questions are asked in job interviews?
In career forums, many ask for Java interview questions for 2 year experience, 4 year experience, etc. My advise is that if you brush up on the Java/JEE basics and the 16 key areas, you should be fine. You have no control over what questions are going to be asked. Don't get overwhelmed by the number of questions and answers covered in my books and here. The interviews are not technical contests to see who gets most questions right. It is all about convincing your prospective employer that you can get the job done. The open-ended questions give you a great opportunity to sell your strengths in these 16 key areas along with your soft skills, and personal attributes to make a good impression.
Having said this, there are some very basic "must know" Java interview questions that can make or break the deal. These "must know" Java interview questions are covered in my books (tagged as FAQs) and blog entries along with many open-ended questions and answers. You hold the key to your Java career success, and hope this blog assists in your quest to succeed in your career.
What gives the real job security?
There is no such thing as real job security in IT. Keeping your knowledge and skills sharp and current along with good networking, marketing, and soft skills is the best way to achieve real job security. The jobs offered on a contract basis is on the rise, and can be more rewarding for some.
"The people who win are not necessarily the smartest people, but they are the people who are able to sustain drive, commitment, passion and engagement" -- by David Maiser
Is Java still doing well?
Do you have a question?
If you have any specific question or would like to provide any constructive criticisms, then contact me via email email@example.com. Hope this blog and books help you take the road less traveled.