I think any SCJP can start preparing for SCJD exam if he/she is dedicated considering time limit is one year. But before being an SCJD he/she has to aquire the following technical capabilities. Please add something more if you find appropriate or suggest to deduct a few from the list.
•Knowledge of Swing •Sound knowledge on either RMI or Socket Programming •Multi-Threading, Lock Management and Synchronization •File I/O •Standard Design Patterns used in the Industry •Javadoc tool •Jar Mechanism •Maintaining Platform Independence •Standard Coding Conventions and Clarity •Testing Capability •Logically express reasoning and defending own codes •A few years industry experience with Java Thank you.
Ashik Uzzaman Senior Software Engineer, TubeMogul, Emeryville, CA, USA.
Hi Ashik, I would say that these are the capabilities you will acquire when you are doing the SCJD assignment. IMHO it's not necessary to have a thorough knowledge before starting it. Doing the SCJD took me two months full time work, plus about three month basic research, thinking, planning and so on (but not full time).