Preparation for SCJP 6: My Journey

In November, 2009 I passed SCJP-6 with the score 96% (58 correct answers of 60). That is quite high result, so being inspired with the achievement I have thought about unveiling my "secret of success":

1. Get a good book for your studies. Definetely, it must be "SCJP Sun Certified Programmer for Java 6 Exam 310-065" by Katherine Sierra and Bert Bates (K&B). Other books for preparation are:
2. Make a plan for your studies unless you are a very disciplined programmer. Otherwise it's not easy to follow the "mind-plan". For reaching high score, expect to consume 20-40 full-days for studies (depending on your experience with Java) or 1-3 months for part-time studies (depending on your skills too).
I recognized that using a spreadsheet is a good way for planning. My spreadsheet contained the following fields:

SCJP6 preparation plan spreadsheet

The column chapter represents a chapter or sub-chapter of the book or any other activity. Deadline is for pre-defined deadline, which motivates to be quick enough and avoid "lazy days". Date really completed stands for real date when chapter/task is finished. Level of skills marks the level of skills acquired. Red is for "poor", yellow is for "average", green is for "perfect/almost perfect". Things to re-read is a place for marking notes what topics/pages must be read again. And two other columns were just for my notes and ideas for my blog.

3. Join the JavaRanch community or bookmark this page at least. It has a good forum for certification questions. There is also a place where certified guys and girls share their ideas how to pass exam with the best score.

5. Look around for mock tests. Two of them are included in the CD attached to the book. One bonus exam can be found following instructions in the book. SUN gives a demo-exam too. However, JavaRanch lists much more.

6. Relax and start learning. Keep up your shape each day. Take a pencil and underline all unclear places or places that raise questions. Also underline all essential things that you don't know already very well. Write down your notes, ideas, doubts, insights etc. directly on the book. Do not underline very well known or nonessential things (i.e. jokes, sarcasm or names of chapters). You will see this method helpful when reading the book for the next time. Also: always have a simple text editor (For Windows I recommend Notepad++; avoid using IDEs with autocomplete and autobuild options like Eclipse orNetbeans), JDK 6 and write many small classes that support your thoughts or test the material. Two benefits come from that: first, you will master the material much better, especially if you are "kinesthetic-learner", second, you will start noticing compile-time errors. Exam contains many questions where the student needs to "compute" correct result of the program OR mark the answer "compilation fails". So do not be lazy and wiggle your fingers all the time.

7. Somewhere in the middle of your studies, buy the exam's voucher (more information at Sun's website, also try to contact your local Prometric site. They also can help you to get the voucher [UPDATED: since acquisition of SUN, ORACLE continues testing via PearsonVue]). It is usually valid for one year after purchase and it will motivate you to reach the goal.

OK, now let's go into the details. You have the book (or books), internet connection, computer with Notepad++ and JDK 6, a box full of coffee or tea and much of enthusiasm. Keep reading my experience.

After initial review of Table of Contents of the book, I decided to read the chapters in the following order (I saw it easier according my background):
1 Declarations and Access Control
2 Object Orientation
4 Operators
3 Assignments
10 Development
8 Inner Classes
9 Threads
5 Flow Control, Exceptions, and Assertions
6 Strings, I/O, Formatting, and Parsing
7 Generics and Collections

You can use any other order that looks reasonably, i.e. do not put basic topics like Assignments or Operators to the end.
Some chapters contain several "topics" (i.e. chapter 5 consists of "Flow control", "Exceptions" and "Assertions") so splitting the chapter into several smalled pieces and moving them all into the plan is a good idea.
How to build up the schedule? I used to study few hours each day and more hours at weekends (part-time studies), so you have to adjust the times according your study intensity. I suggest to use several book reading rounds approach. Allocate about a month for the first round. Use one or few days for short chapter and dedicate roughly speaking a week for each long chapter (5, 6, 7).
The round means completing the book once. Two rounds mean that student read the book twice etc. A round consists of performing the following job for each of the chapters:
  • read a chapter
  • marknotes, essential places, hard things, things to remember
  • code a lot
  • read "Chapter summary"
  • read "Two minutes drill"
  • do exercises at the end of the chapter immediatelly. Do them carefully because that will help you getting used to pay attention to details (and you must be sharp-eyed as the exam will definitely try to catch you). Think about the problem, syntax, API, solutions, alternative solutions etc. instead of marking the answer mechanically. Try to explain the problem and why the chosen answer would solve it
  • check the answers, read explanations of incorrect (and correct) answers
  • evaluate your skills and progress. Type the results into the spreadsheet
After the first round I recommend to retake the exercises all at once. That will take several hours or more but it will help to avoid "short-memory" effect when you can remember facts for some short time immediatelly after accepting the material but leads to a "lost-memory" later. Find and complete simple mock tests (Google/Javaranch will help you to find mocks).
Then prepare for the second round. Everything remains the same. The only difference -- skip 100% obvious things while reading the book. And after finishing the round, read all the "chapter summaries" and "two-minutes drills" at once. Then take the exercises. Also you can take one of the exams in the CD attached to the book. You can complete Sun's online test exam. Expect to collect ~90% or more, but pay attention to details.
Third round: remains the same as the first and the second, but skip all the clear content, and concentrate on hard things. After the round, do the second and the third mock tests on CD.
The most important thing: don't overestimate your skills. Java is a tricky language with lots of pitfalls. Expect to get many of them during the real exam.
A note regarding the ExamLab exams: I did "open book" exams because the label "CORRECT/INCORRECT" appears straight after answering the question. In case of failure it's possible to get back and read the question again with noticing what has been wrong. These exams have few mistakes, but you will find them described somewhere in Javaranch.

There is one more thing: open the Java API documentation and read about java.lang.System class. Try to notice essential methods. You can get a question regarding them despite those described in K&B book.

That is all about preparation. Now, how to take the real exam? First, read the initial chapter of K&B. It contains some invaluable information regarding the exam. Pay attention to these:
  • Drag'n'Drop questions lose their answer if you want to recheck them later. Mark their numbers on the board/paper (depends what you get for the exam, I got several plastic cards and a felt-tip, but that's very bad as it has big tip)
  • Take some water if you are allowed to bring it in -- you will get thirsty during the exam
  • There are easy and hard questions, so "answer easy questions, mark hard questions" strategy is reasonable
  • Get a good sleep before as you will need fresh head. Necessarily.
My advice: do not be lazy and before leaving the exam room CAREFULLY CHECK your exam answers. Do that again and again as much as you have time left. Do not skip "obvious" and "perfectly clear" questions. You are fighting for the perfect result, right? I made ~7 mistakes initially, and after several reviews fixed them one by one. However, two still left despite my clear understanding of the material. Learn from that.
And, of course, feel free to put your experience/questions/feedback right in the Comments page.

Since 1 September, 2012 this pages has been migrated from the Google Blogger platform (previous address to the Google Sites ( Random text formatting issues can occur.

You can donate for a cup of tea or so, if you find the information below useful.

Donate using PayPal

Share this page: