Hi Fernando,
Oracle (from their exam website) says it has designed OCPJP 7 covers topics in such a way that the exam tests for the candidate's ability to solve real-world problems faced in enterprise projects. (more discussion in this
thread:
https://coderanch.com/t/618294/java-programmer-SCJP/certification/Differences-difficulties, so I don't discuss the exam background further here).
Both of us write programs in our regular job. We learnt quite a few things while writing the book, like corner cases in APIs (e.g., behavior of a call to join(0) on a thread) and understanding of unusual aspects and constructs in the language (e.g., how multiple exceptions can get thrown in certain contexts such as try-with-resources and how to deal with that situation) has helped us write better programs. Now I am learning Groovy, and I find that many things I learnt while writing the book helps there as well (especially for
debugging mistakes in Groovy code).
In other words, in our experience doing research for writing the book, we learnt quite a lot and we feel we have become better Java programmers. So, we recommend our fellow programmers and friends as well to take-up this exam.