Real-world projects from industry experts
With real-world projects and immersive content built in partnership with top-tier companies, you’ll master the tech skills companies want.
Advance your career with Java techniques like syntax, conditional statements, functions, loops and collections. Exit the program with employable skills to solve real-world programming problems.
At 10 hours/week
Get access to the classroom immediately upon enrollment
This Nanodegree program is intended to elevate your Java abilities and teach you the skills used by Java developers to design, code, test and deploy cutting-edge Java software. It is ideal for intermediate programmers with little Java experience who want to set themselves up for success as a professional Java developer and deploy functional Java-based applications of their own creation.
Basic programming concepts like variables, loops and conditionals.
In order to be a great Java developer you must first learn the fundamentals of Java. This course introduces the fundamental concepts and practices of Java programming. These include basic Object-oriented Programming (OOP) concepts such as classes, encapsulation and inheritance, as well as core Java concepts such as collections, exceptions and commonly used Java types.
The best Java programs combine excellent software designs with modern language features. This course will teach you some lesser known features of Java, such as functional programming, I/O, serialization, and reflection. Strengthen your software design intuition by exploring the design ideas that underpin understandable, extensible and scalable software systems. Learn the basic concepts and techniques of concurrent programming in Java, so your programs can take advantage of modern, multi-core hardware.
This course introduces Java ecosystem topics that are necessary to develop production-ready applications. It starts by covering the construction and makeup of Java program artifacts. You will learn how Java program code is compiled, packaged and executed. Next, you’ll learn how to use Maven to automate and customize the build process, as well as manage external project dependencies. This course also covers the topic of Modules, introduced in Java 9. In addition to build topics, this course will also teach you to use the tools of JUnit 5 to write unit tests and evaluate code coverage. To expand our testing capabilities for complex applications, the Mockito library and test doubles will be covered as well.
With real-world projects and immersive content built in partnership with top-tier companies, you’ll master the tech skills companies want.
On demand help. Receive instant help with your learning directly in the classroom. Stay on track and get unstuck.
You’ll have access to Github portfolio review and LinkedIn profile optimization to help you advance your career and land a high-paying role.
Tailor a learning plan that fits your busy life. Learn at your own pace and reach your personal goals on the schedule that works best for you.
We provide services customized for your needs at every step of your learning journey to ensure your success.
project reviewers
projects reviewed
reviewer rating
avg project review turnaround time
During his 20+ years of software development experience, Jeff has worked on embedded avionics flight controls systems for both Honeywell and Boeing. Jeff then moved into Java Cloud based SAAS applications. He has earned a Bachelor's and Master's degree in Computer Science from Arizona State University.
Dustin is a software engineer with 15 years of Java experience, including over 7 years designing and building large-scale systems for one of the top companies in the tech industry. He is excited to share his knowledge with you in this program.
Alex is a Senior Software Engineer for CPA Global. He is excited to combine his background as a music educator with more than a decade of enterprise Java experience to help create this hands-on course about testing and deploying Java applications.
Fundamental skills used by Java programmers to design, code, test and deploy cutting-edge Java software.
On average, successful students take 3 months to complete this program.
Java is one of the most popular computer programming languages today. Java developers are in serious demand. In fact, there are hundreds of thousands of open job opportunities posted on job boards currently. This program was designed to help you take advantage of the growing need for skilled programmers.
By the time you graduate, you’ll be prepared to land a high-paying role producing web applications in a professional setting. You’ll learn more than just writing code. For example, this Java class also teaches students to design and prototype apps using UI best practices to maximize engagement. Other Java tutorials are more piecemeal learning, but this will stand up a junior java developer so they can hit the ground running on a development team.
This is an intermediate level Nanodegree program that teaches the fundamentals of Java programming to individuals who are already familiar with computer programming and are looking to advance their careers in programming.
No. This Nanodegree program accepts all applicants regardless of experience and specific background.
No prior Java experience is required, but you should be familiar with basic programming concepts like variables, loops, conditionals, arrays, functional programming, concurrency, design patterns and methods. You should be comfortable running applications on Windows, MacOS or Linux.
You may want to prepare with our free What is Programming course or our Intro to Programming Nanodegree program.
The Java Programming Nanodegree program is comprised of content and curriculum to support three projects. We estimate that students can complete the program in three months, working about ten hours per week. Each project will be reviewed by the Udacity reviewer network. Feedback will be provided, and if you do not pass the project, you will be asked to resubmit the project until it passes.
You will have access to this Nanodegree program for as long as your subscription remains active. The estimated time to complete this program can be found on the webpage and in the syllabus, and is based on the average amount of time we project that it takes a student to complete the projects and coursework. See the Terms of Use and FAQs for other policies regarding the terms of access to our Nanodegree programs.
Please see the Udacity Program FAQs for policies on enrollment in our programs.
There are no software and version requirements to complete this Nanodegree program. All coursework and projects can be completed via Student Workspaces in the Udacity online classroom.