Leadership

Sun's Java certifications: Are they worth the effort?

Peter Mikhalenko provides a quick overview of Sun's Java certification offerings and shares his thoughts on how much stock he puts put into these certifications.

A TechRepublic member wrote in with a request for more information about Java certifications and for opinions about their worth. So here's a quick overview of Sun's Java certification offerings, along with my thoughts about how much stock I put into these certifications. (Hint: My two certificates have not opened any doors for me.)

Sun's Java certification track

Sun's Java certifications are designed to be focused on particular roles in the software development cycle and, therefore, are more useful than all-in-one certifications such as IBM's XML certification.

Sun currently offers eight Java certifications, which are classified by level and specialization. Most of the certifications require you to pass a multiple choice exam, but some also require you to write an essay. It is recommended to have six to twelve months of actual job experience before attempting to pass any exam.

  • Sun Certified Java Associate (SCJA): This entry-level exam certifies only knowledge of basic Java language concepts and general knowledge of Sun platforms.
  • Sun Certified Java Programmer (SCJP): At the "foundation" level, there are exams for Java 1.4 and Java 5.0. These exams certify solid knowledge of the Java language. (Note: It is not required to have SCJA to get SCJP, which makes me wonder why SCJA certification is needed at all.)
  • Sun Certified Java Developer (SCJD): Many employers may focus on this level of certification for two reasons: You need to be an SCJP (any version) before you can try to become an SCJD. Also, the SCJD requires candidates to develop a small business system according to the problem and write an essay defending the solution and explaining the design and programming decisions.
  • Sun Certified Web Component Developer (SCWCD): This exam can be of interest for Web developers who specialize in using Java technologies such as Java Server Pages (JSP) and servlets. SCJP is a prerequisite for taking this exam.
  • Sun Certified Business Component Developer (SCBCD): This certification, which consists of only one exam, is the kernel of J2EE certification -- as long as it certifies your knowledge of Enterprise Java Beans (EJB). The exam is pretty hard to pass if you do not have any Enterprise JavaBeans (EJB) project experience. SCJP is a mandatory prerequisite. This certification can be of interest to employers who use EJB for project development.
  • Sun Certified Developer for Java Web Services (SCDJWS): This certification is for Java developers who build Web services. You have to take one exam for this certification, and SCJP is a prerequisite.
  • Sun Certified Mobile Application Developer (SCMAD): This is a certification for developers of Java applications for cell phones or any other devices containing J2ME onboard. You have to take one exam for this certification, and SCJP is a prerequisite.
  • Sun Certified Enterprise Architect (SCEA): This is what the Sun certification program is all about. This certifies enterprise architects responsible for architecting and designing J2EE-compliant applications from scratch. There are no prerequisite requirements even though it is the most advanced certification. In fact, if you cannot pass any of the previously listed certifications, you will never succeed with this one. To achieve this certification, candidates must complete three steps: a multiple choice exam, a development assignment similar to SCJD (but on a much larger scale), and a final essay exam where you will defend your solution.

See the Sun Microsystems Web site for more information about Java certifications, including the cost of the exams.

Is the effort you expend worth the result?

I have two Java certificates: SCJP and SCWCD. I earned the first certification while I was student at university; my professor awarded students with vouchers for attempting to take the SCJP exam. With the second certification, Sun contacted me about its new certification program and invited me to assess my skills for free (and take the actual exam) in exchange for my feedback about the questions and about the certification itself.

I think both of my certifications are pretty much useless pieces of paper. The main reason why I got these certifications was to prove to myself that I am proficient in Java. While preparing for these exams, I learned a lot; also, since I was engaged in real production projects at that time, I immediately started applying my newfound knowledge. This is the only reason why I would recommend that Java developers pass the entry- and mid-level exams. None of my employers showed interest in looking at my certifications.

The SCEA certification, however, is a completely different story. If you peruse career sites, there are lot of vacancies for which SCEA is considered highly desirable.  Developers can only earn this certification after having a lot of experience in software architectural design and working with J2EE, i.e., with a broad range of Java technologies. SCEA is the most attractive certification for developers who are seriously thinking about becoming a software architect. I don't think the other certifications offer much value.

It's been my experience that most employers will overlook your certifications unless your resume shows that you have hands-on experience working with a particular technology. At the other end of the spectrum, I have seen examples of successful career building on the base of certifications. In my opinion, this is more a question of a particular certification program and particular holder's attitude to the certification. Most IT pros take certification exams more for self-learning than for their employer.

Do you have any Java certifications? If so, do you think they have been beneficial to your career? Share your thoughts about whether you think Sun's Java certifications are worth the effort by posting to the article discussion.

Peter V. Mikhalenko is a Sun certified professional who works for Deutsche Bank as a business consultant.

21 comments
Kavitha27
Kavitha27

Hi, What are the mandatory certifications to be cleared before SCEA. OR what is the order of certification which will help to do SCEA . Thanks Kavi

jennifer_mathew
jennifer_mathew

I have not been in a lot of projects recently where Ive had to do a lot of designing from scratch. I am seeing a lot of projects where the project is in the maintenance or upgrade mode, so there isnt a lot of scope of using a lot of the knowledge that you could gain from learning for the certifications. And I also love the "aha" feeling of finally getting something, really getting something that I get when studying the theory. So, theres definitely a case for certifications even for programmers who probably can code( who knows! maybe someday *I* will actually need all those design patterns ive been reading about!)

kpthottam
kpthottam

The question "are they worth the effort?" is subject to the kind of reward you are expecting once you get certified. 1. If you are doing it , so that you get past the initial screening for a job position . Then yes , Sun certification will definitely help. As a J2EE practice Manager in my earlier job , I have never been without having a face to face interview with any candidate who had a Sun certification. 2. If you think by having a Sun certification you will automatically get hired , sorry to disappoint you that isn't the case. The only guarantee you have with a Sun Certification is that you will never get overlooked in the initial resume screening. 3. Knowledge well here it is a mixed bag. With the SCJP , SCWCD , SCDJWS the coverage is decent. This is specially true with the web services exam. With the SCEA --Sun certified Enterprise Architect , well this certification should really be name Sun Certified Application development architect. The area of Enterprise architecture is far more vast than what is covered in this exam. For instance the exam focuses on development design patterns. Architectural patterns , Architectural frameworks are never dealt with in the exam. Architectural frameworks like TOGAF , FEAF , Zachman aren't even a bullet point in any of the section. But again my SCEA certification gets me more open position inquiries than my peers. BTW , I have the following certs : SCJP , SCWCD , SCDJWS , SCEA & CISSP.

anirbank2000
anirbank2000

I did the SCJP in 2003. Now planning to take the SCJP 1.5. Its more for my own interest, than anything else. I dont think employers look at this, they put more weightage on project experience, and rightly so. Just knowing the java language does not mean anything. It really does not prove one will be able to apply this java knowledge to a practical problem at hand. Thanks

alekro
alekro

I have SCEA. For me it was not to much interesting to pass exams with less level: I didnt see any real value. Employers may be hired me with taking into account it (and post-grad in CS), I dont know yet. Preparation to SCEA was very beneficial for structuring your architect (not just J2EE) knowledge base. I'd recommend to read materials from Sun SCEA guides even if you not going to pass it. Alex

peter_econ
peter_econ

Yep it may help you to catch the train and to be hired at an entry-level position. Good luck! __ Peter

nandavanan
nandavanan

Hey, i was about to apply for graduate studies in universities...will this certification (SCJP) help me in anyway? Maybe to get an admit, or a research assistantship or a internship while I study? Thanks.

wheatley
wheatley

I've been developing with and teaching Java since 1996. On rare occasions, someone will ask if I am certified prior to giving me an assignment. I usually respond with, "Why should I waste my time and money to take a test to prove that I can do what I've been doing for the past 10 years?" There's a big difference between saying someone is qualified to do something versus showing that they've already done it. I've worked with individuals who are "certified", but are very poor designer/developers. Expertise comes with experience and a certificate is no substitute. The only persons I can see who might benefit from certifications would be those who have no experience and are looking for an entry-level position in the industry. If they are competing against newbies who have no certifications, that might give them an edge in getting that first job. Beyond that, experience and references are going to carry far more weight in making hiring decisions than some test result. The bottom line is this: if you can't do the work, it doesn't matter what certifications you have. If you can, then your certifications don't matter.

alekro
alekro

>certification should really be name Sun >Certified Application development architect. Yes, agree, it is really more about how to architect JEE based systems. But I remember a rather common for any kind of architecture topics such as those *ilities (scala-, reliab-, maintain-,extens-, security, performance etc). >Architectural frameworks like TOGAF , FEAF , >Zachman aren't even a bullet point in any of >the section. It is (and should be) out of scope this JEE certification.

juancrossley
juancrossley

Sorry, but I must disagree with you, I think you're talking about the SCJP, if you passed the SCJD, SCBCD or SCEA you will notice the difference. these certifications required a good practical knowledge, not just the java code, not just the programming knowledge, if you'll try to pass these certifications you will need a lot of hours behind your keyword programming real applications. When I hired new people I always prefer certified and experienced people over just experienced... just because somebody else worked out to test if they really know the knowledge I need, this will let me focus on the other things. (btw, sorry if my english is not the best, I'm not an english speaker)

jwhite1202
jwhite1202

About knowledge of the Java language not being enough. Honestly I think you become sort of a human compiler studying for this test which is fine, but you still have to know all the other pieces that go along with Java (JUnit, Ant, etc.). Knowing the Java APIs is a good start, but that's it. I would say if you are considering the SCJP do it for yourself, certifications get a bad rap more often these days. And it seems only bad headhunters and newbie programmers rely heavily upon them. Too many scary stories about the genius who scored 100 percent on the certification exam, but has no clue how to develop a worthwhile solution or even package a solution and deploy it.

jwhite1202
jwhite1202

It may help you understand your programming classes better, but unless things in India are different at the university than they are in America. I'm incline to think it won't. Certification exams tend to be more about practical application and avoids a lot of the theory that a university program would require. The difference being that a good university program will prepare you for all types of technical problems to solve while a certification particularly the SCJP how to see and fix errors in Java code.

seanbeecroft
seanbeecroft

Like many other academic things, such as a Masters Degree, or a PhD, they are simply a piece of paper which says "The institution W certifies that X knows about Y to the level of Z". I think it is safe to say that we can say that Sun Microsystems certifies that X knows about Y to the level of Z. The question here is of institutional integrity.

Forum Surfer
Forum Surfer

You can't replace years of experience with a certification. The certification is only worthwhile for people with less experience. A lot of people (in general) get as many certifications as possible and then plaster them like NASCAR stickers all over their email signatures...and most often these are the people who don't actually possess the skill set to get the job done. You know the type...someone who knows a little about everything but not a whole lot about anything.

t.narayanan
t.narayanan

We can't say that doing any certification is waste and we also dont compare the practical experience with certification because if we would like to implement something, definitely we need theory knowledge(Basic things). Also, we don't know what exact things present in particular language like java,or .net etc. if a person comes initial stage of development in java means, he didn't know all the things.By use of scjp, atleast he try to know something which is present in java. so my conclusion is that, doing certification is not waste of money and time,instead it will boost up your skill level. narayanan, 91-9894422789.

cees_pieters
cees_pieters

I've known many people who dropped out of university and basically blame the university they visited for this happening to them (too 'theoretical'...duh!. it's like 'I quit playing waterpolo because I realised I don't like getting wet). They get good jobs until they reach fourty and reach the ceiling of opportunity (at least in the Netherlands). I see the same with certifications. I've been in the IT industry since 1990 with a background in electronics and computer science and know MANY colleagues who THINK they are pretty good, just as I do/did. However, the certifications I did show me that there was still a lot I could improve on, and they also updated me with current practices and standards, which can be very confusing in the IT-industry as everything gets hyped in this particular area. The SUN certification programmes are not overly expensive and they do not demand irrelevant things (like: which colour coding should you use when using netbeans or something equally goofy), and they do offer others a means of evaluating your current state of expertise. If your experience already has got what it takes to follow the exam, they are also easy to make. But people DO flunk them, and not only because of the sorry excuses you hear after the exam is finished, but mainly because they simply could not make them. I've experienced years in Dutch IT where every idiot who had at one point in their life touched a keyboard could call themselves an IT-pro and got away with it, and that background and training where considered irrelevant (consider a successful job application for surgeon on the grounds that you always watch ER...) and personally I am glad that a solid background, training and keeping up-to-date have recently become more important. It is the sign of a maturing industry. Not all certifications are good and worthwhile, but the popular ones are this for good reason. There are many good IT-professionals without certifications and bad ones who have got one, but I do think that the percentages good-bad are very different on the non-certification side and the other. keesp

kpthottam
kpthottam

You are right about the common architecture section ... I had forgotten about it . But overall we all must agree the "enterprise" part of the certification isn't accurate

zbatia
zbatia

In 2002, I wrote an article about the value of certifications (see http://www.rtek2000.com/Good/Why_we_have_to_fight_with_hypes.pdf). It is still viable. Read the article, and you'll understand who **actually** benefits from certifications. Until 2007, I disregarded any additional cert (and I have a few) but I have decided to pass the CISSP exam. 4 months of heavy studying not to mention the cost of exam (one of the most expensive!), and after all I realized one more time: certification itself does not bring the value without a very particular experience that employer wants to see in addition to your cert. Yes, the study itself is useful and expands the area of knowledge, but it stops there. An old article proves it.

alekro
alekro

>you did not noticed, did you?... I noticed and wrote comment about it, but cannot see it now. >(and you called yourself certified people). Well, we're certified as J2EE architects. As I got it, we just discuss that it if they'd include common architecture section and it was related to J2EE directly, why not to include a bit more info there related to common enterprise architecture approaches. >and will not say that you are the best in >the field... Where you see anybody in this discussion mentioned they are the best cause passed exams? >they are just testing if you have the >knowledge as an architect in the Java Field. This certification is a bit special and this is 1 thing among several I like it for. They not only assess your knowledge (1st test), but also how you think, how you find balanced solution (2nd test - assignment) and how you can prove your point of view (3rd test). >they don't thing patterns are >the solution for everything (I do) Sure. Pattern by its definition is named optimal approach to solve problem in particular context.

juancrossley
juancrossley

you did not noticed, did you?... (and you called yourself certified people)... the name Sun Certified "ENTERPRISE" Architect comes from Java "ENTERPRISE" Edition... they're certifying that you are a Java Enterprise Architect, so you can create an accurate application using J2EE servers, Why they don't include all the patterns? and all the frameworks in the market? .... do you know all the patterns in the market? even if you know all the patterns do you really know if they are right to be applied for some problems? I don't know if you know it, but Sun have a group named Blueprints, they work very hard to "approve" and test some patterns in the J2EE environment, because of that they're certainly included in the exam. The SCEA is not the best test, and will not say that you are the best in the field... they are just testing if you have the knowledge as an architect in the Java Field. Btw, I know a lot of people who worked by 20 years in technology and they don't thing patterns are the solution for everything (I do), and if you ask them to build an ENTERPRISE application (with remoting by EJBs, Secured, etc) they will be reinventing the wheel.