Oracle Certified Associate and Oracle Certified Professional. The overall impression and the nuances of preparation

    Hi, Habr!

    My name is Masha, I work at KROK. Today I want to tell you about obtaining certificates of Oracle Certified Associate and Oracle Certified Professional. In general, in discussions about the usefulness of professional certification (and indeed its necessity in principle) among developers, spears often break. Some believe that a certificate is highly desirable for hiring a decent job. Others say that “pieces of paper” do not play a special role, even a diploma of higher education may not be required, only skills will be evaluated.

    There are cases (probably if the interview process is not very streamlined) when HR can eliminate a person without a certificate, although such a person would actually more than have done the job. Or, on the contrary, to react to the availability of a certificate, arrange a technical interview with the developer, who, it is true, will quickly understand that the candidate went by accident at all, and will begin to suspect that he did not learn anything except to hand over the certificate and did not use it.

    Anyway, there are people who need certificates. Both for the portfolio and for yourself. Under the cut, I'll share my impressions of Oracle Certification on Java: Oracle Certified Associate (1Z0-808) and Oracle Certified Professional (1Z0-809). In world practice, the presence of these certificates is a confirmation of a certain level of qualification of the java-developer, so many of this procedure pass.


    A little background. Previously, SUN Microsystems, which in 2009 bought Oracle, was engaged in this certification of javistes. Two key organizations, Virtual University Enterprise (VUE) and Prometric, are engaged in testing the level of knowledge and issuing certificates. I work at the CROC Irkutsk development center, so I passed the exam at the VUE certified center in Irkutsk. It's nice that training and certification for the purpose of professional development can be held at our company’s expense. Moreover, with certification I was able not only to qualify my level as a developer, in CROC it is still a powerful factor for career growth. Since this is also a bonus for the company - an additional advantage in the total number of certified employees per square meter. They say

    Now essentially. OCA (Oracle Certified Associate) is the initial step of Java developer certification. There is a special book to prepare for OCA, which is written in quite an understandable language; it is even able to be mastered by a person who has quite a bit of experience with OOP (any programming language). The book is in English, in the Russian translation, I have not met her. But, once again - the language is really simple, there will be no particular difficulties.

    No matter how fresh the revision of the book you are preparing for, it will not be superfluous to keep this link at hand . No publication is immune from typos, but the link indicated is where the error or typo is in the book, and how it should actually be.

    I remember for a long time I sat over one of the test questions, could not understand why everything turns out that the correct answer is B, and it is marked in the list of answers D. And in the comment to the correct answer everything pointed to B. ... When I remembered the list of typos I found this moment there, and everything immediately fell into place.

    Carefully pass tests from the book - this is half the success. Ideally, two times. Or at least a second time to go through those issues in which you first made a mistake. Not in order to memorize the questions themselves, but in order to make sure that you understand and feel the correct solution to the situation. However, my experienced programming friends, who had to take the OCA from the height of their positions, used a different strategy: after reading the second chapter, they passed tests from the first, after reading the third - from the second, and so on by induction.

    Questions that you will solve may be very similar to those that will be on the tests. However, being attentive and reading every word of the question in the exam is extremely important. It happened that you were cutting tests at home for the second time, some question would settle tightly in your memory, you come to the exam - and there you have the same question! You rejoice, you answer from memory, you do not read carefully. And then it turns out that the access level of the method was different, and you lost sight of it because of excessive self-confidence ...

    So, OCA assesses knowledge of the fundamentals of Java Core. If you have experience in developing it, the exam will not be difficult. I consider it important to note that for OCA one should be able to compile in one's mind. Yes, yes, you need to know and remember all these cute little things that in modern life makes for you a modern IDE. That is, the rules for naming variables, see unreachable code blocks, unnecessarily handled exceptions, unprocessed and non-thrown exceptions, correct and incorrect placement of variables into objects, and much more.

    Sample question from the book
    What data type (or types) will allow the following code snippet to compile? (Choose all that
    byte x = 5;
    byte y = 10;
    _____ z = x + y;
    A. int
    B. long
    C. boolean
    D. double
    E. short
    F. byte

    It may seem tedious to someone that the exam will have to pretend to be a compiler. But on the other hand, understanding how its logic is arranged, the ability to immediately understand the error in the code: these skills do not interfere, but only help in everyday work. OCA is a kind of training; it is easy to read java-code to upgrade a skill without being distracted by misunderstanding the foundation of this code.

    There may be issues for which you need to remember existing methods, their behavior and signatures. Looking ahead, there will be more such questions in OCP. However, in some OCA issues you may have to recall the methods of collections and classes for working with strings.

    An example though from OCP, but my favorite, because it is painfully indicative
    Which of the answer choices are valid given the following declaration?
    Map<String, Double> map = new HashMap<>();
    A. map.add(«pi», 3.14159);
    B. map.add(«e», 2L);
    C. map.add(«log(1)», new Double(0.0));
    D. map.add('x', new Double(123.4));
    E. None of the above

    As a perfectionist, I tried to memorize method signatures that I encountered in the preparation questions. Undoubtedly, it helped me on the exam. However, communicating with my colleagues, I realized that many guys take it easier: they read the book and carefully pass the tests, but the signatures are not crammed. And indeed, their experience and intuition was usually enough to score at least 65% of the correct answers on the exam - and this is a passing score for both OCA and OCP.

    In the certification center you will be given only a marker and a laminated cardboard. The rest is yours.

    Bottom line for OCA - wake up. You will have 2.5 hours to deal with 70 questions. No matter how well prepared you are, be attentive to the little things. If you decide everything is ahead of time, take a few more minutes and review the answers again. The exam has a mechanism for marking a question called “Mark.” I mark those in which I am not completely sure, and first of all I should return to them. By the way, in the same place there is an opportunity to mark answers which precisely consider as incorrect: for this purpose use the right mouse button.

    About the results. My result came to my email only after a few days. If you do not want to wait so much - check your Oracle account from time to time. The result may appear first there, and after some time come in the form of a letter.

    What then

    If it was the first certification in life, you will be assigned two identifiers - from VUE and from Oracle - the first will allow you to accumulate data on all certifications, and the second - within the vendor. In the future, such an identifier will be sufficient to confirm that certification has been passed. Try to remember it and inform those who will register you for the next exams.

    If you think that OCA is only the beginning of your Java certification history, and you intend to conquer OCP, then I would not advise you to take long breaks between tests. The knowledge that you gained in preparing for the OCA will also be needed in the OCP, so it is easier to start preparing for the OCP immediately for fresh memory.


    OCP (Oracle Certified Professional) is the second step of Java developer certification. The same 2.5 hours on the exam, the same threshold of passing 65% of correctly answered questions, and the number of questions increased to 85.

    Compilation traps also exist, such as an incorrect type of the returned object and missing brackets. They are few, but still do not lose vigilance.
    In general, OCP is a test of theoretical knowledge ... method signatures and syntactic constructs!

    Yes, again we sit on most issues and compile ourselves little by little in our minds. But this time the error, if any, will most often be at a much higher level of abstraction. That is, not at the level of syntactic constructions, but at the level of working with classes. It is possible that this time it is not necessary to start any cycles with counting variables in the mind (or look for errors in the names of the variables themselves). But remember that the correct application of specific structures and methods is necessary.

    For OCP I memorized two useful tables (and for good reason, both were useful in the exam). I share them with you (the first is entirely from the book).

    Table 1. Functional interfaces

    Table 2. List of inner and nested class restrictions

    Obviously, I learned not only them - because of the number of stickers throughout the apartment, I forgot for a while what kind of wallpaper in the room (and whether they are). The method helps with memorization of information fragments. Of course, the most memorable stickers are hanging in the bathroom.

    If this is not enough for you, you can switch completely in nightmare (like me) and place materials from OCP on the home and work computers wallpaper. Well, the phone, of course. I renamed my friend in the list of phone contacts to commit (). And with each incoming call from her, I repeated in my memory that the Connection class’s commit () method does not have overloaded versions (the analogy, of course, refers to a friend: she is not one of those who ship with a long chatter).

    In this article, I place a great emphasis on what to cram. But this by no means excludes the fact that in order to pass exams, you must be a good programmer with a deep understanding of the language and the ability to make the most of the latest Java version. It’s just that most of those who come to OCP are already such specialists, but, as a rule, it’s not useful to learn by heart language constructs.

    Finally, a couple of hints.

    1. On OCP, neither I nor any of my friends were caught by RandomAccessFile.

    2. According to rumors, the serialization was excluded from the OCP. I could not find evidence. But - I want to believe.

    In general, something like that. I hope it turned out interesting and useful. If you have questions, write in the comments.

    Also popular now: