I thought about taking SCJD for over a year, but delayed it several times until i was alerted when i noticed that there will be an mandatory course requirement from august 1st on
I was somewhat scared if i can finish the assingment before this date, but decided i have to take the risk, so I bought the assignment on May 24 - and finished on May 29 (after 5 days) and took essay on May 31.
As you can see on lines of code i decided to take a minimalistic approach: do exactlty what the instructions say and reduce usage of additional functionaltity to a manageable degree.
That was because of the deadline augist 1st and i had to manage my fulltime-job in parallel which you cant do for a long time or you will burn-out. And additionally: In the real world you are paid for getting things done, as fast and cheap as possible, and this certification is all about showing you are an experienced java developer. My daily experience is that most of this additional functionality is used very sparse but often causes bugs or increases complexity.
Examples of additional code i coded for this assignment are the key listeners on textfields which enable <enter>-enabled searching and usage of convience Exceptions, so no big deals.
Some reference points:
After 10 hours there was a working prototype without networking and missing most part of javadoc, all of userdoc and some text in choices.txt
Adding RMI was done in 5-6 hours including making some config/startup dialogs for host, port and persisting as preferences on disk.
Last 10 working hours i spend on final polish, mostly documentation and some bugfixes. (VERY boring...)
So that is a total of 25 hours.
I did never use RMI before and i had mostly theoretical knowledge of locking/synchronizing/multithreading (i.e. never used wait/notify before in a project).
But i was very experienced in projects with this size and constraints (using legacy code/data, clumsy and incomplete requirements, fat swing-client, usage of layers and architecture/design patterns) which helped me A LOT.
Knowledge of the individual technologies is not cruical but you have to know how to "manage" such a project so you get it done without loosing too much time or getting frustrated.
Conclusion: I am somewhat disappointed about this certification because i have not learned much from it which was my primary goal
But i assume it is a great thing for many developers that are not already familar with managing such a project from end-to-end without help.
Congrats! I never thought that this could take 5 days, especially taking into account the javadocs and stuff... Especially taking into account all the wisdom I read from the preparation book on how the code and comments and other things will be assessed... Well now I'm really reluctant to spend another 2k $ on 1 cert. Would rather take lots of cheaper ones, related to the server side.
Congrats once again!