Java Full Stack Training Pathway
This course aims to provide individuals with comprehensive knowledge and skills to become proficient Java developers with a strong focus on the Spring framework for enterprise-level web development. The course will cover Java programming, Spring framework, and supporting tools and methodologies for end-to-end web development.
Assessment strategy
Participants will be frequently assessed to ensure they have proficient knowledge and skills to be productive. Assessments will include:
​
-
Individual assessments every week for feedback and progress.
-
A team-based software project based on a client requirement to assess practical application of skills.
Pre-requisites
Candidates are advised to undertake pre-learning in the following areas:
​
-
Basic understanding of programming concepts
-
Basic understanding of HTML, CSS, and JavaScript
-
Familiarity with version control systems like Git
High-level schedule
Working in an agile team
Project management
Professional skills in the workplace
Source control
DevOps-as-a-Culture
Cloud fundamentals
Databases
Programming fundamentals
Networking & Security
CI / CD basics
Project One
Front-end web technologies
API development
Automated testing
Project Two
Functional Testing
Final team-based project
End-to-End Course Outline
The outline below covers the proposed end-to-end course structure.
Days 1-2: Induction & Onboarding
-
Introduction to the course and objectives
-
Overview of the development environment setup
-
Introduction to Java and Spring
Days 3-4: Consultant Skills Workshop - Project Management
-
Digital consultant role overview
-
Key soft skills: communication, presentation, and project management
-
Assessment: Identify your own communication style
Days 5-7: Working in an Agile Team
-
Introduction to Agile methodology
-
Scrum framework: events, roles, artifacts, and values
-
Agile estimation techniques and tools (Jira, planning poker)
Days 8-9: Source Control
-
Introduction to Git and version control
-
Git workflows, command line basics, and feature-branch model
-
Introduction to shell/bash scripting
Days 10-12: DevOps as a Culture
-
Overview of DevOps principles
-
Introduction to CI/CD pipelines with Jenkins or GitHub Actions
-
Data serialization formats (JSON, XML)
Days 13-15: Cloud Fundamentals
-
Overview of cloud providers (AWS, Azure, GCP)
-
Introduction to AWS free tier and Linux basics
-
AWS configuration for Spring projects
Days 16-18: Databases
-
Fundamentals of SQL and database design
-
Writing and optimizing SQL queries
-
Introduction to Spring Data JPA for database interactions
Days 19-30: Programming Fundamentals with Java
-
Java basics: data types, operators, and control structures
-
Functions, classes, and objects
-
Object-oriented programming in Java
-
Error handling and file operations
-
Working with external libraries and APIs
Days 31-35: Web Development with Spring
-
Setting up a Spring project
-
Spring Boot basics
-
Spring MVC: controllers, services, and repositories
-
Forms and validation in Spring
-
User authentication and authorization
-
Deploying Spring applications
Days 36-40: Front-end Web Technologies
-
Introduction to HTML5, CSS3, and JavaScript
-
Integrating front-end with Spring templates
-
Introduction to JavaScript frameworks (e.g., React or Angular)
-
Asynchronous operations and AJAX
Days 41-45: API Development with Spring
-
Building RESTful APIs with Spring Boot
-
Serialization and validation
-
Authentication and permissions
-
API documentation with tools like Swagger
Days 46-50: Functional Testing
-
Introduction to testing in Spring and UAT
-
Integration testing with Spring Test
-
Continuous testing with CI tools
Days 50-60: Final Team-based Project
-
Implementing a complete web application with Spring
-
End-to-end testing and deployment
-
Presentation and review of the final project