80+ Hours Video, Lifetime Access
100k+ Students
50 Million+ Minutes Watched


This is hands down the greatest online course I've ever taken

Carlvin Sanon 

Program Highlights

Trusted by over 100k Learners from 160+ Countries

  • Master Java Language

    An industry-vetted, comprehensive curriculum to help you master Core & Advance Java including JVM internals.

  • Learn Best Practices

    Learn design principles, best practices and coding conventions for writing well-designed, professional Java code. A USP of the program.

  • Instructor-led Project

    Gain practical experience by implementing an instructor-led project using professional coding conventions.

  • World-class Faculty

    Learn from a highly experienced instructor & industry veteran who helped many students kickstart their careers as confident Java engineers.

  • Fall in Love

    Set firm foundation for rest of your career. Your Java skills will be on par with engineers at top companies like Google. That's our promise.

  • Professional Certification

    You can optionally get certified as Complete Java Engineer! - our endorsement that you mastered Java and are industry-ready. See below for details on assessments.

Industry-vetted program to help you become a Complete & Professional Java Engineer!

Promo video explaining the need for Complete Engineers and how the course accomplishes that. Must watch.

Yes! Sign me Up

 

Course Objective

Become a Complete Java Engineer!

This Master Course has been meticulously developed for half-a-dozen years and follows a uniqueindustry-vetted curriculum to help you become a Complete & Professional Java Engineer. The curriculum has been designed to address several challenges many engineers are facing esp. when implementing large, complex software.  Their solutions are often poorly implemented resulting in several rounds of "code refactoring" leading to loss of valuable time for the organization. This can be attributed to the way we are taught programming where focus is on teaching only programming language features without any emphasis on best practices & design principles needed for building good softwareTo address these short comings, the course has been built with a larger goal of teaching not just Java, but also how to write well-designed, professional code

Course Description

A holistic approach

To address the shortcomings in current courses, the program takes a holistic approach by incorporating the following:

1. Comprehensiveness - To ensure that you master Java, the program is highly comprehensive covering most language features and discussing them at a very in-depth level. The program includes two parts - Core & Advance Java. Everything from Java language basics to concurrency and databases to functional-style and even modular programming are discussed. Each lecture is carefully crafted explaining the motivation with well thought out practical examples.

2. Best Practices & Design Principles - To further ensure you are industry-ready and can write well-designed, professional code, tons of industry standard best practices & design principles are discussed. This is a USP of the program.

3. Instructor-led Project - In addition to learning best practices, it is also good to have the experience of implementing something concrete. Towards this end, you'll implement an instructor-led Java EE Web application using professional coding conventions with Eclipse as IDE. This is akin to working with an experienced engineer on your first job.

The program can take around 4 months full-time to complete and is self-paced. Check out Core & Advance tabs for more specifics.

Mastering Core Java with Best Practices

The Core Java part constitutes the first 60% of the program and can take around 2 months full-time. Though this part covers the core fundamentals, you'll still learn many design principles & best practices followed in the industry. The instructor-led project also starts after learning object-oriented concepts and will be built progressively as we learn new concepts. You'll also learn how to use Eclipse professionally. Below is a high-level break-up of topics discussed under Core Java.

  • Language Basics & Object-Oriented Concepts
  • Eclipse Tutorial & JUnit Framework
  • JVM Internals, Exceptions, Input-Output
  • Collections Framework & Generics Basics
  • Using Git & GitHub from within Eclipse
Mastering the Advance Stuff

The Advanced Java part constitute last 40% of the course and it also takes around 2 months of full-time. Below is a high-level break-up of topics discussed under Advanced Java. The instructor-led project that started in the core part will be completed in this part. By the end you would have implemented a full Web application with MySQL as database. Finally, after being introduced to JPMS, you'll learn how to build software that is space-optimized, i.e., software that takes very little space.

  • Advance Generics
  • Concurrency (aka Multi-threading)
  • Databases (SQL) & JDBC
  • Functional-style Programming
  • Introduction to Java EE
  • The Java Platform Module System (JPMS)
  • Custom Runtime Images
Be certified as Complete Java Engineer!

You can also optionally earn our Complete Java Engineer! certification - our endorsement that you've mastered Java and are ready to write professional-level code. To receive this certificate, apart from completing the lectures & quizzes, you would have to complete the below programming assessments all verified by our engineers.

  • 20 coding exercises
  • Instructor-led project
  • Mini-project - implementing simple Java compiler
Get a glimpse of the teaching style!
Few Preview Lectures

This lecture conceptually explains basic concepts like Class & Object through nice illustrations.

Class & Objects

Introduces Switch statement. Explains how it is more readable, concise and efficient compared to if-statement.

Switch Statement: Introduction

This lecture demonstrates how a thread is launched and also put to sleep.

Launching a Thread!

Course curriculum

    1. Chapter Introduction

    2. What is Java & Who is Using It?

    3. Story behind Java's Creation ~ A Brief History

    4. Compilation

    5. Platform Dependency

    6. Interpreter

    7. Platform Independence in Java

    8. Java Virtual Machine (JVM)

    9. An Overview of Java SE

    10. Java SE Release Cycles & Release History

    11. Installing Java 17 on Windows

    12. Installing Java on Mac

    13. Installing Java on Linux

    14. Setting Classpath Environment Variable

    15. Writing First Java Program

    16. Conclusion ~ Chapter 1

    17. Chapter 2 Quiz

    18. Important Q&A Discussions! (+)

    1. Chapter Introduction

    2. Class & Objects

      FREE PREVIEW
    3. Absolute Java Basics

      FREE PREVIEW
    4. Identifiers - A Note on Naming Rules

    5. Variables: Introduction

    6. Declaring & Re-initializing Variables

    7. Assignment: Currency Converter - Creating a Class with Variables

    8. Variables: Primitive Types

    9. Primitive Variables: Integers

    10. Question on Binary Representation of Negative Number

    11. Other Integer Literal Formats

    12. Use byte & short Variables Judiciously (+)

    13. Primitive Variables: Floating-point Numbers

    14. Floating-point Pitfalls*

    15. Primitive Variables: Character Data Type

    16. Alternate ways to initialize char variables

    17. Primitive Variables: Boolean Data Type

    18. Quiz: Primitive Variables

    19. Variable Kinds - Instance, Static, and Local Variables

    20. Multi-variable Declaration Statements

    21. Variables: Type Casting

    22. Variables: Object References

    23. Statements

    24. Arrays

    25. Assignment: Currency Converter - Array Creation & Accessing its Elements

    26. 2D Arrays

    27. 3D Arrays

    28. Methods: Introduction

    29. Method Types ~ Instance & Static Methods + Demo

    30. Summary on Accessibility of Members from Static & Instance Methods

    31. Assignment: Currency Converter - Invoking Methods of an Object

    32. How Data is Passed to Methods in Java?

    33. Method Overloading

    34. Methods: varargs

    35. Brief Summary on varargs Parameter

    36. Constructors

    37. Constructor Overloading

    38. Constructor Overloading ~ Alternate way of delegating

    39. Minor Note on Method Invocation & Implicit Narrowing Conversion

    40. this Reference

    41. Demo: Reinitializing Object References ~ More Brainstorming! (Incl. Assignment)

    42. Minor Note on Executing StudentTest and a Java 11 Feature

    43. Coding Exercise 1: Implementing Instructor Class ~ Manipulating Arrays with Object References

    44. Review of Exercise 1 Solution with Best Practices

    45. Conclusion

    46. Chapter 3 Quiz

    47. Important Q&A Discussions! (+)

    1. Chapter Introduction

    2. Operators

    3. Arithmetic Operators

    4. Arithmetic Operation Rules

    5. Minor Clarification on Arithmetic Operator Precedence Rule

    6. Quiz: Arithmetic Operators

    7. Note on Student Class

    8. Comparison Operators

    9. Logical Operators with Operator Precedence

    10. Car Price Estimator ~ Coding Exercise for Comparison & Logical Operators

    11. Coding Exercise 2: Car Price Estimator ~ Putting Comparison & Logical Operators into Action

    12. Car Price Estimator - Exercise Solution Review

    13. Bitwise Operators

    14. Quick Note on Bitwise Operators with Boolean Operands

    15. Bit Shift Operators

    16. Quiz: Bitwise & Bit Shift Operators

    17. Control-flow: if-statement

    18. Coding Exercise: Amusement Park Ticket Price Calculator ~ Putting if statements into Action

    19. Switch Statement: Introduction

    20. Switch Restrictions

    21. Arrow Labels in Switch (Java 14)

    22. Switch Expressions (Java 14)

    23. Quiz: switch Statement

    24. Control-flow: Ternary

    25. Additional Notes on Ternary Operator

    26. Control-flow: for Statement

    27. More for Statement ...

    28. Another Look at Nested for Statement

    29. for-each Statement*

    30. Variable Scope

    31. Exercise

    32. Coding Exercise 3: Computing GPA ~ Putting Operators & Control-flow to Test

    33. Computing GPA - Exercise Solution Review

    34. Demo: while Statement

    35. Demo: do Statement (incl. Scanner Class for taking Input)

    36. Blocks

    37. break Statement

    38. Labeled Statement & Labeled break

    39. continue Statement & Labeled continue

    40. Recursion

    41. Minor Correction in Binary Search Code

    42. Conclusion

    1. Chapter Introduction

    2. Java API*

    3. Accessing Packages

    4. Creating Packages & Classpath Management

    5. Naming Packages

    6. Access Levels

    7. More on private Modifier

    8. Chapter 5 Quiz: Packages & Access Levels

    1. Introduction

    2. Installing Eclipse

    3. Writing a Java Program in Eclipse

    4. Eclipse Build Process

    5. Importing Demo Code

    6. Source Code Navigation

    7. Automatic Source Code Cleaning & Generation

    8. Shortcuts Cheat Sheet

About this course

  • ₹9,000.00
  • 511 lessons
  • 81.5 hours of video content
  • 20 Coding Exercises, Quizzes and Instructor-led Project
  • Duration: 4 months approx.
  • Self-paced, lifetime access
The Instructor is highly competent. He is a world-class instructor ... Taking this course will definitely give you a tremendous appreciation for this great language.
Carrel d'Haiti
MEET YOUR INSTRUCTOR

Dheeru Mundluru is the instructor for this program. A passionate software engineer & educator, Dheeru has around 15 years of experience developing innovative software for start-ups in Silicon Valley and elsewhere. He holds a Ph.D. in Computer Science from University of Louisiana at Lafayette (USA). He is an experienced online instructor with over half-a-dozen years of teaching experience with over 100k students globally. He has also been rated as one of the top instructors on Udemy. His engineering expertise includes developing complex Web data integration & mining software with Java as the main programming tool. Coming from start-up world, he also has extensive end-to-end experience in developing Web applications using technologies such as Spring, Hibernate, MySQL, and Solr.

Writing well-crafted code that follows the best design practices is of utmost importance to him. He brings the same level of passion and completeness to his teaching.

What our students are saying

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

Stephen Jonson

One of the best courses I have taken on coding in general! On par with courses you can take from Stanford Engineering Everywhere.

Kaloyan T

This is hands down the greatest online course I've ever taken ... To really benefit from this course, you'll have to sit there and bang your head but if you take careful notes and make sure you can explain each step you're taking to solve a problem, you'll come out on top. I am now a data engineer and this course is one of the biggest catalysts for my transition into tech.

Carlvin Sanon

Few Companies where our Alumni Work

Frequently Asked Questions
Yes. Course is especially designed to help "absolute" beginners to truly master Java and use it professionally. Only requirement is you need to put in lot of effort and work through the course patiently & systematically. So, no prerequisites.
You can start & finish it anytime. For someone completely new to programming, it can take around 3-4 months of full-time effort to complete it the right way.
The last 5 sections (starting from JPMS) will be accessible one week after enrollment. Rest of the content is accessible right away.
Absolutely. As mentioned in course description, a USP of this course is its in-depth coverage of design principles & best practices for building well-designed software. The course was designed after realizing that many software engineers were lacking these skills.
No. To ensure course is right fit, please review the preview videos, course description and curriculum carefully.
Yes. Complete Java Engineer certification is optional. It is our endorsement that you've mastered Java and are ready to write professional-level code. Please check out the Professional Certification section in Course Description to learn about its requirements.

Discover your potential, starting today