Sunday, December 20, 2009

I am Sun Certified Business Component Developer!

I am very happy to announce that I passed Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5 (CX-310-091) exam with an astounding score of 100%!

The exam turned out to be easier than I expected (that is somewhat reflected by my score :D). I was also surprised by the fact that there were no drag-and-drop questions — the exam page mentions about them. Maybe the questions are randomized without taking the type into account or I simply did it so automatically that I didn't even noticed.

While preparing to the exam, I answered a fair amount of questions from JavaBlackBelt EJB section and the ones provided as a demo by various exam simulators, and I got the impression that the exam will test my knowledge of both specifications rather thoroughly. I've expected questions regarding e.g. declarative security in conjunction with both inheritance and XML descriptors or some twisted JPQL queries. That wasn't the case. Actually, of 61 questions about six were somewhat tricky and involved really good understanding of the subtleties. There were also 4 or 5 that were IMHO ambiguously formulated, provided additional, unnecessary details in the statements or were so obvious and unclear at the same moment that I sit there ruminating where is the catch. The majority of the questions, which is far than sufficient to pass the exam, were written really good and tested in scenario-based fashion the knowledge that I find absolutely compulsory for the developer to have.

It goes like this: think you know what each transaction attribute does? Show you understand the reason behind their creation, by choosing the most appropriate one for a given real-world scenario. This is what you are doing on the job and also my way of learning. I find it a real leap in the terms of exam quality, comparing to Sun Certified Java Programmer one. I'm not saying I know the way to construct a better exam for this level, but the problems from SCJP seemed very artificial to me. I felt like reading code of a guy that should be sentenced for writing it that way, while being in some sort of captivity myself, because I haven't got even a compiler, not to mention some code editor with syntax highlighting. That's a nightmare, not an exam.

I heard that new SCJP exam (called SCJP+ as far as I remember) is designed as a set of short programming tasks involving writing a real code. This problem-solving approach is in my opinion the best way to build the exams if we want Sun's certification to be highly valued in the market.

My certification is already outdated as the Java EE 6 came out last week :). Put the (probable) two years adoption period aside, there is something to worry about — as depicted on this page, the future SCBCD exam is to be split into EJB and JPA specific ones. While I find this move very rational, I am afraid that it will mean that the certification fee will double. I wish I were wrong.

To sum up, I feel that I've learnt pretty much about Java EE 5 through my preparation for the exam and feel really satisfied, since that was the point of this whole effort. I'm now pretty confident of the platform's strong and weak points. The broader knowledge of the shortcomings make me lean (language joke, yeah) toward Spring 3.0, as Java EE 6 doesn't seem to resolve them. I'll write more as soon as I'll get a good grasp of both.