what does it mean to be OCP Java 8 Programmer II certified?

There are now three paths for one to become OCP 8 (Java Programmer II certified.) So what does it mean someone certified had to know to pass the exam. Well, that varies too.

The three paths

  1. Starting out with Java 8 – take the OCP 8 (IZ0-809)
    Pre-req: OCA 8 (1Z0-808)
  2. Holding a Java 7 Professional cert – take the Java 7 to 8 upgrade exam (IZo-810)
    Pre-req: OCP 7 (IZ0-804) or Java 7 upgrade exam (IZo-805)
  3. Holding any Java 6 or older Professional cert – take the Java 6 or earlier to 8 upgrade exam (IZo-813)
    Pre-req: SCJP/OCJP 6 (IZO-851) or Java 6 upgrade (IZ0-852) or SCJP/OCJP 5 (IZo-853) or Java 5 upgrade (1Zo-854) or Java 4 or lower Professional cert

What one would expect

It seems reasonable to assume some things here.

  1. People taking the OCP 8 directly should be tested on the topics that entail being Java 8 certified.
  2. vennPeople taking the upgrade from Java 7 should be tested on just the topics that were added in Java 8. This is the purple in the Venn diagram. There’s no reason to retest on the topics that the were already on the Java 7 exam. That’s the overlap in the Venn diagram. (This is a bit simplified. It’s really that the topics should be those on the OCA 8 or OCP 8, but not on the OCA 7 or OCP 7. Luckily the topics added on the OCA 8 are also on the OCP 8.)
  3.  venn2People taking the upgrade from older versions of Java have a more interesting situation. When taking a very old exam, lots of topics are different. For example, new topics include generics and the enhanced for loop for those upgrading from Java 5. These topics are so old that it is reasonable to assume the candidate knows this as these syntax changes are covered as part of questions on all sorts of topics. Since the exam changed a lot between Java 6 and 7, let’s just imagine all upgrade candidates in this group took the Java 6 exam. Which would imply the topics covered should be the purple OCP 8 circle except for the overlap with the OCP 6 circle. It doesn’t imply the topics covered in OCP 7 but not OCP 6 or 8 should be covered. After all, those topics were removed from the OCP 8 exam so shouldn’t be needed to get a Java 8 certification.

These assumptions turn out to not match what Oracle actually did. The rest of this blog post describes the surprises.

What people starting out with Java 8 were tested on, but those upgrading from Java 7 were not

Topics:

  1. The concept of immutability
  2. The concepts of deadlock, starvation, livelock, and race conditions. They are tested when upgrading indirectly but with less emphasis.

My thoughts: No big deal here

What people starting out with Java 8 were tested on, but those upgrading from Java 6 were not

  1. The concept of immutability
  2. The singleton pattern
  3. The concepts of deadlock, starvation, livelock, and race conditions. They are tested when upgrading indirectly but with less emphasis.
  4. The entire topic of JDBC

My thoughts: Leaving out the first three isn’t a big deal. Leaving out JDBC is bizarre. That’s a whole topic that is part of core Java. It started being needed for Java 7 (or 8) certification. Upgrading from an older version seems like it should require it. But nope.

What people upgrading from Java 7 were tested on, but those starting out with Java 8 were not

  1. The computeIfAbsent() and computeIfPresent() methods on Map
  2. Also merge()  [removed from main exam in October 2015 and removed from upgrade exam in November 2015]

My thoughts: Odd to add topics on an upgrade exam. These are so similar, I’d almost think they were implied on the Java 8 exam.

What people upgrading from Java 6 were tested on, but those starting out with Java 8 were not

  1. The computeIfAbsent() and computeIfPresent() methods on Map
  2. Also merge()  [removed from main exam in October 2015]
  3. IO.2 – DirectoryWatcher, FileVisitor and WatchService
  4. Locks package in concurrency API
  5. DecimalFormat and SimpleDateFormat

My thoughts: This is bizarre. These three NIO.2 classes, the locks package and the two format classes were on the OCP 7 exam, but not on the OCP 8 exam. Oracle changing their mind and taking something off the exam for a later version is perfectly reasonable. However, I would think that would mean you don’t put it on the upgrade exam! Why should the upgrade exam cover something that isn’t on the target exam.

Summary

If I was writing the objectives for the upgrade exam from Java 6,  I’d have dropped some topics and added JDBC. But I’m not writing the exam objectives so will remain puzzled.

Jeanne’s impressions of the Java Foundations Certified Junior Associate

Update: I’ve created a new version of this blog post comparing the Java Foundations exam to the Java 11 OCP.

I took the Java Foundations Certified Junior Associate exam to see how it relates the “regular” OCA (Oracle Certified Associate) exam. The objectives show an interesting mix of conceptual and hands on knowledge. Mostly hands on.

My beta exam was 101 questions in 3 hours. I finished in an hour. I spent another 40 minutes doing a review and fixed one incorrect answer. There were a few questions where the question was wrong, but it is a beta. And they let you report such issues to make the test better.

I’m an experienced Java developer. Why did I take a basic exam you ask? Two reasons.

  1. I was curious who the exam was designed for. This post answers this question.
  2. I wanted to see if Scott and my OCA 8 book could be used by people studying for this exam. The answer is yes with a tiny bit of supplemental material. See this post for details.

I went to a testing center I had disliked in the past because they had a free slot and I figured this test was so easy I wouldn’t need to concentrate. I’m happy to report that the testing center (Horizon of Flushing) fixed its problems. The room was quiet and well ventilated. They still wanted me to empty the tissues from my pockets, but at least had lockers.

The three exams

There are three intro exams right now. Here’s a comparison:

Exam Number Exam Name Allowed as Pre-req to OCP (professional exam) My comments on intended audience
1Z0-850 Java 5 or 6 Associate No This exam was meant for managers to show a working vocabulary and grasp of Java. There was a tiny bit of code, but it was mostly concepts and pseudocode.
1Z0-803 Java 7 OCAJP (associate) Yes, for OCPJP 7 This is the entry level exam for Java 7 to the developer track. It involves lots of code.
1Z0-808 Java 8 OCAJP (associate) Yes, for OCPJP 8 This is the entry level exam for Java 8 to the developer track. It involves lots of code.
1Z0-811 Junior Associate/Java Foundations No Oracle says it is meant for interns or entry level folks. I think they would be better served by taking the actual OCA. It’s within grasp with no experience, shows more knowledge of Java, sounds better and allows an upgrade to the OCP when the candidate is ready.

Quotes from Oracle

According to the Java Foundations Certified Junior Associate exam description, the exam is:

Position yourself to enter the workforce, or get the internship of your dreams with marketable Java skills.

Earning the Java Foundations Certified Junior Associate credential arms you withthe fundamentalsof Java programming,enabling you to demonstrate both conceptual knowledge and skills. Certification alsovalidates your capabilities to a future employer, showing your potential to become an increasingly valuable asset to any company as you progress into OCA level during your early stage of employment, and later to OCP.

This Junior Associate certification is focused on students in secondary schools, two-year colleges and four year colleges and universities who have participated in the Oracle Academy program and/or are studying computer science including relevant Java curricula and faculty members who teach foundational Java and computer science classes.

Though the exam does not assume any hands-on professional experience with Java, tobe successful you will need a basic understanding of Java programming language and concepts and have mathematical, logical, and analytical problem-solving skills. In addition, you must know how to write and execute a Java program and work with the Java Development kit (JDK) and the Java Runtime Environment (JRE).

Earning this certificationdemonstrates fluency in and a solid understanding of Java SE and the Java programming language, including: data types; operators and strings; decision and looping statements; classes, constructors, and methods; exceptions, ArrayLists and the Math class.

The problem is that the Regular Oracle Certified Associate Java Programmer certification says:

The Java SE 8 Oracle Certified Associate (OCA) certification helps you build a foundational understanding of Java, while expanding your knowledge of general programming.

The ideal candidate who would earn this certification typically has a technical background and wants to improve programming skills, or may be new to object-oriented programming and Java.

And the old Java 5/6 Associate exam says:

The Oracle Certified Associate, Java SE 5/SE 6 certification provides an ideal entry into an application development or a software project management career using Java technologies. This worldwide credential validates basic knowledge of Object-Oriented Concepts, UML representation of OO concepts, the Java programming language, and general knowledge of Java Platforms and Technologies. Candidates for this exam include: entry level Java programmers, students studying to become Java programmers, project or program managers working with Java technology in the software development industry.

The old Java 5/6 associate exam didn’t involve much code so this made sense.

ocp java 8 programmer II beta

Scott and I both took the OCP (Oracle Certified Professional) Java 8 Programmer II beta exam this week.

(edit: I’m now OCP certified with an 88%)

Logistics

We both had 106 questions. It was a three hour exam. I needed two hours for my first pass of the questions. I marked about 25 questions for review and used the remaining time for those. The nice thing about a beta is that you get lots of questions. Sometimes one question gives a clue for another question. For example (not on the exam), maybe you aren’t sure if a method is called set() or put(). Then you get to a question that uses put() and doesn’t have “does not compile” as a choice. Perfect. Now you know something.

As always, you can review questions you’ve marked or all questions in order. The only way to go to a specific question is if you’ve marked it for review. Otherwise you could potentially be clicking next scores of times. I tend to click a lot for review so this isn’t a problem.

Scott and I took the test at different testing centers. We were both given a locker for our personal belongings. I’ve been to a few testing centers and never seen that before. I like being able to have the key to the locker with my belongings!

We also both got one 8.5 x 11 erasable page with a felt tip erasable marker and an eraser. I like getting more than that. I found myself erasing a lot to make space. It’s really important to figure out how to make the best use of your space on the page. I use one column for questions I want to go back to and the topic (so I can look for answers hidden in other questions or think of it later.) I use another column for “facts.” They may be things I’m reminded of during the exam. Often there are things I write down the second the exam starts. That way I don’t have to keep it memorized. For the stuff that’s hard for me to remember. And I use the bottom for actually solving problems. Like drawing what is in variables.

The testing center I went to also gave me earplugs. First time I’ve ever been handed earplugs. The irony was that it wasn’t loud! When I went to the loud testing center, I didn’t get earplugs!

Study materials

For the new topics, see my blog post on the upgrade exam beta. There are a few new objectives in this beta that weren’t in the upgrade exam beta like @Override. Also, some objectives changed scope since the Java 7 exam. Which you can see from the objectives. But there’s nothing like taking the test to make that sink it. I reviewed largely from draft chapters of our upcoming OCP 8 book.

 

Objectives