Skip to content

Become a Java Programmer

Nanodegree Program

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.

Enroll Now
  • Estimated time
    3 Months

    At 10 hours/week

  • Enroll by
    May 31, 2023

    Get access to the classroom immediately upon enrollment

  • Skills acquired
    Java Data Types, Java Collections, Java Syntax, Maven

What you will learn

  1. Java Programming

    Estimated 3 Months to complete

    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.

    Prerequisite knowledge

    Basic programming concepts like variables, loops and conditionals.

    1. Java Fundamentals

      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.

    2. Advanced Java Programming Techniques

      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.

    3. Java Application Deployment

      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.

All our programs include

  • 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.

  • Real-time support

    On demand help. Receive instant help with your learning directly in the classroom. Stay on track and get unstuck.

  • Career services

    You’ll have access to Github portfolio review and LinkedIn profile optimization to help you advance your career and land a high-paying role.

  • Flexible learning program

    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.

Program offerings

  • Class content

    • Real-world projects
    • Project reviews
    • Project feedback from experienced reviewers
  • Student services

    • Student community
    • Real-time support
  • Career services

    • Github review
    • LinkedIn profile optimization

Succeed with personalized services.

We provide services customized for your needs at every step of your learning journey to ensure your success.

Get timely feedback on your projects.

  • Personalized feedback
  • Unlimited submissions and feedback loops
  • Practical tips and industry best practices
  • Additional suggested resources to improve
  • 1,400+

    project reviewers

  • 2.7M

    projects reviewed

  • 88/100

    reviewer rating

  • 1.1 hours

    avg project review turnaround time

Learn with the best.

Learn with the best.

  • Jeff Phillips

    Senior Software Engineer

    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 Hellstern

    Software Engineer

    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 Pritchard

    Senior Software Engineer

    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.

Java Programming

Get started today

    • Learn

      Fundamental skills used by Java programmers to design, code, test and deploy cutting-edge Java software.

    • Average Time

      On average, successful students take 3 months to complete this program.

    • Benefits include

      • Real-world projects from industry experts
      • Real-time classroom support
      • Career services

    Program details

    Program overview: Why should I take this program?
    • Why should I enroll?

      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.

    • What jobs will this program prepare me for?

      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.

    • How do I know if this program is right for me?

      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.

    Enrollment and admission
    • Do I need to apply? What are the admission criteria?

      No. This Nanodegree program accepts all applicants regardless of experience and specific background.

    • What are the prerequisites for enrollment?

      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.

    • If I do not meet the requirements to enroll, what should I do?

      You may want to prepare with our free What is Programming course or our Intro to Programming Nanodegree program.

    Tuition and term of program
    • How is this Nanodegree program structured?

      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.

    • How long is this Nanodegree program?

      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.

    • Can I switch my start date? Can I get a refund?

      Please see the Udacity Program FAQs for policies on enrollment in our programs.

    Software and hardware: What do I need for this program?
    • What software and versions will I need in this program?

      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.

    Java Programming

    Enroll Now