My work are actually offering to pay for me to go through certification (inc mandatory course) and at the moment, I can choose any of them. I have already done the OCPJP SE6. My experience in Java (mostly swing, no enterprise) is around 10 years off and on as we use C++ too. C++ server, java clients. So which one do you think I should go for.
On one hand, the OCMJD would firm up my knowledge but OCMJEA would make me learn something new. I'm not certain I'll be able to do one then the other (cost). My concern about doing OCMJEA is that I haven't dabbled with Java EE at all so should I try and do the OCP certifications first? But then my work may not offer for me to do the OCMJE? If i still is better to go for a OCP in Java EE, what order are they worth doing in based on my experience. I think that EJB will not be worth doing as we tend to use spring more, perhaps in the future we'd look to replace the C++ server side with Java based ones and maybe go towards thinner clients rather than swing based ones.
My other concern with OCMJEA is that it's Java EE 5 so it's quite dated but I guess if the fundementals haven't changed it's still worth doing. I have read some of the discussions about decline in popularity of the certification since the introduction of the mandatory courses.
I did try a few searches to see if this had been discussed before.
Firstly, as per you've mentioned, much of your experience is in Core Java and Swing - not in JEE. In that case, I would suggest not even to think about OCMJEA. Even if you think you can crack the exam, I would suggest to wait till JEE 6 version of the exam comes out. IMHO, its simply not worth the efforts and expenses to give such a big exam for outdated version of JEE.
Secondly, I would highly suggest to go for OCMJD (especially when you don't have to shed money for mandatory course - it seems that your employer would be bearing the expenses ). But again, if you have any plans to got for JEE in future, then by all means, go for EJB exam. This is because, you've already got a decade of experience in Swing. OCMJD is nothing fancy compared to that. Secondly, why to certify yourself in something you might not use in future? At your stage of experience, I think JEE certification is better option.
But again, those certifications are quite cheap - so just give it a though - if expense is the thing which is stopping you from giving OCMJD, then well, you got a chance now However, if you know the future of your project, and have any idea about core knowledge about threading is not gonna be much of a selling point, then JEE is the way to go (I'm saying this especially because OCMJD contains nothing fancy that someone with 10 years of experience has not seen in his/her career).
You only have to take one mandatory course regardless of how many certs you want take the have a mandatory course pre-requisite. (interesting isn't that.) This has two ramifications on your decision:
1) You can choose a course about architecture or UML rather than basic design (or Java development) even if taking the OCMJD.
2) If you take the OCMJD - which sounds more useful to you right now - you'll be done with the course pre-req if you ever decide to take the OCMJEA.
If your employer is willing to pay for the certification, I would opt for one with a mandatory course requirement, simply because that's the most expensive. The other ones are a lot cheaper and if needed, you could pay them yourself. That's limiting the choice between developer or enterprise architect certification. If I were you I would go for the OCMJD (first learn to walk before you start running).
Thanks for all the advice guys. Think I'm going to go for OCMJD (assuming they haven't changed their minds) and hopefully if I have some spare time start playing with java enterprise. Maybe they'll pay for them too but if not they're no where near as pricey to fund myself.
It'll now take 3 months to get it approved probably...
Didn't realise the course once attended can be used for both too. That's good news.
subject: OCMJD or OCMJEA or some of the other EE ones