Java is probably the most in-demand programming language in the world. Certification serves as one of the ways to impress the potential employer, especially if you've just recently started to learn the language or/and if your exam score is high. I've started learning Java in March 2014 and passed 1Z0-803 exam on 3 Jul 2014 to become an Oracle Certified Associate. Here is what I did to prepare: Step 1. Copied the exam topics from the official certification website and made a study plan: watch video tutorials, study the official guide, study some unofficial Java guides, do some practice tests, and develop a strategy for the exam. Step 2. Worked through a video tutorial. I chose the one by "Patrick DC" and paid for a full 5hr version. It appears to be relatively simple, but does help to get the syntax down + explains in great detail the OOP principles. More tutorials are available on Youtube for free. The videos by Derek Banas are quite popular and are highly ranked, but I find them to be somewhat hectic. Step 3. Studied the official Oracle learning trail "Learning the Java Language". It covers topics in sufficient detail and has relevant exercises. On the first reading one can omit the topics of Nested Classes, Annotations, and Generics - those are not in 1Z03-803 exam. Step 4. Went through the "Java Study Tonight" guide out of a plethora of available online study materials. It features more insights into the inner workings of Java and topical tests. For example, I learnt how static initializers/initializers/constructors are called for the parent-child combination. Step 5. Took several practice tests from a series by Hanumant Deshmukh. This series is an undisputed leader in 1Z0-803 practice tests, because it is up-to-date, offers a great selection of questions, and costs only $10. My scores in practice exams were: 78%, 70%, 78%, 78%, 78% (remarkably constant with the exception of Test 2). I scored well in Test 1, and immediately signed up for OCAJP exam for 3 days later. Over the course of next 2 days I passed 2 practice exams per day and gained more confidence. Step 6. Developed a viable strategy. I learnt to manage my time efficiently during the test by dedicating approximately 12 minutes to a block of 7 questions (real exam is 120min long and has 70 questions). Another great idea is to start working on the question by reading through the answers: if "code does not compile" is one of the answers, then the approach to reading the question is adjusted. The real exam went quite smoothly and I got a 93% score. There weren't any unexpected questions, since the practice exams prepared me for the worst. The real exam had a standard set of tricky problems: two questions with almost identical pieces of code, but vastly different outcomes + some unreachable code questions.