Treehouse Techdegree

Become a Java Web Developer

Learn how to build scalable web applications using one of the most in-demand programming languages. You’ll learn the skills necessary to start a new career as a Java Web Developer, who typically earns a starting salary of $62k a year.

Start your free trial

Prepare for success

I signed up in high hopes that it would give me the foundations needed to land my first job within a year — which is exactly what it did!

Ashley Ashley Clifton JavaScript Developer

I recommend the Techdegree because it aligns your learning with the projects, which really brings the courses to life. It enriches the learning experience and takes it to a new level.

Patrick Patrick Mockridge Full Stack JavaScript Techdegree student

Learn new skills

We’ll teach you everything you need to know to build a strong technical foundation, including Java, Development Tools, Databases, HTML, Business and more.

What to expect

We've carefully crafted the Techdegree program to jumpstart your journey to become a developer.

  • 12 Projects
  • 17 Courses
  • 98 Quizzes
  • 104 Challenges
  • 3 - 12 Months
  • 200 Hours
  • Course

    Java Basics

  • Course

    Java Objects

  • Workshop

    Share Your Projects with GitHub Desktop

  • Course

    Java Data Structures

  • Course

    Local Development Environments

  • Course

    Unit Testing in Java

  • Workshop

    Continuous Integration with Java using Travis CI

  • Workshop

    Dependency Management with Gradle

  • Course

    Introduction to HTML and CSS

  • Course

    HTTP Basics

  • Workshop

    Java Lambdas

  • Course

    Intro to Java Web Development with Spark

  • Course

    Java Annotations

  • Course

    Spring Basics

  • Course

    SQL Basics

  • Course

    Modifying Data with SQL

  • Course

    Building Your Resume

  • Course

    Hibernate Basics

  • Course

    Spring with Hibernate

  • Workshop

    Debugging an Existing Java Application

  • Workshop

    User Authentication in Spring

  • Workshop

    Unit Testing a Spring Application

  • Course

    Introduction to Functional Programming

  • Workshop

    Consumer Functional Interface

  • Workshop

    Optionals - Tips and Tricks

  • Workshop

    Composing Functions in Java

  • Course

    REST API Basics

  • Workshop

    Build a REST API in Spark

  • Workshop

    Build a REST API in Spring

  • Workshop

    Building with Maven

  • Workshop

    Introduction to Design Patterns

  • Workshop

    Observer Design Pattern using Java

  • Workshop

    Deploying a Spring Application

Build real-world projects

Develop the skills professional developers use every day and complete 12 challenging projects so you can demonstrate in-demand skills. In the process of creating these projects, you’ll build a portfolio of examples to showcase your talent to potential employers.

Deleted User
  • 3 hrs
    Project

    Guess How Many Are In The Jar Game in Java

    Build a fun console-based guessing game that prompts a player to guess the correct number of items in a virtual jar filled with whatever you’d like. After the player guesses correctly, the game encourages the player to beat their score by reporting the number of attempted guesses.

    Learn More
  • 6 hrs
    Project

    Soccer League Organizer in Java

    Build a tool to help a soccer league create teams, assign players to them fairly and then print out team rosters. You'll apply your knowledge of arrays, sorting, and the Java Collections Framework.

    Learn More
  • 4 hrs
    Project

    Stack Overflow Model Unit Tests

    Developing reliable software means writing code that you’re confident will work in a variety of settings. A crucial piece to making this happen is adding software tests to your programs. Add unit tests to existing Java models to ensure that a called Stack Overboard is functioning as intended.

    Learn More
  • 10 hrs
    Project

    Build a Blog with Spark

    Build a blog web site, using Spark, a framework for developing sites with Java. Define the application routes, use DAOs (data access objects) to access application data, use a templating engine for rendering HTML and create forms for the user to add new blog entries and comment on existing ones.

    Learn More
  • 8 hrs
    Project

    Countries of the World with Spring

    Build a master/detail web application with the Spring Framework. In completing this project, you’ll practice using Spring Boot, application configuration, URI mapping in controllers, and dependency injection by autowiring Spring beans.

    Learn More
  • 8 hrs
    Project

    Analyze Public Data with Hibernate

    Create an application that loads World Bank data about Internet usage and adult literacy into a database. This command-line Java application models and analyzes the public dataset using Hibernate to manage the relationships between Java objects and relational data in a SQL-based database.

    Learn More
  • 16 hrs
    Project

    InstaTeam with Spring and Hibernate

    Build your own project management software.This professional quality project uses Spring and Hibernate to create a Java web application. The application lets users create projects, add roles to a project (e.g. developer or designer), assign collaborators, and manage the project.

    Learn More
  • 8 hrs
    Project

    Fix and Enhance an E-Commerce Shopping Cart

    Working with pre-existing, or "legacy," code is a common task for every developer. Take an existing e-commerce shopping cart application and identify bugs, fix them, and add new feature enhancements to improve the application's quality and functionality.

    Learn More
  • 8 hrs
    Project

    Todo API with Spark

    Build a RESTful Java API for a to-do list application. Using Spark, build out the server side components needed to let an already-built front end add, remove and edit items in a to-do list. Use JDBC, JSON, REST best practices and add resilient error-handling routines to handle any situation.

    Learn More
  • 16 hrs
    Project

    Home Automation REST API

    Build a Java REST API to control a home automation system. The Spring API will provide the ability to add, edit, delete rooms, equipment, and controls, and get/set the values of the controls. The student will add unit tests for all methods.

    Learn More
  • 8 hrs
    Project

    Applying Design Patterns to the Fright Machine

    Use professional coding practices to improve the flexibility and quality of an existing application. Use common design patterns, and industry best practices, to make the Java code more efficient, robust, readable, and extensible.

    Learn More
  • 60 hrs
    Project

    Recipe Site

    Create a Java web application for adding, editing and searching recipes. Using the MVC pattern with Spring, add user authentication, a favoriting mechanism, a search function and a REST API with authentication. Wire the application to a database with Hibernate, and include unit test coverage.

    Learn More

We’re in this together

You will learn from the best teachers in the industry through our interactive video courses and workshops. In addition, you’ll receive project reviews and feedback on your work, as well as access to our exclusive Slack community, where you can work directly with other students on problems you’re solving.

  • Craig Dennis
    Craig Dennis
    Teacher
    • Java
    • Data Analysis
    • Development Tools
    • Quality Assurance
  • Treasure Porth
    Treasure Porth
    Teacher
    • HTML
    • Development Tools
  • Chris Ramacciotti
    Chris Ramacciotti
    Guest Teacher
    • Development Tools
    • Java
  • Andrew Chalkley
    Andrew Chalkley
    Guest Teacher
    • JavaScript
    • Databases
    • APIs
    • Ruby
    • Development Tools
  • Rakeem Thomas
    Rakeem Thomas
    Guest Teacher
  • Kenneth Love
    Kenneth Love
    Teacher
    • Python

Your future starts here

$199/mo

  • Custom curriculum
  • Peer project reviews
  • Exclusive Slack channel
  • Portfolio of 12 real-world projects
  • Proctored final exam
  • Official Techdegree Certificate
Start your free trial

Need help? Reach us at help@teamtreehouse.com