Hi all,
After taking the
test in April, I finally got news of my certification today!
Score was 378/400, with the following scores on the sections:
General Considerations: 81 out of 100
Documentation: 70 out of 70
OOD: 30 out of 30
GUI: 37 out of 40
Locking: 80 out of 80
Data Store: 40 out of 40
Network Server: 40 out of 40
Total: 378 out of 400
So it seems I mostly lost points on "general considerations". If anyone has any idea what that might have been, I'd like to know.
Reason it took them 4 months instead of the promised time (can't even remember how few weeks they promised now), is that apparently, my written test was uploaded using a different ID than the one used to upload the assignment. And therefore they never realized that they had to start grading... In the end they merged the two accounts and sorted it out. But I have no idea how this has happened, therefore I suppose it can happen to anyone and therefore I highly recommend sending an e-mail to who2contact after uploading the assignment and a few days after taking the test, to check if everything has been received ok.
I see that everyone posting results gets the question how they prepared. I used the Monkhouse book and Heads Up Design
Patterns, which I think is a great book that every developer should read, but whether you like the style is very personal, of course.
With respect to design decisions, my two main points are:
- Especially for the GUI: Keep it simple. If it's not in the requirements, don't do it, because you can only lose. When in doubt, do as Mr. Monkhouse says.
- With respect to locking: When adding synchronization or a lock to a method, check if you can explain precisely why it is needed. After finishing my first implementation, I found several problems by writing a test program (actually copying it from one of these forums), which runs e.g. 100 threads simultaneously, 50 of them adding records, 50 of them randomly removing records, and see if you get any deadlocks, crashes, etc.
One example for the GUI: My assignment specified that it should be possible to search records based on name and city, by exact match. That is, if the name is "Big Moose Inc", then searching for "Big Moose" or "big moose inc" shouldn't return any results... I documented that this makes it hard to use, but it's what the requirements says. Moreover, if more complicated matching is required, the requirements should say how this should work, rather than the developer inventing something by himself.
I obviously didn't lose any points on this in the GUI section, but maybe that's where I lost points under "general considerations". It's a pity that Sun doesn't say why they subtract points.
In any case, celebrations! And good to luck to all of you who are still in the process.
Cheers-