How not to pass the SCJP exam

This last Friday I took the Sun Certified Java Programmer exam (Java 5 edition). I am going to talk about the experience, what I would have done differently and why it will end up mattering.

So just how hard is the SCJP? Instead of phrasing it in some vague way, I’m going to tell you what I did and how it all worked out for me. For starters, I studied for about 25 hours over the course of 10 days before my exam. I would say that having 18 months of Java experience did not help much. I also took 2 practice tests but they weren’t as helpful as I would’ve liked. However, I do still highly recommend reading the SCJP Study Guide by Sierra and Bates. It was fairly thorough and contained many helpful tips.

I got a depressing 55/72 or about a 76%. 59% is a passing score. From this experience I have learned these 3 important things that you might consider when preparing for the SCJP:

SCJP Study GuideFirst, give yourself at least a month to study. Doing it all in 10 days was a mistake in that I did not really get time to assess my weak points and work on them. And I mean study at least an hour per night but don’t cram too much into the week before.

Second, write a lot of code. When I say this I mean those little programs that use some small feature of Java you don’t write everyday. Write an anonymous inner class. Use more generics. Unfortunately I was out of town without a good computer for much of my study time, and I would definitely make sure to fit this in were I to take it again.

Last but likely not least, use more than 1 resource to study. Get your materials from more than one place mainly. Take mock exams for 2 or 3 places. You might use the exams that came with your study book(s) but also consider using a community such as JavaBlackBelt or JavaRanch.

Why would one even go through all this effort for 4 letters to stick on a resume?

More than getting a certificate, I learned a ton of new quirks and small features of Java and I am now a lot more well-rounded as a Java programmer. I learned why some things are the way they are in Java which helps solidify what I already do know. Even though I mentioned that my experience did not help, I feel more comfortable using different programming structures and concepts as well as having a better view of what is possible. I can also now pursue my SCWCD certification (which I plan on having a much happier post about).

One final recommendation: get your company to pay for your certification exam. Lucky for me, mine did :) If you think that an exam is a lot at $300, compare that to the $100,000 or so your company spends on you every year (ok maybe that’s not all pay but employers pay a lot for benefits, equipment and insurance) . If it gives you even a 1% productivity increase, the returns for your company’s investment will be enormous!

Please share your SCJP experiences in the comments!

Update: Thank you to Sun Learning Services for recognizing me with an iPod Touch due to this article. Just in case you’re curious, the Sun mail did have my name wrong, it is actually me, Eric Wendelin ;)

If you liked this post, please help me share it
  • Reddit
  • StumbleUpon
  • description
  • del.icio.us
  • Digg
  • co.mments
  • Google
  • Slashdot
  • Technorati
  • TwitThis
  • E-mail this story to a friend!
  • Furl

Responses (34)

  1. Cool post, just wanted to say if your company has a deal with Sun you may even be able to get a discount on various Java training classes.

  2. Good tip, Sheila.
    Maybe I’ll take advantage of that next time. I think my company might just have a deal with Sun… ;)

  3. The process of prepare for certification exam is a very good learning experience

  4. I totally agree. I recommend it for everyone who does Java including college students :)

  5. If you use a computer to write small snippets during training/preparation consider NOT using an IDE. Actually _use_ the commandline tools and forget about autocompletion for a minute; you won’t have it during your exam!

  6. I forgot to mention this. DO NOT use any form of auto-generated code because that is the stuff you will take for granted and not truly understand come exam time.

  7. I would also recommend starting a study group with one or more members of your local JUG, as you can learn from one another.

    It can be worthwhile to read through parts of the Java Language Specification as well when you need more explanation, but I wouldn’t read the whole thing unless you’re really up for it (it can take a while) http://java.sun.com/docs/books/jls/

    I second p3t0r’s suggestion about not using an IDE — you’ll need to know how to use javac and work with the classpath, as well as know the language and APIs backwards and forwards.

    Cheers,
    Jim

  8. Everything made sense except for the last paragraph (I voted up on dzone anyway):

    “If you think that an exam is a lot at $300, compare that to the $100,000 or so your company spends on you every year (ok maybe that’s not all pay but employers pay a lot for benefits, equipment and insurance) . If it gives you even a 1% productivity increase, the returns for your company’s investment will be enormous!”

    Typically, how much productivity increase do I need to care about for myself so that my boss’ salary gets bigger and fatter everyday based on my efforts for my career advancements?? Returns for the company I work for - whether enormous or not - are for the upper management to worry about - my first motivation to pass SCJP should be only about meeting *my* career goals. The upper management is more expert than me in caring about the company’s expenses - they can remove me anytime they desire for that matter! It’s a fact. lol. Good post anyway. I respect SCJP.

  9. Thanks much for your article Eric. I sat this exam hurriedly, and failed badly. I’m scheduled for a resit, within the next 6 weeks. I think you raised a lot of valid points, that I will be incorporating in my study. And I’m certainly hoping it will make me a better programmer. Thanks for the article, and Congratulations on your pass!

  10. Congratulations Eric!

  11. Thanks Ryan and David.

    @Ryan: I’m sure you will be much better prepared for your re-test. Good luck and shoot me an email to tell me you passed!

  12. Jorge Diaz Tambley

    I had learned java by myself, but taking the exam was a different experience, it doesn’t matter that you have a LOT of experience, the questions will catch you anyway.

    I used the same book as a study guide and it was great, it also comes with a cd that has a sample exam.

    What I didn’t like is that in some questions you have to be a compiler and detect undeclared variables, or a missing }… which is not practical.

    Better luck next time.

  13. Eric,

    Good article. Thank you for posting it.

    I’m one of the guys that wrote the exam. Our goal has always been to develop an exam that is useful outside of the 4 letters that go on your resume. Studying-as-learning has always been an important part of defining what goes on the exam and how it is tested.

    Jorge,

    As for some of the trickier compiler-like exam questions: I understand your frustration. There are fine lines between a good question, a damn trick and acting as a human compiler. While we strive for the first and try to avoid the latter two, we don’t always succeed. This is largely due to the nature of the testing platform.

    As for the content of the questions: They are all based, to some degree, on situations we have seen in the real world. With well over 100 combined years of Java development experience, we have seen (and written ourselves) a lot of nasty code. The more real-world the exam is, the easier it is for someone who has had that experience and the more preparatory it is for those who have not.

    And yes, I failed the exam the first time I took is, over 11 years ago.

  14. Congratulations Eric. I think that many people underestimate how much effort is needed to pass the Sun certification exams.

  15. Thanks Casey, I agree. I think it hit me once I was taking a practice test that came with the book.

  16. Hi

    Passed this certification (SCJP 5.0) last july, got 100% :)
    I used this book and Whizlabs’ mock tests, which helped me alot to spot my weak spots, and I read the java language specs (only parts of it, of course). Read the JavaRanch forum too.

    I think the most important think to work on is the test-taking methodology, ie. how to read questions and answer them.
    First, take a glimpse on answers. If they do include “does not compile”, you know you’ll have to verify the given code sample; if it does not, don’t waste your time and just focus on the question at hand.

    Among the other things to keep an eye one, is the phrasing of the question : are you asked to check the valid propositions or the wrong ones ? Also look out for words like “always”, “may”, and so on.

    As for time, you’ve got plenty of it, so don’t rush and take your time on each question.

    Good luck :)

  17. Hello I already pass the SCJP 5 exam. I studied from the books SCJP exam for J2SE 5 by Paul Sanghera and SCJP study guide by Sierra and Bates. I think is really important to read at least one of these books. The most difficult topic for me was Treahts and Collection there are a lot of questions about these topics. Good luck and go for it!

  18. Oscar and Olivier: Congratulations!

    Threads was a difficult topic for me but ironically I got a 100% on that section. I think the strategy there was to break up the problem as much as possible and even draw a diagram.

  19. Does it matter how well one passes the exam? 100% vs. 60%? If not, I’ll happy with 60%, which doesn’t seem to be to hard, flipping coin on each question would give me %50%, I just need to work on getting 10% more :-).

    David

  20. @David:

    So my case for getting a high score is this: You want an “advertise-able” score that shows that you really know all the parts of Java that the SCJP covers because all parts are important.

    Regardless of the score you get or hope to get, this exam is about learning. I encourage you to focus on the knowledge instead of the title.

  21. HI,
    Thanks for sharing this with us. Since 4 months I am preparing for SCJP but couldn’t accelerate much.Since java is not my day to day work.
    Anyways, I will work hard for SCJP 5.0.

  22. wow. 10 days but still pass. great job! :)

    I just have time to study 2 hours every day. Its been 1 months since I started to study. I still have one month, because my internship (yeah, my company will pay for this certification) will end in the beginning of July.

    I am wondering if I can make it?

    But after read your experience, then I believe that I can!

    Thanks for sharing!! :)

  23. I like these comments its very useful to me.I think that i’ll pass in this exam.
    Thank You

  24. It’s always good to know the experience who have underwent exam… I feel good,it teaches how i’ve to prepare

  25. Eric,

    I am taking the exam on july 8th. I am a little nervous. You are right, I need to practice the code instead of just understanding the concepts. As Bruce Lee says “To know is not enough, its important to execute”.

    Karthik

  26. @manohar, aRdho, and Karthik:
    Give it all you’ve got, but also relax. Relaxing will help you focus when it is most important to do so. I hope to hear about your successes soon :)

  27. Hi everyone,

    I am planning to start preparing for SCJP exam,.I have never worked on java before but have a basic therotical knowledge of it.Please advise me how much time shuld i need to prepare for the exam.also suggest me some sites and books.

    Thanks in advance

  28. @Jaya:
    If you have basic theoretical knowledge I would suggest you take at least 2 months to study. Check out the book and sites that I recommend in this post. If you use these resources thoroughly you will not have very much trouble.

    Everyone else is encouraged to share resources that helped them :)

  29. Thanks Eric !!

  30. hi , this is deepika nice to read ur exp.and cong Eric.
    But still I want more information about the group u specified i.e. how to study in groups and hoe to form groups Thanx if suggest

  31. @Deepika:
    I never study for an exam in a group. I tend to get distracted on what I’m studying and things go much slower in a group.

    If I had to form a group, I would recruit some of my coworkers (no more than 3) to take the exam at the same time so we could study together. Being skilled at social networking also would help.

  32. I think passing the SCJP exam is not that hard but getting high score is a little challenging and that what I am working on not just to pass the exam.

  33. Taiwo Abiodun

    Just read your comments, and it was great. I’ve shedule to write the exam in 3 time.Coming to share my testimony

Trackbacks

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>