Java

Java For Work

Enhance your Java skills with Vidya's Java for Work course. Designed for professionals, this practical training covers real-world Java programming, best practices, and industry-relevant topics to boost your productivity and career growth.

Description

According to Oracle, almost 20 billion devices run Java around the world. Java was the first language for Android. Java runs AI, microservices, serverless, machine learning pipelines, and so much of the critical infrastructure in modern applications.

Java For Work builds on the foundation of low-level primitives like conditionals and loops with a thorough treatment of object-oriented programming, functional and asynchronous programming, and software engineering best practices to enable you to build sophisticated Java programs in the real world.

What makes this course different

The typical Java course teaches you how to code in Java but not how to engineer in Java. You go back to work completely unprepared for the challenges you will face when your team expects you to deliver for a real customer.

Java for Work operates from the premise that the greatest asset in professional software engineering isn’t what you know but how fast you can learn. Here you solve unfamiliar problems by consulting your peers like us and Google and Stack Overflow for ideas. Just like every day at work. Skills ignored by other Java courses like testing, error handling, and deployment become second nature. The course concludes with a brief discussion of other languages that build on Java’s legacy like Kotlin and Scala.

When you finish this course, you will be a professional Java engineer.

Collaborating software engineers

Course Syllabus

Lesson 1: A Java Refresher

  • A Brief History of Java
  • Tooling: IntelliJ IDEA and Gradle
  • Java Object Hierarchy
  • The Anatomy of a Java Class
  • Primitives and Objects
  • Control Structures
  • The Three Collections You Have to Know
  • Generic Types
  • Practical Error Handling
  • Enums
  • Annotations

Lesson 2: Combining Object-Oriented and Functional Programming

  • Modeling Domain vs. Modeling Behavior
  • Objects and Methods
  • Inheritance, Polymorphism, and Composition
  • Functional Interfaces
  • Composing Functions
  • Practical Design Patterns

Lesson 3: Leveling Up with Java

  • Package Management Strategies
  • Avoiding null at All Costs
  • Records and Pattern Matching
  • Java Streams
  • Revisiting Conditionals
  • Asynchronous Programming with Virtual Threads
  • Temporal Types
  • Experimentation Using the REPL

Lesson 4: Professional Java

  • Automating Quality
  • APIs and JSON
  • Database Persistence
  • File Processing
  • Cloud-Native Java
  • Securing Java Applications
  • Testing with JUnit and Testcontainers
  • Documentation with JavaDoc and Snippets
  • Logging
  • Building AI Applications
  • Alternative Languages for the JVM

I am self-taught in Java with many years of experience delivering large-scale solutions ranging from microservices to web and mobile and AI applications for government and commercial clients.I have multiple Java badges on Stack Overflow, and I was even a Sun Certified Java Programmer when that was still a thing and when I thought certifications really meant something.

Course instructor Neil Chaudhuri
Neil Chaudhuri
Course instructor

Want to transform your business? Get in touch today!