Have you wondered how huge software projects, like the Google search engine, are developed? In this course, you’ll move beyond coding in the “main” method to learn to design and build more complex Java software projects (though not quite as complex as the Google search engine!). We’ll explore how to divide up a large project into a hierarchy of classes and how to increase the functionality of your projects by importing existing libraries. We’ll also look at some core algorithms for searching for and sorting data. And along the way, you will develop an exciting interactive application with a graphical user interface. In this course we want you to be inspired to create. You’ll dive into a course project right away, with each lesson designed around concepts that are directly applicable to extending the project’s functionality. The video lectures include both core content as well as testimonials and stories from real-world software engineers, conversations between real students who are learning the material that you will likely relate to, and numerous support videos that you can turn to if you get stuck.