Java In-Depth: Become a Complete Java Engineer!

Comprehensive Java programming course integrated with design principles, best practices, demos & instructor-led project.

Created by Dheeru Mundluru
Last updated 3/2018
What Will I Learn?
  • Get an in-depth understanding of core & advanced Java
  • Master design principles, best practices and coding conventions for writing well-designed, professional Java code
  • Implement instructor-led, industry-strength multi-threaded project in Eclipse using TDD principles & MVC design pattern
  • Set a firm foundation in Java for the rest of your career. You’ll be a solid Java engineer by the end of this course.
  • Gain comprehensive understanding of JVM Internals ~ the incredible platform on which Java programs run
  • Set yourself up to become an Oracle Certified Associate, Java SE 8 Programmer (1Z0-808)
  • Familiarity in using computers
  • The 3 P’s: Passion, Patience, and Perseverance. Please note it is not a crash course!!

Update on June 15th, 2017: Two new coding exercises related to interfaces and abstract classes & abstract methods have been added.

What Students are Saying About This Course:

This is by far the best advanced as well as beginner course I have ever read/seen since Andre LaMothe quit writing.” ~ Stephen Jonson

Got a job thanks to this course!” ~ Connor Lee

This is THE best course on Java on Udemy – Period! Dheeru is not only passionate about what he is coaching but also OBSESSIVE and covers every minute detail of the subject … Most lessons have demos which Dheeru makes sure that they do work without any glitches. He is a genius coder … Plus, he bases the course on the best practices from the book “Effective Java” which is great. You get to cover most of this book if you study this course! … Lastly, he uses an accurate and powerful English vocabulary I’m yet to see from other instructors. If you want to learn Java right from installing, configuring and all the way to mastering its advanced topics – look no further – you are at the right place => THIS – IS – IT !!!” ~ Richard Reddy

“This is a wonderful course. The Instructor is highly competent. He is a world-class instructor. I highly recommend this course to anyone who seriously wants to learn Java the right way or who desires to refurbish his or her Java skillset. Taking this course will definitely give you a tremendous appreciation for this great language.” ~ Carrel d’Haiti

“… the most in depth Java course I’ve seen offered anywhere. I would suggest that this course is not only for the beginner but for the intermediate Java developer that wants to ensure their knowledge…” ~ Zenko Machina

This is a fantastic course. I am a Java developer with over 10 years experience and soon to be looking for a new role. I wanted to brush up on all core Java concepts and this course goes way beyond what I was expecting. Particularly liked the Generics chapter and Collections though everything is covered in this course. Great course with awesome content and very well delivered and explained. Very happy.” ~ Tony Perrin

The best java course ever!” ~ Hamid Seleman, Senior Developer

“This course has so much depth and the Instructor is passionate, even weekly adding content to the course. I have been a Java developer for 8 years and hold a Masters degree in Computer ScienceThis is honestly the very best online Java video course on the market… wish I had have had a course like this when I first started” ~ Clive Stewart

Clear to understand, even for non-native English speaker. In depth explanation. I’d recommend not to skip familiar things, as you may learn some new insights.” ~ Paul Kerkum

I love this course for how comprehensive it is, how sincere and to the point the presenter is. For a newbie to Java, this should be the go to course….” ~ JSusan Koinonia

Course Overview:

Would you like to just acquire core Java skills or would you like to become a complete and a professional Java engineer right at the end of the course. If it is the latter, then you should read on …

This comprehensive project-based course has been designed with following objectives:

  • To help you get an in-depth understanding of both core & advanced concepts in Java
  • To teach best practices & key design principles for writing effective Java programs
  • To help you gain practical experience in writing professional-level code via instructor-led implementation of a project. Project is implemented in Eclipse using MVC design pattern, TDD (Test-Driven Development) principles and other best practices. Project also incorporates few advanced multi-threading concepts.
  • To help you understand the inner workings of Java platform (aka JVM)
  • To teach how to effectively use Eclipse IDE to write, debug, and test Java programs

The motivation behind these objectives is to help you in becoming a complete & industry-ready engineer. Most Java courses focus only on teaching core fundamentals, which at the very best equip students with good basic skills to work on small-to-medium sized projects. Most of these students fall short when it comes to implementing more complex projects. To design elegant solutions for large, complex projects one needs to have a much deeper understanding of language features along with knowledge of the recommended best practices & design principles. More importantly one needs to know how to put all of these into practice. This comprehensive one-stop project-based course has been designed to equip students with these skills.

Course Specifics:

This course begins by giving a birds-eye view of Java covering everything from origin of Java to installing Java and writing your first Java program. Even the most fundamental concepts like compilation & interpretation are explained. All other topics are covered in-depth starting from language basics, object-oriented concepts & design (including Java 8 features like default & static methods in interfaces), JVM, exceptions, IO, data structures, generics, multi-threading, nested classes, enums and lambdas.

Each lecture has been very carefully crafted. Motivation behind every concept is clearly explained with well thought out examples and nice animations. Object-oriented concepts like inheritance & polymorphism are explained through a real-world case-study, which is also implemented as part of the course project. Every concept has been well-tested through ready-to-run, downloadable demo programs, which are implemented and executed in the course. Every chapter ends with a carefully crafted quiz to test what was learnt. Many chapters also include challenging coding exercises and student solutions are also auto-evaluated via JUnit scripts, i.e., students would instantly know whether their solution is right or wrong. One of the coding exercises is on Sentiment Analysis, which is a hot area in the industry.

The course project simulates a real-world product that is based on bookmarking concept. The project is instructor-led and is implemented using professional coding conventions & best practices. It follows good object-oriented design, incorporates MVC design pattern and also uses Test-Driven Development (TDD) methodology. Parts of the project use advanced multi-threading capabilities. Eclipse IDE is used for developing the entire project. There is also a separate dedicated chapter just for learning Eclipse IDE, which would give you a solid foundation in using Eclipse to effectively write, debug, and test Java programs. The chapter includes lessons to use Eclipse’s debugger & JUnit unit testing framework.

Finally, the course also discusses over half of the best practices/design rules outlined in the popular Effective Java book. Many rules are actually demonstrated in code. This is one of the highlights of the course and will make you truly complete!

About the Instructor & On His Motivation for Building This Course:

I have around 15 years of experience in Java developing complex data integration & mining software for start-ups in silicon valley and elsewhere. After working for so many years with many excellent engineers, I realized that sometimes we fell short of developing the most effective solutions to some of the problems we were dealing with. This sometimes led to several rounds of refactoring resulting in loss of valuable time. This made me realize that it was a result of not being taught Java programming in the right way. I realized that a more holistic approach to teaching Java is needed where the language features are taught along with best practices & design principles that any serious developer must know. This course is a result of this realization and it has taken me around 3 years of full-time effort (considered equivalent to a decade if working on a part-time basis) in developing it. Building this course itself has been a wonderful journey for me and I hope you will also find this course to be equally enriching. I will continue to devote myself in building this course towards making it one of the best Java courses out there. Always, feel free to message me if you have any questions and I promise to address them as quickly as I can (almost always well within a day 🙂

Who is the target audience?
  • Complete beginners. We got you covered. We’ll start from compilation & interpretation.
  • Programmers switching from other languages
  • Java programmers who are not feeling confident about their existing Java skills
  • Java programmers who want to learn about design principles & best practices. Any serious programmer should know this stuff!

Size: 8.14G



  1. Muhammad Awais Javed 07/23/2018 Reply
  2. Rai Ansar 06/20/2018 Reply
  3. KUNAL 06/11/2018 Reply
    • Gaurav 07/02/2018 Reply
  4. Pravash 05/30/2018 Reply
  5. demelza 05/29/2018 Reply
  6. Ansh Goel 04/29/2018 Reply
  7. Marcus 04/19/2018 Reply
  8. ombilangu 04/15/2018 Reply
    • Muhammad Awais Javed 07/23/2018 Reply
  9. John 04/10/2018 Reply
  10. uno 04/10/2018 Reply
  11. David 04/10/2018 Reply
    • xavier 04/10/2018 Reply
  12. AsH 04/08/2018 Reply
  13. Mukesh 03/25/2018 Reply
    • Mukesh madar 04/12/2018 Reply
  14. akash 03/24/2018 Reply
  15. Nitin 03/03/2018 Reply
  16. Mukesh 03/03/2018 Reply
  17. xtar 02/19/2018 Reply
  18. Nitin 02/15/2018 Reply
  19. yoyoloit 02/11/2018 Reply
  20. thfh fhfh 02/09/2018 Reply
  21. Michael Boniface 01/28/2018 Reply
  22. Nishant 01/28/2018 Reply
  23. ascension 01/27/2018 Reply
  24. Razib Hossain 01/20/2018 Reply
  25. Razib 01/20/2018 Reply
  26. Snehashis 01/19/2018 Reply
  27. joe 01/17/2018 Reply
  28. hackerin Juan 01/16/2018 Reply
  29. Akash 01/15/2018 Reply
  30. Snehashis Sanyal 01/11/2018 Reply
  31. asdf 01/11/2018 Reply
  32. Snehashis 01/06/2018 Reply
  33. freetutorials 01/03/2018 Reply
  34. guest 01/02/2018 Reply
    • devid 01/02/2018 Reply
  35. Baskar rao 01/02/2018 Reply
  36. Shashi 12/31/2017 Reply
    • Jagadish 01/01/2018 Reply
      • devid 01/02/2018 Reply
  37. Akash 12/31/2017 Reply
  38. Jagadish 12/31/2017 Reply
  39. devid 12/31/2017 Reply
  40. SAM 12/31/2017 Reply
    • devid 12/31/2017 Reply
  41. Ankush 12/31/2017 Reply
  42. samrat 12/31/2017 Reply
  43. Ant 12/31/2017 Reply
  44. Maestro 12/20/2017 Reply
  45. Silver 11/23/2017 Reply
    • Ramesh 12/17/2017 Reply
  46. Anonim 11/20/2017 Reply
    • hawa 11/26/2017 Reply
  47. Ars Rahman 11/05/2017 Reply
  48. Bilal Pervaiz 10/09/2017 Reply
  49. Shahbaaz Shah 09/08/2017 Reply
  50. bittaurus 08/20/2017 Reply
  51. Sameera Chathuranga 08/18/2017 Reply
  52. Saif 08/18/2017 Reply
  53. AVICK MONDAL 08/17/2017 Reply
  54. murthy 08/16/2017 Reply
  55. murthy 08/16/2017 Reply
  56. husnain 08/12/2017 Reply
  57. salah 08/08/2017 Reply
  58. Smith 07/31/2017 Reply
  59. Dan Spoitner 07/29/2017 Reply
  60. Ole 07/28/2017 Reply
  61. Mnick 07/21/2017 Reply
    • Mnick 07/21/2017 Reply
    • murthy 08/16/2017 Reply
  62. zuhu 07/18/2017 Reply

Add a Comment

Your email address will not be published. Required fields are marked *