Friday, November 9, 2007

Java Certification

Java Certification

Who, What, When, Where, Why and How

By David L. Hecksel and Marcus Green

Have you been following the job market? Demand for IT professionals is at an all-time high. According to the Information Technology Association of America, we are part of an industry with over 10 million IT jobs. The industry will generate a demand for an additional 1.6 million jobs this year. Java technologists are taking an ever-increasing share of the rapidly growing IT job market. Think about that-not only is there new demand for Java programming and architects from the fast-paced growth of the industry, but Java is taking market share away from existing programming language technologies, such as Cobol, Visual Basic, C, System/390 Assembler and SmallTalk.

This article is written for those who are already in the information technology (IT) field and looking to enhance their careers, as well as those who are considering transitioning their careers into IT. We will help answer questions such as:

Should you get certified?

What are the benefits?

What are some of the resources available to help get certified?

What is the exam like?

We conclude by examining the future of Java technology and certification and introducing you to the Java Certification Initiative for Enterprise Development.

The Industry and Java

Demand for Java programming skills is at an all-time high. Why has the demand grown so quickly over the past 12-18 months? In a recent IDC study, 68 percent of new applications being written inside the Fortune 500 are using Java as their primary language for application development. What does that mean for you? More, a lot more, demand for Java programming positions.

Why are so many companies choosing Java? Here are a few of the reasons:

Java technology has successfully exited the early adopter phase and is entering mainstream adoption. There are credible success stories that provide compelling competitive advantages for firms adopting Java technology (shorter time to market, simultaneous delivery on multiple platforms and built-in language features that enable companies to compete and deliver solutions in Internet time). At JavaOne in 1998, Scott McNealy stated, "Instead of having to justify why Java should be used inside a project, the justification should be why Java should not be used." This change in thinking has come to pass among the business and technical leaders in the IT industry-technology leaders and decision makers are assuming Java first and choosing an alternative language only if there are particular requirements that favor an alternative-technology platform.

The Java 2 platform offers stability and a robust tool set by an ever increasing number of software vendors. Is the tool set mature yet? No, but think back two years ago and look at today's offerings.

Companies are shifting to Internet and Web-centric applictions, with Java being the de-facto language of the 'Net. Countless number of existing (legacy) applications are being "Webified," while other companies (Charles Schwab, Home Depot, Broad-vision, Macromedia) are building Internet-centric, server-side Java applications from the ground up. If an application solution cannot be accessed from the Internet, or cannot share data with other applications on the Internet, the application is tagged as legacy and having a limited viable lifespan. The phrase "Webtone" or "Always online" captures the underlying direction and strategy of information technology and consumer devices as the first decade in the 21st century gets underway.

A recent job-skill-demand statistic from a firm that monitors demand for skills within online job-posting Web sites reported in January 2000 that, for the first time, Java took the No. 1 position for being the job skill most in demand, edging out C++, which had been the top prior to January.

Why Get Certified?

Passing the Sun Certified Java Programmer (SCJP) exam is not easy. Our observation shows that prospective candidates spend up to six months studying for the exam. The amount of time spent depends on the amount of previous Java and Object Oriented (OO) experience a candidate has had, and the number of hours a week spent studying. Those with little prior Java experience but some prior non-OO-language experience (C, Cobol, etc.) average three to six months studying. Those with one or more years of recent (daily) Java programming experience will average three to 12 weeks study time, depending on their weekly commitment. While there are study aides that can reduce your total amount of study time by dramatically increasing the effectiveness of the hours you do spend (see Figure 2 and Figure 5), studying for the Certified Java Programmer exam is not a walk in the park.

Experienced programmers are often heard complaining about "esoteric" questions on the exam or having to be a "human compiler." Numerous experienced programmers with two or more years of daily Java programming experience have walked confidently into the test, only to learn two hours later that they had not passed. For those who do not adequately prepare, comments such as "I've never used Grid-BagLayout before," "I haven't had a need to use the java.io classes in my job" and "the questions were much harder than I expected" are commonly heard after the exam. So if you are going to invest your time, what are you going to gain from the experience? Is it worth it? The answer is increasingly yes. There are numerous benefits to taking and passing the SCJP:

70.8 percent of IT managers view certification as a criteria for promotion.

85 percent of managers (up 10 percent in the last year according to the Gartner Group) view certified employees as more productive. Whether you believe that is true or not, if you want to manage and advance your career, paying attention to what the boss views as important will help get you there.

For those employed as a Java consultant, certification provides a standard, tangible way of measuring technical skills. Consulting companies such as GreenBrier & Russell will not place a Java consultant at a customer site until he or she passes the SCJP exam.

At Tactica consulting in Dallas (a successful and rapidly growing pre-IPO company that specializes in Internet consulting and development for companies of all sizes), consultant promotions are contingent upon their employees taking and passing certification exams.

Certification promotes personal confidence and is a third party validation of skills.

Certification demonstrates a high level of competency in Java technology, often enhancing existing Java skills by exposing students to areas that they have not been exposed to through on-the-job training and formal education.

Certification opens the door for job interviews by enhancing credibility among hiring managers. Having Java certification allows a candidate to compete against other non-certified candidates having more on-the-job experience. For those trying to transition into Java programming, hiring managers often want to see previous experience before interviewing a candidate. Java certification can open the first interview door for those with insufficient prior Java programming experience seeking a Java programming position. Once in the door, it is up to you to confidently sell yourself and demonstrate your understanding of Java and key technology issues. As supply and demand for Java programmers come into balance over time, Java certification will become increasingly important as a vehicle for securing interviews. With demand and supply in closer alignment, consulting companies will move certification from the "plus" to the "must have" skill category prior to joining the firm. With a larger talent pool available in the future, small to mid-size companies will begin selecting those who are certified in Java just as they prefer networking candidates certified in Cisco or PC support candidates with an A+ certification versus those that do not. Once a technology moves out of the early adopter phase and matures, the value of certification and the number of people seeking certification in that technology increases. Figure 1 shows the typical lag relationship between the adoption of a technology and the popularity and value of certification for that technology.

Becoming certified in Java allows you to establish credibility in a technology supported on every major software company's platform today (Microsoft Windows, IBM, Sun, Hewlett Packard, Oracle, Sybase, Novell, etc.).

Who Is Getting Certified?

There are four primary categories of people who can and are benefiting from Java certification:

Those who are transitioning their careers from non-technical positions to software and application development. As we've already discussed, those wanting to join the Java soirée will find ample demand and opportunity over the next 12-24 months with (at a minimum) one in 10 positions going unfilled.

Those currently in the IT field who are looking to change positions within their own company. If you are creating a plan to increase your credibility, role and success within your current organization, certification should be a centerpiece of that plan, particularly if you are in a small or medium-size company. IT managers in small to medium-size companies particularly rely on certification as a means of establishing credibility. If you have IT skills but no Java experience, certification can open the door to the manager hiring for the new Java positions. Certification can enhance your credibility and the opportunity to interview for those new Java positions.

Java consultants who want to validate their skills and enhance their credibility with their clients.

Those in the IT field who are considering changing employers. A growing number of online job listings are listing "Java certification," along with Corba and EJB, under the "Desired" or "Plus" category. And as shown in Figure 1, the value of certification during the hiring process will increase as the first decade of the 21st century rolls out. While a specific salary differential cannot be established for those with and without certification, Java certification will increasingly play a larger role in the hiring decision as Java technology continues to mature. With IT managers viewing certified employees as more productive, the salaries for those who are certified will be adjusted accordingly as their performance evaluations take place.

Sometimes the best way to learn more about a topic is to learn from those who have already gone through that experience. Accompanying this article are three "IT Profiles," on Tony Alicea, Neil Green and Phillip Smith. All three took and passed the SCJP exam in 1999 and are now successful Java programmers working in the software industry.

Other Java Exams and Resources

In addition to the SCJP exam, Sun Microsystems offers the Certified Java Developer and Certified Java Architect exams. The majority of the developer exam is a take-home programming assignment where you implement the solution based on the requirements and "getting started" code provided. After completing and submitting the programming assignment, the candidate answers questions in essay format about the programming assignment and the issues and tradeoffs faced when implementing the programming assignment. The developer exam exercises core Java, Swing, JDBC and RMI API skills. The Certified Java Developer exam is a good way of gaining and showing experience with the Java language using a non-trivial assignment. Hiring managers will often substitute three to 12 months of on-the-job programming experience for someone who has passed the Certified Java Developer exam.

The architect exam was revamped earlier this year to focus more on the server-side Java technologies typically being deployed in the marketplace, such as Enterprise Java Beans, JNDI, Java Messaging, RMI/IIOP, Transactions and core object-oriented programming principles. The exam has three components: a multiple-choice exam (similar in format to the SCJP exam), a programming assignment and an essay portion that interrogates the candidate about the programming assignment and the issues and tradeoffs faced when implementing it. The Certified Java Architect exam is focused on the ability to architect, develop and deploy Java applications in an enterprise environment (including the ability to connect and interact with existing legacy applications already in production).

Finally, the JCert consortium has introduced a five-exam track for the Certified Java Programmer, Certified Solution Developer and Certified Enterprise Developer (see Figure 4).

When, Where and How?

By now you have gained a better understanding of Java certification and whether it is applicable for your situation. You need the actual logistics of the programmer exam. Figure 3 provides Prometric testing information.

Sun has been providing Java certification for over three years, offering the SCJP, Certified Java Developer and Certified Java Architect exams. In June 1999, the Certification Initiative for Enterprise Development was announced at JavaOne. Additional details and announcements regarding jCert were given at the Technical Certification Expo 2000 and JavaOne this year.

Certified Once, Valued Everywhere

The Certification Initiative was founded by Sun Microsystems, IBM, Oracle, the Sun/Netscape Alliance and Novell. Since then, additional companies have joined the organization, including Hewlett Packard, BEA Systems and Sybase. Together, these companies have created a nonprofit consortium (jCert Inc.) to create a three-tier system for Java certification that allows for cross recognition of exams across multiple vendors. After all, if Java is "Write Once, Run Anywhere," why should someone have to take the same/similar exams on each platform in which the technology is deployed? The three tiers are:

Certified Java Programmer (Tier 1)

Certified Solution Developer (Tier 2)

Certified Enterprise Developer (Tier 3)

Careful thought has been given to the rollout and introduction of the initiative. For all those who have taken and passed the SCJP (either JDK 1.1 or Java 2 platform) already, you have successfully completed Tier 1, as the SCJP exam is the basis for Tier 1. See Figure 4 for a roadmap of the five exams that make up the jCert initiative. For additional information on the jCert initiative, visit www.jcert.org.

Sun Certifications

Sun will continue to offer the Certified Java Developer and Certified Java Architect exams. It would be nice down the road if there were some sort of cross recognition between the continuing Sun Java Developer and Sun Java Architect certification exam offerings and the new jCert Inc. exam offerings. Only time will tell.

David Hecksel runs the www.enterprisedeveloper.com Web site, which markets and sells JCertify 3.0, an interactive Java language and Java programmer certification training product. Marcus Green runs the www.jchq.net Web site, which was recently expanded to include material on Sun's Certified Java Architect Exam.

IT Java Profiles

Neil Green - Web developer, Base Image Systems

Why did you choose to pursue taking and passing the Certified Java Programmer Exam?

To change careers from being a teacher.

If involved with a job search within the past 18 months, how do you think becoming certified in Java has helped your job?

Being certified gets you past the agents and is an additional feature on the resumé when being considered by employers.

Did Java certification help you find a job?

Yes, it helped me get my current job. I was up against another candidate who was a PERL programmer. My new employer valued my initiative in becoming certified.

What advice do you have for others considering the Certified Java Programmer Exam?

The main value of paying for the course from Sun is that it looks good on your resumé. There are cheaper, better ways to study.

Phillip Smith - Software Engineer, Online Insight

Why did you choose to pursue taking and passing the Certified Java Programmer Exam?

My overall objective was to make a career change and return to software development. I had invested some time studying the current market and getting advice about the most appropriate path to pursue. Java/OOP development was clearly my best option. I knew I would need demonstrable evidence that I had learned this new technology. As with so many other pursuits, clearly defined goals and the discipline to focus on them yielded results.

If involved with a job search within the past 18 months, how do you think becoming certified in Java has helped your job?

The SCJP credential was a recognizable benchmark of a basic level of knowledge. It provided a measure of credibility to a person with no other immediately demonstrable Java skills. The certification also indirectly indicated a self-starting, can-do attitude to some prospective employers who were looking for those characteristics.

Did Java certification help you find a job?

Yes, without question. Certification was one of the key ingredients that opened this door for me. Even though a career change from a non-IT profession left me with no up-to-date work experience, this company recognized that I had the foresight to identify the skill set that I needed to learn, the discipline to learn those skills relatively quickly and the ability to pass the certification exam. The combination of all three points and the ability to sell myself won my second interview and offer letter.

What advice do you have for others considering the Certified Java Programmer Exam?

The exam is difficult, but fair. If you know the material, you will pass. Get the best exam simulator and use it. Part of the difficulty of the exam is the amount of material that is covered in a short time, so be sure you're ready when you walk in the door to take it.

Tony Alicea - Java developer, Office Depot

Why did you choose to pursue taking and passing the Certified Java Programmer Exam?

I felt I would have a better chance of getting a job interview for a Java programmer position if I could show at least some recognized sign of knowing OOP and Java.

If involved with a job search within the past 18 months, how do you think becoming certified in Java has helped your job?

A lot!

Did Java certification help you find a job? Absolutely. Without any professional experience in Java, it helped me get two good interviews after five days of publishing my resumé-one that led to a great job as a Java developer.

What advice do you have for others considering the Certified Java Programmer Exam?

It will give candidates excellent knowledge of the basics, which are not that basic if one is new to OOP. I have heard that more than a few professional Java programmers have failed the certification exam on the first attempt, and I believe it.