After 17 months of preparation, two failed attempts, and finally passing with 80%, this is the study plan I would follow if I had to start all over again.
In my previous article, “1 Java Certification in 17 Months”, I shared how it took me 17 months, two failed attempts, and three exam attempts to finally become an OCP Java 21 certified developer.
But if I had to start preparing for the certification again today, knowing everything I know now, I wouldn’t prepare for 17 months.
My journey took that long because, somewhere along the way, I wasn’t only studying anymore.
I was building the Java 21 Certification Study Group, preparing daily content, creating presentations, recording videos, organizing weekly meetings, answering questions, teaching, and learning together with hundreds of other Java developers.
If my only goal today was to prepare for the exam, I believe around five to six months could be a reasonable target.
Maybe less. Maybe more.
It depends on your Java experience, how much time you can dedicate, and, most importantly, how much time you need to actually understand each topic.
So I wouldn’t make the deadline the most important part of the plan.
I would make consistency the most important part.
Here is how I would do it.
Phase 1 — Start with the Study Guide
My starting point would still be the OCP Oracle Certified Professional Java SE 21 Developer Study Guide, by Jeanne Boyarsky and Scott Selikoff.
I highly recommend this book.
The book itself makes it clear that it isn’t intended to teach Java from scratch. It is a certification study guide, and I think it does that job extremely well.
One of the things I particularly like about it is the way Jeanne and Scott write. They don’t simply present rule after rule. They talk to the reader.
There are recurring animals, zoo examples, stories, jokes, and situations that make some surprisingly complex Java topics easier and more enjoyable to study.
When you’re going through hundreds of pages about generics, streams, modules, concurrency, I/O, and all the small details that the OCP expects you to know, that writing style makes a real difference.
So yes, I would start with the book again.
In fact, during my 17-month journey, I read the entire Study Guide twice.
The first time was during my initial preparation for the exam. After failing the exam twice, I decided to go all the way back to Chapter 1 and start again.
But the second time was different.
I wasn’t only studying anymore. I was preparing videos and a series of posts covering the 94 certification topics, while also preparing to discuss and teach those topics in our study group.
That completely changed the way I studied.
As I wrote in my previous article:
The first time, I studied the book because I wanted to pass the exam. The second time, I studied it because I needed to teach it. And that made a huge difference.
Don’t just read Java. Experiment with Java.
This is one of the most important things I would recommend.
When you find a code example that isn’t completely obvious, run it.
Then change it.
What happens if you remove final?
What happens if you change the type?
What happens if you add null?
Does it still compile?
What if you change the order of two operations?
Whenever I got something wrong or didn’t completely understand why Java behaved in a certain way, I would copy the code into my IDE and start experimenting with it.
Sometimes five minutes of changing code teaches you more than reading the same explanation three times.
I keep many of the examples I used during my preparation in my Java 21 certification repository:
My Java 21 Certification repository on GitHub
Don’t just read Java. Experiment with Java.
One Pomodoro is a baseline, not a rule
When we started the study group, the baseline I recommended was simple:
One Pomodoro per day.
If you’re not familiar with the Pomodoro Technique, the idea is simple: focus on one task for 25 minutes, then take a 5-minute break.
The idea was to study approximately one of the 94 certification topics per day, usually around 10 pages, five or six days per week.
But there’s an important distinction here.
One Pomodoro was the baseline I recommended to people following the study group. It wasn’t my own study routine.
My preparation required significantly more time because, in addition to studying, I was creating summaries, presentations, questions and videos, and preparing to teach the material every week.
If I were preparing only for the certification today, I would still use one Pomodoro as a good minimum baseline during this phase.
But the goal isn’t to complete a Pomodoro.
The goal is to understand the topic.
How long would I spend on the book?
I wouldn’t define this phase as exactly four months.
A reasonable pace could be around 10 pages per day, six days per week.
At that rhythm, you would read roughly 250 pages per month, meaning you could finish the book in a little over three months.
Then there are the review questions at the end of each chapter.
And here’s something I would do differently today:
I wouldn’t feel obligated to answer every single one.
Doing around half of the chapter review questions can already provide useful reinforcement before moving forward.
So for many people, this first phase could take around three and a half months, perhaps less than four.
If you can dedicate more than one Pomodoro per day, it may be faster.
But some topics will naturally take longer than others. Sometimes you’ll need to stop, run the code, change it, and spend more time until the behavior really makes sense.
That’s fine.
Don’t rush. Be consistent. One step at a time, and eventually you get close to the finish line.
What I would not prioritize
When you buy the Study Guide, you also get access to additional Wiley/Sybex online material, including an Assessment Test, chapter questions, and three Practice Exams.
I used those resources.
If I were preparing again today, I would skip the Assessment Test and the three Practice Exams.
The main reason is that, in my experience, those questions aren’t very similar to the real exam format.
For example, they don’t tell you how many answers must be selected, while the real OCP exam does.
They also rely heavily on tricky wording and edge cases.
And this is an important distinction for me:
I don’t think tricks are the main difficulty of the OCP exam.
The exam is difficult because you need a deep understanding of Java while dealing with long, detailed questions under significant time pressure.
The chapter review questions are different. I think they can be useful while you’re studying each chapter; I just wouldn’t feel obligated to complete every one of them.
Phase 2 — Enthuware
Once I finished the Study Guide, I would move the center of my preparation to Enthuware.
For me, this is an essential part of OCP preparation.
The Java 21 question bank contains more than 1,300 questions, organized into:
6 Foundation Tests
16 Standard Tests
4 Unique Tests
Enthuware has plenty of tricky questions too.
With more than 1,300 questions, it definitely contains far more tricky questions than you could encounter in a 50-question exam.
But overall, I found its format much closer to what you need when preparing for the actual certification.
It tells you how many alternatives need to be selected, just like the real exam, and provides detailed explanations for the alternatives.
That last part is particularly important.
A mock exam isn’t useful only because it gives you a score. It gives you new things to learn.
Enthuware OCP Java 21 question bank
Enthuware also helps you find what you don’t know
There is another reason I wouldn’t rely on the Study Guide alone.
There are certification-relevant topics that simply aren’t covered in the Study Guide.
For example:
- the
dropWhile()intermediate Stream operation - the
takeWhile()intermediate Stream operation - the
jimagecommand
A large question bank like Enthuware can expose gaps like these.
And that’s extremely valuable because one of the biggest problems in certification preparation is simple:
You don’t know what you don’t know.
Take the mock exams like real exams
This is where the study routine changes significantly.
During the book phase, one Pomodoro can be a perfectly reasonable minimum commitment.
That doesn’t work when you start taking the Enthuware tests.
Each test contains approximately 50 questions, and I strongly recommend taking each one in a single sitting.
Set aside approximately two uninterrupted hours.
Don’t answer 20 questions today and finish the rest tomorrow.
You’re not training only your Java knowledge.
You’re also training yourself to stay focused, read large amounts of code, make decisions under pressure, and manage your time for two hours.
Time management was one of my biggest challenges during my first attempt, so this practice became especially important for me.
Taking the test is only half the work
After finishing an Enthuware test, I wouldn’t immediately jump into the next one.
I would spend the next two or three days reviewing it, dedicating at least two Pomodoros per day to the review.
And I wouldn’t review only the questions I got wrong.
A correct answer doesn’t necessarily mean you understood the concept.
Sometimes you get a question right for the wrong reason.
For each question, I would try to understand:
Why is this alternative correct?
Why are the others wrong?
What would need to change for a wrong alternative to become correct?
Does this code compile?
What Java rule is this question actually testing?
Whenever the explanation wasn’t enough for me, I would take the code to my IDE and experiment.
So a typical cycle could look like this:
Day 1: Full mock test — approximately 2 hours
Days 2–4: Review — at least 2 Pomodoros per day
Then: Move to the next test
The goal isn’t to answer 1,300 questions. The goal is to learn the concepts hidden inside those 1,300 questions.
Your scores won’t improve in a straight line
During my preparation, my scores went up and down.
I could score 88% on one test and then later get 80%, 74%, or even 67%.
Different tests expose different gaps.
So instead of obsessing over whether every new score was higher than the previous one, I focused on what each test was telling me I still needed to review.

My Enthuware progress report near the end of my preparation. The scores went up and down, but every test exposed something I could review.
The score matters.
But what you do after seeing the score matters even more.
When I would start increasing the intensity
I wouldn’t keep exactly the same study intensity throughout the entire Enthuware phase.
As I approached the end of the 16 Standard Tests , especially around the last three or four, I would start increasing my study time.
By then, I would already have a large history of questions and mistakes to review, and my remaining weak areas would be becoming much clearer.
This is where I would gradually spend more time reviewing questions, experimenting in the IDE, revisiting weak topics, and preparing for the more intensive final stage.
I wouldn’t try to maintain that level of intensity for five or six months.
I would build consistency first and increase the intensity when it matters most.
I would change the order I used
There is one important thing I would do differently today.
In my actual preparation, I followed this sequence:
6 Foundation Tests → 16 Standard Tests → 4 Unique Tests → Leitner Mode → Thiago’s hard test
Today, I would change it to:
6 Foundation Tests → 16 Standard Tests → Leitner Mode → 4 Unique Tests → Leitner Mode again → Thiago’s hard test
Why?
Because the Unique Tests are a limited set of fresh questions.
If I were starting again, I would want to arrive at them with as much knowledge as possible.
After completing 22 Foundation and Standard Tests, I would already have accumulated a lot of mistakes and discovered many weak areas.
Instead of immediately using the Unique Tests to expose some of those same weaknesses again, I would first work on what the previous tests had already taught me.
That’s where Leitner Mode comes in.
How I would use Leitner Mode
Enthuware’s Leitner Mode organizes questions into stages:
Unlearned → Level 1 → Level 2 → Learned
The rule is simple: if you answer a question correctly, it moves one stage forward. If you answer it incorrectly, it moves one stage backward.
So a question moves from Unlearned to Level 1 when you answer it correctly. Answer it correctly again and it moves to Level 2. Get it wrong, and it moves back to the previous stage.
This creates repetition focused on the areas that still need work.
At minimum, I would make sure that every question I had previously missed moved at least one column forward — from Unlearned to Level 1.
One practical way to work toward that is to use the “Questions Never Answered Correctly” filter and focus on the questions you haven’t yet managed to answer correctly.

Enthuware Leitner Mode. At minimum, I recommend moving every question you previously missed from Unlearned to at least Level 1.
Then I would take the four Unique Tests.
After those tests, I would return to Leitner Mode again and work on the new mistakes they exposed.
One final test
After all of that, I would take one more test.
During his own certification preparation, Thiago Bonfim, a member of our study group who passed the OCP Java 21 certification before me, created a list of 72 difficult Enthuware questions and published it in his GitHub repository.
He later mentioned it when he joined one of our special sessions to share his certification journey with the community.
During my final preparation, I decided to take it.
My result was:
66 / 72 — 92%
That was the moment when I finally felt ready to take the exam.
Of course, scoring 92% on one test doesn’t guarantee that you’re going to pass the real exam.
But after reading the Study Guide twice, going through the Enthuware tests, reviewing my mistakes, spending a lot of time in Leitner Mode, and finally scoring 92% on this set of difficult questions, I felt that my preparation had reached the level I needed.
For the first time, I wasn’t trying to become ready before a deadline.
I felt ready.
Thiago’s list is available here:
Thiago Bonfim’s 72-question Enthuware hard test
Let your preparation decide when you’re ready
This was perhaps the biggest difference between my first two attempts and my third.
For my first two attempts, I had Oracle vouchers that expired on July 22, 2025.
I finished the book on July 8.
My first attempt was July 14.
32/50 — 64%.
I failed by two questions.
My second attempt was July 22.
31/50 — 62%.
I failed by three questions.
I was trying to become ready before the voucher became useless.
The third time was different.
There was no deadline forcing me to take the exam.
I could keep studying until my preparation told me something different.
And eventually, it did.
The first two times, the voucher told me when to take the exam. The third time, my preparation told me when to take it.
That’s what I would recommend today.
Don’t schedule the exam simply because you finished the book.
Don’t schedule it because you’ve been studying for four months.
Use those numbers to create a plan.
But let your preparation tell you when you’re ready.
So, how long would I prepare today?
If I had to start again, I would probably plan for something around five to six months.
But I would treat that as a reference, not a deadline.
I would start with the Study Guide and build a consistent routine, using one Pomodoro per day as a minimum baseline, not as a fixed rule.
At around 10 pages per day, six days per week, this first phase could take somewhere around three and a half months, perhaps less than four.
I would read the book, but I would also run the code, experiment with it, and take the time necessary to understand each topic. I would use the chapter review questions for reinforcement without feeling obligated to complete every one of them.
Then I would move to Enthuware.
I would take each mock exam in a full, approximately two-hour session and spend the following two or three days reviewing it, with at least two Pomodoros per day.
As I reached the last three or four Standard Tests, I would start increasing the intensity of my preparation.
After completing the Foundation and Standard Tests, I would use Leitner Mode to work on my mistakes before using the Unique Tests.
Then:
4 Unique Tests → Leitner Mode again → Thiago’s hard test
And I would continue working on the remaining gaps until my preparation, not a date on the calendar, told me I was ready.
For someone with more available time, the whole process could be faster. For someone who needs more time with the concepts, it could take longer.
That’s okay.
Five or six months is not a formula.
It’s not a guarantee.
The goal isn’t to finish quickly.
The goal is to arrive at the exam prepared.
My journey took 17 months.
Yours doesn’t have to.
But however long yours takes:
Don’t rush. Be consistent. Keep moving.
One step at a time.
Eventually, you’ll realize how close you’ve gotten to the finish line.
If you’re preparing for the OCP Java 21 certification, you don’t have to study alone.
We are now more than 500 developers in the Java 21 Certification Study Group, with weekly meetings in Portuguese and English.
Come study with us:
https://sendfox.com/ronaldotavares
You can also read this article on LinkedIn
OCP Java 21 Certification Journey — Article Series
#1 — 1 Java Certification in 17 Months
#2 — How I Would Prepare for the OCP Java 21 Certification Today
You are here.
#3 — What I Learned From Failing the OCP Java 21 Twice
LET’S JAVA!!!

Deixe um comentário