0% found this document useful (0 votes)
167 views33 pages

DN4.0 Deepskilling Handbook Java FSE

The Digital Nurture 4.0 Deep Skilling Handbook for Java FSE outlines an 8-week learning program focusing on essential skills such as Design Patterns, Data Structures, Java, PL/SQL, and more. It emphasizes a blended learning approach with self-paced resources and weekly sessions with subject matter experts, requiring hands-on exercises and a final assessment for completion. The program aims to enhance practical understanding and application of programming concepts through structured modules and effective learning strategies.

Uploaded by

venkat Mohan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
167 views33 pages

DN4.0 Deepskilling Handbook Java FSE

The Digital Nurture 4.0 Deep Skilling Handbook for Java FSE outlines an 8-week learning program focusing on essential skills such as Design Patterns, Data Structures, Java, PL/SQL, and more. It emphasizes a blended learning approach with self-paced resources and weekly sessions with subject matter experts, requiring hands-on exercises and a final assessment for completion. The program aims to enhance practical understanding and application of programming concepts through structured modules and effective learning strategies.

Uploaded by

venkat Mohan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

Digital Nurture 4.

0
Deep Skilling Handbook - Java FSE

1
Program Highlights

• The Deep Skilling learning program runs for a period of 8 weeks. Go through the recommended self-
learning resources and practice the exercises to excel in the recommended Java FSE modules.

Program
• Highlights
Deep Skilling covers the below mentioned skills.

• Design Patterns and Principles | Data Structures and Algorithms | Spring Core and Maven |
PL/SQL Programming | Spring Data JPA with Spring Boot | Hibernate | Spring REST using Spring
BootHighlights
Program | Microservices and Frameworks | Test driven design | Logging framework | Version control |
DevOps concepts | Front-end JS Framework | Cloud fundamentals | GenAI fundamentals

Recommended Program Sequence


Program Highlights
The learning journey contains the modules mentioned above, followed by a Deep Skilling Final
Assessment. It is recommended to follow a sequence of skills learning, the details of which is given
below.
Reason for the sequence recommendation:
Program Highlights
Any engineering competency landscape can be classified into four major constructs

1. Engineering Concepts
The core concepts for any engineering landscape. This is the foundation on which all programming
languages and frameworks are built.
Program Highlights
Relevant skills:
• Design Patterns and Principles
• Data Structures and Algorithms

2. Programming
Program Languages
Highlights
The languages are used to implement the necessary logic for the requirements.
Relevant skills:
• Java - Covered in upskilling
Program
• SQLHighlights
– Basic (covered in upskilling) and Advanced (covered in deep skilling)
• TDD using JUnit5 and Mockito
• SLF4J logging framework
3. Products and Frameworks
There are numerous frameworks in the programming family to build applications. These enable the
programmers to develop different types of applications by providing a gamut of features provided
over a single integrated environment.
Relevant skills:
• Spring Core and Maven

2
• Spring Data JPA with Spring Boot, Hibernate

• Spring REST using Spring Boot 3


• Microservices with Spring Boot 3 and Spring Cloud
• React & Angular overview

4. Platforms
These are the enablers as a base to host the application developed using the Engineering concepts,
programming languages, product and frameworks to make it accessible by all users, reliable and
scalable.
Relevant skills:
• GIT
• CI/CD
• Containerization using Docker
• Cloud Fundamentals
Apart from all the mentioned skills, the very widely emerging concentration that any industry is looking
into is the ‘Generative Artificial Intelligence’ or the ‘GenAI’.
Let us get an introduction to it. You can go through it in the module ‘Gen AI Fundamentals and Tools’.

Program Completion Criteria

To successfully complete this learning program, candidates must meet the following criteria:

Hands-on Exercises:
• Candidates must complete hands-on exercises mapped against every skill. These exercises are
designed to reinforce learning objectives and ensure a practical understanding of the material.

Final KBA Assessment:


• Candidates must pass the final Knowledge-Based Assessment (KBA). This assessment will evaluate
their comprehensive understanding and application of the concepts covered throughout the program.

Learning Approach

DN 4.0 Deep Skilling Program adopts a comprehensive and blended learning approach to ensure an
engaging and effective educational experience.
The program comprises two essential learning components:
• Self-paced learning through open-source learning reference links.
• Weekly SME connect sessions conducted by experts.

Self-Paced Learning using Open-source Reference Links


• Please refer to the learning reference links provided to learn and understand the recommended
concepts.
• We expect you to dedicate 8-10 hours of focused attention weekly to your learning modules.

3
SME Connect Session
• We have scheduled sessions with Subject Matter Experts (SMEs) that are designed to deepen your
understanding of complex topics.
• 100% attendance is mandatory for SME Connect sessions.
• Engage actively in doubt clarification sessions, asking questions and seeking clarification on
challenging topics.
• Benefit from the experts’ experience and insights to gain a deeper understanding of the subject matter.

Disclaimer: Cognizant does not claim ownership or responsibility for the content or any issues with the links
provided, as they are merely references available on the internet. Candidates are free to leverage additional
Effective
sources beyondLearning
what hasStrategies
been provided to enhance their skill capabilities for Deep Skilling.

Effective Learning Strategies


Program Highlights
Create a Study Schedule Set Clear Goals Stay Organized Active Learning
• Dedicate specific times • Define what you • Keep track of your • Engage with the
each week for learning. want to achieve progress and material through hands-
• Program
Aim for 8-10 hours each week.
of Highlights deadlines. on exercises.
study per week. • Break down tasks • Use tools like • Practice coding and
into manageable calendars, to-do solving problems
chunks. lists, and reminders. regularly.

Duration Recommendation

Weekly Learning: 8-10 hours Total Program Duration: 8 weeks


• Allocate 1-2 hours daily or schedule longer • Follow the weekly recommendations.
sessions on weekends. • Ensure to complete the mandatory exercises
• Balance your learning with regular academic and review sessions.
commitments.

Where to Practice?

Online Code Editors Installed Software Tools


• Use platforms like Repl.it, OnlineGDB, and • Set up Integrated Development
Programiz for practice. Environments (IDEs) like VS Code, IntelliJ
• Ideal for quick testing and sharing code IDEA, Spring Tool Suite, or Eclipse.
snippets. • Install Visual studio code from Download
Visual Studio Code - Mac, Linux, Windows
• Install necessary tools and libraries as per
course requirements.

Exercise Instructions

In this learning program, you will be required to complete exercises designed to reinforce the concepts
learned during the week. These exercises are hosted on a public GitHub repository and must be
downloaded and solved along with the learning. Follow the instructions below to ensure a smooth and
productive exercise workflow:

4
1. Accessing Exercises:
• Each week, exercises will be made available in our public GitHub repository.
• The repository URL is this

2. Downloading Exercises:
• You’ll see the options ‘Java FSE’ as shown in the screenshot below. Click the ‘Code’ button as
shown in the screenshot and choose the option ‘Download zip’. This will download all the
required Hands-on content for your practice.

3. Solving the Exercises:


• You’ll need to complete Mandatory hands-on, identified for every skill. The details of such
hands-on is provided in the file ‘DN 4.0 - Java FSE Mandatory hands-on detail.xlsx’ in the same
GitHub repository. The remaining ones are additional ones, which is up to you to attempt them.
• Solve the problem statements provided in the downloaded files.
• Ensure that you understand the problem requirements and apply the concepts learned during
the week.
• Take your time to think through the solutions and code them accurately.

4. Self-Evaluation:
• After completing the exercises, evaluate your solutions based on the problem criteria.
• Compare your approach with any hints or solutions provided if available.
• Reflect on any mistakes or areas where you can improve.

5. Submitting Solutions:
• Firstly, organize your solutions week-wise and keep them in a folder.
• Create a public repository in your personal GitHub account, upload your solution folder, and
share the URL with the POC on demand.

6. Additional Support:
• If you encounter difficulties or have questions about the exercises, seek help from your peers.
• Utilize the resources and links provided in this handbook for further assistance.

Upskilling skills – A quick recap

5
Hi Champ – Welcome to the Deep skilling of Digital Nurture 4.0 program. Before you delve deep into the
skills into this, with utmost sincerity, please do go through the upskilling handbook and refresh the basic
programming skills to keep yourself abridged.

Always remember – The Object-Oriented Programming concepts are the core for any
Programming language or frameworks.

Correlate the concepts you learn with real-life to understand and relate better for better
understanding and life-long knowledge retention.

All the best!

FSE construct - Engineering concepts


Engineering Concepts
The core concepts for any engineering landscape. This is the foundation on which all the programming
languages and frameworks are all built.
Relevant skills:
• Design Patterns and Principles
• Data Structures and Algorithms
Please plan to complete the skills in 1 week.

Module 1 - Design Patterns and Principles

Overview:

This module introduces learners to essential design principles and patterns that are crucial for creating
robust and maintainable software. Learners will delve into the SOLID principles, which include SRP, OCP,
LSP, ISP, and DIP. They will also explore common design patterns, such as Creational, Structural, and
Behavioral patterns, which provide reusable solutions to common design challenges. The module
combines theoretical insights with practical exercises, helping learners understand and apply these
concepts in their projects, ultimately enhancing their ability to write clean, efficient, and scalable code.

Learning Objectives:

After completing this module, users will be able to:

• Grasp the importance of the Single Responsibility Principle (SRP).


• Implement the Open/Closed Principle (OCP) to create extendable software.
• Ensure software components adhere to the Liskov Substitution Principle (LSP).
• Design interfaces following the Interface Segregation Principle (ISP).
• Apply the Dependency Inversion Principle (DIP) for flexible dependency management.
• Recognize and apply Creational Patterns.
• Utilize Structural Patterns to build robust systems.
• Employ Behavioral Patterns for effective object interaction.
• Improve code reusability and reduce duplication through design patterns.

6
• Solve common software design problems using appropriate design patterns.
• Evaluate and choose the right design pattern for a given problem context.

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


SOLID What & Why, The SOLID https://www.baeldung.com/solid-principles
Principles Principles of Object-
Oriented Programming -
The Single Responsibility
Principle, The Open-
Closed Principle, The
Liskov Substitution
Principle, The Interface
Segregation Principle, The
Dependency Inversion
Principle
Commonly used GoF, Creational Patterns https://medium.com/@softwaretechsolution/design-
Design Patterns - Singleton Pattern, pattern-81ef65829de2
Factory Method Pattern,
Builder Pattern;
Structural Patterns -
Adapter Pattern,
Decorator Pattern, Proxy
Pattern; Behavioral
Patterns - Observer
Pattern, Strategy Pattern,
Command Pattern;
Architectural Patterns -
Model-View-Controller
(MVC), Dependency
Injection

Check Your Understanding:

Design Patterns Quiz

Hands-On:

• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise
Instructions section above to access the practice content.

Module 2 - Data Structures and Algorithms

Overview:

This module focuses on core data structures and algorithms, foundational for writing efficient and scalable
code. Learners will explore key data structures such as arrays, linked lists, and understand their
implementation and application scenarios. Additionally, they will delve into fundamental algorithms
including searching (linear search, binary search) and sorting (bubble sort, quick sort, merge sort). The
7
module emphasizes practical implementation through coding exercises, enabling learners to apply these
concepts effectively in real-world programming challenges.

Learning Objectives:

After completing this module, learners will be able to:

• Choose appropriate data structures based on problem requirements.


• Apply searching algorithms to find elements in data structures.
• Utilize sorting algorithms to order data efficiently.
• Solve coding problems using appropriate data structures and algorithms.

• Analyze algorithmic complexities to optimize performance.


• Design efficient and scalable solutions for software development tasks using learned concepts.

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Analysis of Introduction, Why DS& https://www.geeksforgeeks.org/design-
Algorithms Algorithm, Types of DS, and-analysis-of-algorithms/
Notations, Time and Space
Complexity, Start using
frameworks for describing and
analyzing algorithms, Begin
using asymptotic notation to
express running-time analysis,
Asymptotic notations for run-
time analysis of algorithms,
Best Case, Average Case,
Worst case analysis of an
algorithm, Finding Time
Complexity of few iterative and
recursive algorithms
Sorting Bubble, Insertion, Heap Sort, https://www.geeksforgeeks.org/sorting-
Quick Sort, Merge Sort - algorithms/
Worst, Average and Best-Case
analysis
Arrays Array Traversal - Array https://www.geeksforgeeks.org/array-
representation in Memory, data-structure-guide/
Measuring Time complexity,
Searching, Traversal in Arrays,
When to use Arrays
Linked List Single Linked List, Circular https://www.geeksforgeeks.org/linked-list-
Single Linked List, Double in-java/
Linked List, Circular Double
Linked List - Search, Inert,
Traverse, Delete operations,
Time complexity
Searching Linear Search, Binary Search https://www.geeksforgeeks.org/searching-
algorithms/#basics-of-searching-
algorithms

8
Check Your Understanding:

Hands-On:

• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise
Instructions section above to access the practice content.

FSE construct - Programming Languages

The languages are used to implement the necessary logic for the requirements.
Relevant skills:
• Java - Covered in upskilling
• SQL – Basic (covered in upskilling) and Advanced (covered in deep skilling)
• TDD using JUnit5 and Mockito
• SLF4J logging framework

Please plan to complete this in 1 week

Module 3 - PL/SQL Programming


Overview:

This module introduces learners to the fundamental concepts of PL/SQL, a procedural extension of SQL
used for developing efficient database applications. Learners will explore PL/SQL's syntax, structure, and
essential constructs such as variables, control structures, exception handling, cursors, stored procedures,
functions, packages, and triggers. By understanding these concepts, learners will gain proficiency in
leveraging PL/SQL to enhance database management, automate tasks, and enforce business rules
effectively.

Learning Objectives:

After completing this module, learners will be able to:

• Develop efficient database applications using PL/SQL constructs.


• Implement error handling strategies and optimize data retrieval using cursors.
• Design and manage stored procedures, functions, packages, and triggers for enhanced
database functionality.
• Apply PL/SQL effectively to automate tasks and enforce business rules within database
environments.

Self-Learning (Open-source links):


9
Key Topics Sub-topics Learning Reference Links
Introduction to What is PL/SQL?, Importance https://www.geeksforgeeks.org/plsql-
PL/SQL of PL/SQL in Database introduction/
Management, Differences
between SQL and PL/SQL
PL/SQL Overview of PL/SQL https://www.educba.com/pl-sql-block-structure/
Environment Environment, Understanding
PL/SQL Block Structure,
Anonymous Blocks vs. Named
Blocks
Basic PL/SQL Declaring Variables, Data https://www.tutorialspoint.com/plsql/plsql_basic_
Syntax Types in PL/SQL, Assigning syntax.htm
Values to Variables
Control Conditional Statements (IF- https://docs.oracle.com/cd/A97630_01/appdev.9
Structures THEN-ELSE), CASE 20/a96624/04_struc.htm
Statements, Loops (FOR,
WHILE, and LOOP)
Error Handling Understanding Exceptions, https://docs.oracle.com/cd/B13789_01/appdev.1
Predefined Exceptions, User- 01/b10807/07_errs.htm
Defined Exceptions, Exception
Handling in PL/SQL
Cursors Introduction to Cursors, https://www.tutorialspoint.com/plsql/plsql_cursor
Implicit vs. Explicit Cursors, s.htm
Cursor Operations (OPEN,
FETCH, CLOSE)
Procedures Creating Stored Procedures, https://docs.oracle.com/en/database/other-
and Functions Creating Functions, databases/timesten/22.1/plsql-developer/pl-sql-
Parameters (IN, OUT, IN procedures-and-functions.html
OUT), Differences between
Procedures and Functions
Packages Introduction to Packages, https://docs.oracle.com/en/database/oracle/orac
Creating Package le-database/23/lnpls/plsql-packages.html
Specifications, Creating
Package Bodies, Benefits of
Using Packages
Triggers Introduction to Triggers, Types https://docs.oracle.com/en/database/oracle/orac
of Triggers (BEFORE, AFTER, le-database/19/lnpls/plsql-triggers.html
INSTEAD OF), Creating and
Managing Triggers

Check Your Understanding:

Hands-On:

• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise
Instructions section above to access the practice content.

10
Module 4 – Test driven development and Logging framework

Overview:

This module focuses on the concepts of Test-driven development and tools used for it. The features of
tools like Junit and Mockito for unit testing, mock the dependencies to complete the unit testing. Basics of
automation testing tools and logging framework.

Learning Objectives:

After completing this module, learners will be able to:

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to What is TDD?, Benefits of TDD, https://www.geeksforgeeks.org/test-driven-
TDD TDD vs. Traditional Testing development-tdd/

https://developer.ibm.com/articles/5-steps-of-test-
driven-development/

TDD Cycle Red-Green-Refactor Cycle, https://www.geeksforgeeks.org/test-driven-


Writing Failing Tests, Writing development-tdd/
Minimal Code to Pass Tests,
Refactoring Code https://medium.com/@rubenghosh968/test-
driven-development-55af68347fdd

Introduction to What is Unit Testing? https://www.geeksforgeeks.org/unit-testing-


Unit Testing Importance of Unit Testing, Unit software-testing/
Testing vs. Integration Testing
https://www.geeksforgeeks.org/difference-
between-unit-testing-and-integration-testing/
JUnit Setting Up Junit, Writing Basic https://www.geeksforgeeks.org/introduction-to-
Framework JUnit Tests, Assertions in JUnit junit-5/

Test Structure Arrange-Act-Assert (AAA) https://www.geeksforgeeks.org/unit-testing-best-


Pattern, Test Fixtures, Setup practices/
and Teardown Methods
https://semaphore.io/blog/aaa-pattern-test-
automation

https://www.geeksforgeeks.org/introduction-to-
junit-5/
Advanced JUnit Parameterized tests, Test https://www.geeksforgeeks.org/junit-5-how-to-
Features suites and categories, Test write-parameterized-tests/
execution order, Exception
testing, Timeout and https://www.geeksforgeeks.org/junit-5-
performance testing parameterizedtest/

11
https://www.geeksforgeeks.org/junit-5-test-suites-
with-example/

https://www.geeksforgeeks.org/junit-5-test-
execution-order/

https://www.geeksforgeeks.org/test-execution-
for-software-testing/

https://www.javacodegeeks.com/2017/06/testing-
exceptions-junit-5.html

https://www.geeksforgeeks.org/junit-5-timeout/

https://www.geeksforgeeks.org/performance-
testing-software-testing/

Mockito Basics Introduction to Mockito, https://www.javacodegeeks.com/mockito-tutorials


Mocking and stubbing,
Verifying interactions,
Argument matching, Handling
void methods
Testing Spring Overview of Spring testing, https://www.geeksforgeeks.org/testing-in-spring-
Applications testing controllers, services, boot/
with JUnit and and repositories, Integration
Mockito testing with Spring Boot, https://www.geeksforgeeks.org/autowired-
Mocking dependencies in injectmocks-spring-boot-tests/
Spring tests
Mocking Mocking databases and https://www.javacodegeeks.com/2024/12/mocki
External repositories, mocking external ng-repositories-and-daos-in-java-with-
Dependencies services (e.g., RESTful APIs), mockito.html
Mocking file I/O and network
interactions, Strategies for
testing code with external
dependencies
Introduction to What is Automation Testing? https://www.geeksforgeeks.org/automation-
Automation Benefits of Automation Testing, testing-software-testing/
Testing Manual Testing vs. Automation
Testing
Types of Unit Tests, Integration Tests, https://www.geeksforgeeks.org/automation-
Automated Functional Tests, End-to-End testing-software-testing/
Tests Tests, Performance Tests
Automation Test Tool Selection, Defining https://www.geeksforgeeks.org/automation-
Testing Scope of Automation, Planning, testing-software-testing/
Process Design, and Development, Test
Execution, Maintenance
Test Types of Frameworks (e.g., https://www.geeksforgeeks.org/automation-
Automation Data-Driven, Keyword-Driven, testing-software-testing/
Frameworks Hybrid), Designing a Test
Automation Framework, Best
Practices for Framework
Development
Popular Selenium, Appium, JUnit and https://www.geeksforgeeks.org/automation-
Automation TestNG, Cucumber, Cypress testing-software-testing/
Tools
12
SLF4J SLF4J vs. Log4J vs. Lombok, https://www.tutorialspoint.com/slf4j/index.htm
SLF4J - Env Setup, Sample
Logging, SLF4j - error
messages, warning levels,
parameterized logging, different
appenders

Hands-On:

• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise Instructions
section above to access the practice content.

FSE construct - Products and Frameworks


There are numerous frameworks in the programming family to build applications. These enable the
programmers to develop different types of applications by providing a gamut of features provided over a
single integrated environment.
Please plan to complete this in 5 weeks.
Relevant skills:
• Spring Core and Maven – 0.5 week
• Spring Data JPA with Spring Boot, Hibernate – 0.5 week
• Spring REST using Spring Boot 3 – 1.5 weeks
• Microservices with Spring Boot 3 and Spring Cloud – 0.5 week
• React & Angular overview – 2 weeks

Module 5 - Spring Core and Maven


Overview:

This module covers essential topics in Spring Core and Maven for Java application development. It starts
with an introduction to the Spring Framework, emphasizing its benefits in Java programming. Learners
will set up projects using Maven for efficient dependency management and build automation. Key
concepts include the Spring IoC container for managing application components, configuring Spring
beans with XML and annotations, and implementing dependency injection for flexible and maintainable
code. Additionally, the module covers Aspect-Oriented Programming (AOP) in Spring, Spring MVC for
web development, Object-Relational Mapping (ORM) for database interactions, and introduces Spring
Boot for rapid application deployment. Through practical exercises, learners will gain hands-on experience
to apply these skills effectively in real-world Java projects.

Learning Objectives:

After completing this module, learners will be able to:

• Understand the core principles and advantages of using Spring in Java applications.
• Explain IoC and DI concepts and their benefits in loosely coupled systems.
• Identify and describe key modules of the Spring Framework and their purposes.
13
• List and discuss the advantages Spring offers over traditional Java development.
• Explain the role of Maven in Java projects and its benefits in dependency management.
• Create a new Maven project and understand its directory structure.
• Configure Maven to include necessary Spring dependencies for a project.
• Customize Maven settings.xml and pom.xml files for efficient project builds and dependency
management.
• Differentiate between BeanFactory and ApplicationContext in managing Spring beans.
• Define beans and their dependencies using XML-based configuration in Spring.

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to Overview of the Spring
Spring Framework Framework, Inversion of Control https://docs.spring.io/spring-
(IoC) and Dependency Injection framework/docs/3.2.x/spring-framework-
(DI), Spring modules: Core, AOP, reference/html/overview.html
Data Access, ORM, MVC, etc.,
Benefits of using Spring in Java
applications
Setting up a Introduction to Maven build tool, https://www.studytonight.com/spring-
Spring Project with Creating a new Maven project, framework/spring-maven-project
Maven Adding Spring dependencies in
the pom.xml file, Configuring
Maven for building and managing
dependencies
Spring IoC Understanding the IoC container, https://www.baeldung.com/inversion-
Container Configuring the Spring IoC control-and-dependency-injection-in-
container using XML, Defining spring
beans and their dependencies,
ApplicationContext and
BeanFactory
Spring Bean Using annotations for bean https://www.baeldung.com/spring-bean-
Configuration configuration, Component annotations
scanning and Stereotype
annotations, Java-based
configuration with @Configuration,
Mixing XML and Java-based
configurations
Dependency Constructor injection, Setter https://docs.spring.io/spring-
Injection in Spring injection, Autowiring framework/reference/core/beans/depend
dependencies, Qualifiers for encies/factory-collaborators.html
resolving autowiring conflicts,
Using @Resource and @Inject
annotations
Spring AOP Introduction to AOP concepts,
(Aspect-Oriented Creating aspects and advice,
Programming) Pointcuts and Joinpoints, AOP https://www.geeksforgeeks.org/aspect-
proxying mechanisms, Integrating oriented-programming-and-aop-in-spring-
AOP with Spring applications framework/

14
Spring MVC and Overview of MVC and ORM, https://www.geeksforgeeks.org/spring-
ORM Configuration, Controller Layer, mvc-framework/
Model Layer, View Layer, Form
Handling, Querying, Validation,
Exception Handling
Spring Boot Overview of Spring Boot, https://www.geeksforgeeks.org/spring-
(Introduction) Simplifying Spring configuration boot/
with Boot, Creating a Spring Boot
application, Auto-configuration and
convention over configuration

Check Your Understanding:

Hands-On:

• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise
Instructions section above to access the practice content.

Module 6 - Spring Data JPA with Spring Boot, Hibernate

Overview:

This module focuses on integrating Spring Data JPA with Spring Boot, leveraging Hibernate for optimized
database interactions. Learners will gain practical skills in project setup, entity mapping, repository
management, query optimization, CRUD operations, pagination, sorting, entity auditing, data projections,
and customization of data sources. The module equips learners to develop efficient and scalable
applications using widely adopted frameworks and tools.

Learning Objectives:

After completing this module, learners will be able to:

• Understand the integration of Spring Data JPA with Spring Boot for effective database
management.
• Develop skills in setting up projects and configuring database connectivity using Spring Data
JPA.
• Gain proficiency in defining and mapping JPA entities within Spring applications.
• Implement repositories and utilize query methods for data access and manipulation.
• Perform CRUD operations and optimize queries for efficient data retrieval.
• Utilize pagination and sorting techniques to manage large datasets effectively.

15
• Implement entity auditing to track changes in database records.
• Create data projections to retrieve specific data subsets efficiently.
• Customize data source configurations and manage multiple databases in Spring Boot.
• Explore Hibernate-specific features and optimizations for database interactions.

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to Overview of Spring Data JPA, https://www.baeldung.com/the-persistence-layer-
Spring Data Relationship between JPA and with-spring-data-jpa
JPA Spring Data JPA, Advantages
of using Spring Data JPA in
Spring Boot
Setting Up a Creating a Spring Boot https://www.javaguides.net/2021/12/how-to-use-
Spring Boot project, Adding Spring Data spring-data-jpa-in-spring-boot-project.html
Project with JPA dependencies,
Spring Data Configuring the application
JPA properties for database
connection
Entity Mapping Introduction to JPA entities, https://salithachathuranga94.medium.com/object-
Mapping entities to database relational-mapping-with-spring-boot-jpa-and-
tables, Defining primary keys hibernate-18cdfc51b4f0
and relationships, Using
annotations like @Entity,
@Table, @Id,
@GeneratedValue, etc.
Spring Data Overview of Spring Data https://docs.spring.io/spring-data/data-
Repositories repositories, Creating commons/docs/1.6.1.RELEASE/reference/html/r
repositories for entities, epositories.html
Derived queries from method
names, Using Query DSL with
@Query annotation, Custom
query methods
CRUD Implementing basic CRUD https://medium.com/javarevisited/spring-boot-
Operations operations, Using jpa-crud-with-example-bbd219b5d4a6
with Spring JpaRepository methods for
Data JPA common operations,
Executing custom queries with
the repository
Query Defining query methods in https://docs.spring.io/spring-
Methods and repositories, Using keywords data/jpa/reference/jpa/query-methods.html
Named in query methods, Named
Queries queries with @NamedQuery
and @NamedQueries,
Executing dynamic queries
Pagination Implementing pagination with https://www.baeldung.com/spring-data-jpa-
and Sorting Page and Pageable, Sorting pagination-sorting
query results, Combining
pagination and sorting
Auditing with Enabling entity auditing, Using https://docs.spring.io/spring-
Spring Data @CreatedBy, data/jpa/reference/auditing.html
JPA @LastModifiedBy,
@CreatedDate, and

16
@LastModifiedDate,
Configuring auditing properties
Spring Data Creating projections for https://docs.spring.io/spring-
JPA specific data subsets, data/jpa/reference/repositories/projections.html
Projections Interface-based and class-
based projections, Using
@Value and constructor
expressions, Controlling the
fetched data with projections
Spring Data Leveraging Spring Boot auto- https://www.geeksforgeeks.org/spring-boot-
JPA and configuration, Customizing spring-data-jpa/
Spring Boot data source configuration,
Integration Externalizing configuration
with application properties,
Managing multiple data
sources
Spring Data Introduction to Spring Data https://medium.com/@burakkocakeu/jpa-
JPA and JPA and Hibernate, hibernate-and-spring-data-jpa-efa71feb82ac
Hibernate Hibernate-specific Features
- Leveraging Hibernate-
specific annotations,
Configuring Hibernate dialect
and properties, Batch
processing with Hibernate;

Check Your Understanding:

Hands-On:

• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise
Instructions section above to access the practice content.

Module 7 - Spring REST using Spring Boot 3

Overview:

This module focuses on building RESTful services with Spring Boot, covering essential concepts from
REST architecture to advanced features like security, testing, and API documentation. Learners will gain
hands-on experience in setting up projects, creating REST controllers, handling HTTP methods,
managing data transfer objects (DTOs), implementing CRUD operations, supporting content negotiation,
integrating Spring Boot Actuator for monitoring, securing endpoints with Spring Security, and testing
REST services effectively.

17
Learning Objectives:

After completing this module, learners will be able to:

• Understand RESTful architecture and its application in modern web development.


• Set up Spring Boot projects for developing RESTful services efficiently.
• Implement request mappings and handle HTTP methods in REST controllers.
• Customize responses and manage exceptions effectively in REST APIs.
• Utilize Data Transfer Objects (DTOs) for data mapping and serialization.
• Implement CRUD operations and validate input data in REST endpoints.
• Integrate HATEOAS principles to enhance API navigability and usability.
• Configure content negotiation to support various media types in responses.
• Monitor and manage RESTful services using Spring Boot Actuator.
• Secure REST endpoints with Spring Security, including authentication and authorization
mechanisms.

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to Overview of RESTful https://www.geeksforgeeks.org/spring-boot-
Spring REST and architecture, Introduction to introduction-to-restful-web-services/
Spring Boot 3 Spring REST, Benefits of
using Spring Boot for RESTful https://www.baeldung.com/spring-boot-3-
services, Setting up a Spring spring-6-new
Boot project for REST, What's
New in Spring Boot 3?
Building a Simple Creating a basic REST https://www.geeksforgeeks.org/easiest-
REST Controller controller, Defining request way-to-create-rest-api-using-spring-boot/
mappings, Handling HTTP
methods (GET, POST, PUT,
DELETE), Returning JSON
responses
Request and Handling path variables and https://medium.com/@tericcabrel/validate-
Response Handling query parameters, Request request-body-and-parameter-in-spring-
body and form data boot-53ca77f97fe9
processing, Customizing
response status and headers,
Exception handling in REST https://belowthemalt.com/2023/01/12/how-
controllers do-you-add-custom-response-headers-in-a-
spring-boot-application/

RESTful Resource Introduction to Data Transfer https://www.moesif.com/blog/technical/api-


Representation Objects (DTOs), design/REST-API-Design-Best-Practices-
with DTOs Mapping entities to DTOs, for-Sub-and-Nested-Resources/
Customizing JSON
serialization and
deserialization, Managing
versioning and backward
compatibility

RESTful CRUD Implementing Create, Read, https://blog.treblle.com/understanding-


Operations Update, and Delete restful-api-crud-operations/
operations, Utilizing HTTP

18
methods for CRUD
operations, Validating input
data with annotations,
Optimistic locking for
concurrent updates
RESTful HATEOAS Understanding HATEOAS https://www.geeksforgeeks.org/hateoas-and-
(Hypermedia as the Engine of why-its-needed-in-restful-api/
Application State), Adding
links to resources, Building
and consuming hypermedia-
driven APIs
Content Configuring content https://maheshbonagiri.medium.com/spring-
Negotiation and negotiation, boot-and-content-negotiation-
Media Types Supporting different media 183b20eaa425
types (JSON, XML), Using the
Accept header for content
negotiation, Producing and
consuming custom media
types

Spring Boot Integrating Spring Boot https://www.geeksforgeeks.org/spring-boot-


Actuator for REST Actuator, Monitoring and actuator/
Monitoring managing RESTful services,
Exposing custom metrics,
Securing and customizing
Actuator endpoints
Security and Securing RESTful endpoints https://www.toptal.com/spring/spring-boot-
Authentication in with Spring Security, oauth2-jwt-rest-protection
RESTful APIs Implementing authentication
and authorization, Token-
based authentication (JWT),
Handling Cross-Origin
Resource Sharing (CORS)
Testing RESTful Unit testing REST controllers https://www.baeldung.com/integration-
APIs with JUnit and Mockito, testing-a-rest-api
Integration testing for REST
services, Using Spring Test
and MockMvc, Test coverage
and best practices
Documenting Introduction to API https://www.geeksforgeeks.org/spring-boot-
RESTful APIs documentation tools rest-api-documentation-using-swagger/
(Swagger, Springdoc),
Documenting REST APIs with
Swagger/OpenAPI,
Generating API
documentation, Best practices
for API documentation

Check Your Understanding:

Hands-On:
19
• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise Instructions
section above to access the practice content.

Module 8 - Microservices with Spring Boot 3 and Spring Cloud

Overview:

This module focuses on Microservices with Spring Boot 3 and Spring Cloud.

Learning Objectives:

After completing this module, learners will be able to:

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to What are Microservices? https://www.geeksforgeeks.org/microservices/
Microservices Benefits of
Microservices,
Microservices vs.
Monolithic Architecture
Principles of Single Responsibility https://www.geeksforgeeks.org/microservices/
Microservices Principle, Decentralized
Data Management,
Continuous Delivery and
Deployment, Scalability
and Flexibility
Challenges of Complexity https://www.geeksforgeeks.org/microservices/
Microservices Management, Inter-
Service Communication,
Data Consistency,
Monitoring and Logging
Microservices Components of https://www.geeksforgeeks.org/microservices/
Architecture Microservices
Overview Architecture, Service
Discovery, API Gateway,
Load Balancing
Design Patterns Service Registry and https://www.geeksforgeeks.org/microservices/
Discovery, Circuit
Breaker, API
Composition, Saga
Pattern
Inter-Service Synchronous https://www.geeksforgeeks.org/inter-service-
Communication Communication (REST, communication-in-microservices/
gRPC), Asynchronous
Communication
(Message Queues,

20
Event Streaming),
Handling Failures and
Retries
Data Management Database per Service, https://www.geeksforgeeks.org/cqrs-design-pattern-
Event Sourcing, CQRS in-microservices/
(Command Query
Responsibility
Segregation)
Security Authentication and https://www.geeksforgeeks.org/authentication-and-
Authorization, Secure authorization-in-microservices/
Communication (HTTPS,
OAuth2), Security Best
Practices
Spring Cloud for Introduction to Spring https://www.geeksforgeeks.org/what-is-spring-
Microservices Cloud, Features and cloud/
components of Spring
Cloud, Configuring https://howtodoinjava.com/spring-cloud/spring-
microservices with cloud-components/
Spring Cloud, Service
discovery and https://www.geeksforgeeks.org/managing-
registration with Spring configuration-for-microservices-with-spring-cloud-
Cloud Netflix Eureka config/

https://www.geeksforgeeks.org/spring-cloud-how-
to-register-microservices-using-netflix-eureka/

Spring Security for Overview of Spring https://www.geeksforgeeks.org/spring-security-


Microservices Security, Securing tutorial/
microservices using
Spring Security, https://www.geeksforgeeks.org/best-practices-to-
Authentication and secure-microservices-with-spring-security/
authorization in a
microservices https://www.geeksforgeeks.org/spring-security-
environment, Configuring tutorial/#spring-security-core
security for RESTful
APIs https://www.geeksforgeeks.org/spring-security-
tutorial/#spring-security-authentication-and-
authorization

https://www.geeksforgeeks.org/securing-rest-apis-
with-spring-security/

Centralized Implementing centralized https://studentofjava.blog/centralized-


Authentication and authentication with authentication-with-spring-security-oauth/
Authorization OAuth 2.1/OIDC,
Configuring https://www.geeksforgeeks.org/workflow-of-oauth-
Authorization Servers 2-0/
and Resource Servers,
Using JSON Web https://www.geeksforgeeks.org/json-web-token-jwt/
Tokens (JWT) for secure
communication, Single https://examples.javacodegeeks.com/java-
Sign-On (SSO) in a development/enterprise-java/jwt-tutorial-for-
microservices beginners/
architecture
https://www.geeksforgeeks.org/single-sign-on-in-
microservice-architecture/
21
Microservices Inter-service https://www.geeksforgeeks.org/inter-service-
Communication communication patterns, communication-in-microservices/
with Spring Cloud Using Spring Cloud
Feign for declarative https://www.geeksforgeeks.org/what-is-feign-client-
REST clients, Service in-microservices/
orchestration and
choreography, Circuit https://www.geeksforgeeks.org/orchestration-vs-
Breaker pattern with choreography/
Spring Cloud Circuit
Breaker

API Gateway and Introduction to API https://www.geeksforgeeks.org/api-gateway-


Edge Services Gateways, Configuring patterns-in-microservices/
API Gateway with Spring
Cloud Gateway, https://www.geeksforgeeks.org/spring-cloud-
Implementing edge gateway/
services for routing and
filtering, Load balancing https://rathoreaparna678.medium.com/api-gateway-
and resilience patterns in and-edge-services-zuul-spring-cloud-gateway-
an API Gateway dc7567e9bc94

https://www.geeksforgeeks.org/edge-pattern-in-
microservices/

https://umatechnology.org/edge-routing-techniques-
for-stateless-microservices-supported-by-modern-
rum-tools/

https://www.geeksforgeeks.org/microservices-
resilience-patterns/

https://www.geeksforgeeks.org/load-balancing-in-
spring-boot-microservices/

Fault Tolerance Implementing fault https://www.tpointtech.com/fault-tolerance-with-


and Resilience tolerance with Spring hystrix
Cloud Hystrix, Circuit
Breaker and fallback https://www.geeksforgeeks.org/implementing-a-
mechanisms, Retrying basic-circuit-breaker-with-hystrix-in-spring-boot-
and fallback strategies microservices/
for resilience, Handling
transient faults in https://medium.com/@AlexanderObregon/spring-
microservices microservices-resilience-with-retry-and-fallback-
mechanisms-8500208fc463

https://www.geeksforgeeks.org/resilient-
microservices-design/

Spring Cloud Externalized https://www.netjstech.com/2023/10/microservice-


Config configuration in externalized-configuration-config-
microservices, server.html#:~:text=In%20this%20tutorial%2C%20y
Configuring ou%27ll%20see%20how%20to%20externalize,man
microservices using
22
Spring Cloud Config, age%20external%20properties%20for%20applicati
Dynamic configuration ons%20across%20all%20environments.
updates and refresh,
Managing configuration https://www.geeksforgeeks.org/managing-
properties for different configuration-for-microservices-with-spring-cloud-
environments config/

https://www.geeksforgeeks.org/dynamic-
configuration-updates-with-spring-cloud-config/

https://www.geeksforgeeks.org/spring-boot-
managing-application-properties-with-profiles/

Monitoring and Introduction to https://www.techtarget.com/searchapparchitecture/ti


Metrics in microservices p/The-basics-of-monitoring-and-observability-in-
Microservices monitoring, Using Spring microservices
Boot Actuator for
monitoring endpoints, https://www.baeldung.com/spring-boot-actuators
Integrating monitoring
tools (Prometheus, https://www.geeksforgeeks.org/prometheus-
Grafana), Application monitoring/
and system-level metrics
in microservices https://www.geeksforgeeks.org/what-is-grafana/

https://www.geeksforgeeks.org/efficient-load-
balancing-and-metrics-monitoring-in-spring-cloud-
microservices/

Security Best Role-based access https://www.geeksforgeeks.org/authentication-and-


Practices in control (RBAC) in authorization-in-microservices
Microservices microservices, Securing
communication between https://www.geeksforgeeks.org/authentication-and-
microservices, Securing authorization-in-microservices/#importance-of-
sensitive data in security-in-microservices-architecture
microservices,
Implementing security https://www.geeksforgeeks.org/authentication-and-
policies and practices authorization-in-microservices/#securing-
communication-between-microservices

Hands-On:

Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise Instructions
section above to access the practice content.

Module 9 – Microservice frameworks

Overview:

This module focuses on Microservice frameworks like Micronaut and Quarkus.

Learning Objectives:

23
After completing this module, learners will be able to:

• Explain the features and benefits of Microservice frameworks.

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to What is Micronaut?, Key https://studentofjava.blog/what-is-
Micronaut features and benefits, Use micronaut-a-beginners-guide-to-the-
cases and applications lightweight-java-framework/

Introduction to What is Quarkus?, Key features https://www.baeldung.com/quarkus-io


Quarkus and benefits, Use cases and
applications https://dzone.com/articles/spring-boot-
quarkus-or-micronaut

Module 10 – Single Page Application framework - React


Overview:
This module focuses on a very widely used, simple Front-end tool to build a Single Page Application
(SPA), ReactJS. It concentrates on the need for this framework, the functionalities in brings us with, the
ease of the feature usage to build forms for user consumption.

Learning Objectives:
After completing this module, learners will be able to:
• Define SPA and its benefits
• Define React and identify its working
• Demonstrate on create-react-app
• Explain React components
• Demonstrate the various components of a React app

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links

Introduction to SPA What is Single Page https://www.geeksforgeeks.org/what-is-single-page-


Application (SPA). application/

Introduction to What is React, How https://www.geeksforgeeks.org/react/


React does it work, React
features, create-react-
app, React virtual DOM https://www.geeksforgeeks.org/reactjs-introduction/

24
https://www.geeksforgeeks.org/reactjs-virtual-dom/

React Components Functional components, https://www.geeksforgeeks.org/reactjs-components/


and Props Class components,
Component constructor,
Components in files, https://www.geeksforgeeks.org/reactjs-importing-
Pass data, Default exporting/
props, State and props

React ES6 and JSX What is ES6, Classes, https://www.geeksforgeeks.org/reactjs-es6/


Class inheritance, Arrow
https://www.w3schools.com/react/react_es6.asp
functions, this, var, let,
const, What is JSX,
Nested elements in JSX,
JSX attributes, JSX
styling https://www.geeksforgeeks.org/reactjs-jsx-introduction/

React Events React event object, https://www.geeksforgeeks.org/react-js-events/


Event handlers, Passing
arguments to event
handlers

Conditional Element variables, Inline https://www.geeksforgeeks.org/reactjs-conditional-


Rendering if with logical && rendering/
operator, Inline if-else
with conditional
operator, How to prevent
component from
rendering

React List and Keys Displaying a list on UI, https://www.geeksforgeeks.org/reactjs-lists/


map(), Keys, Extracting
components with keys
https://www.geeksforgeeks.org/reactjs-keys/

React Forms Controlled inputs, https://www.geeksforgeeks.org/reactjs-forms/


Uncontrolled inputs,
Validation, Displaying
error messages, https://codezup.com/react-form-validation-error-
textarea tag, select tag handling/

Calling API with How React Clients https://www.geeksforgeeks.org/how-to-fetch-data-from-


React interact with a database, an-api-in-reactjs/
general discussion on
the different ways of

25
interacting with an API
from React App(Fetch
Api, Axios, Jquery and
XmlHttpRequest),
Implementation of API
interaction from React
App using Fetch Api and
Axios

Hands-On:
• Complete the respective skill’s hands-on exercises to reinforce your learning. Please use Visual
Studio Code for the Hands-on. Refer to the Exercise Instructions section above to access the
practice content.

Module 10 – Single Page Application framework – Angular Overview


Overview:
This module focuses on an awareness of another widely used complete framework on Single Page
Application (SPA), Angular.

Learning Objectives:
After completing this module, learners will be able to:
• Explain the basic components of an Angular application.

Self-Learning (Open-source links):


Key Topics Sub-topics Learning Reference Links

Understanding Components, Modules, https://www.geeksforgeeks.org/angular-tutorial/


Angular Architecture Templates, Services and
Dependency Injection,
Directives https://www.geeksforgeeks.org/build-an-app-with-
angular-and-angular-cli/

https://www.geeksforgeeks.org/angular-components-
overview/

https://www.geeksforgeeks.org/angular-2/

Check your understanding:

26
FSE construct – Platforms & GenAI
These are the enablers as a base to host the application developed using the Engineering concepts,
programming languages, product and frameworks to make it accessible by all users, reliable and
scalable.
Relevant skills:
• GIT
• CI/CD
• Containerization using Docker
• Cloud Fundamentals
Please plan to complete this in 1 week.

Module 11 – Version control - GIT


Overview:

This module focuses on the most widely used code repository tool, GIT.

Learning Objectives:

After completing this module, learners will be able to:

• Explain the version control concepts.


• Demonstrate the branch clone, code push, forking operations
• Explain the concept of branch workflows

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to Version Control https://www.geeksforgeeks.org/git-tutorial/
Version Control Concepts-Definition
and Purpose, Benefits https://www.geeksforgeeks.org/version-control-
of Version Control, systems/
Types of Version
Control Systems

Understanding Git What is Git- https://www.geeksforgeeks.org/version-control-


Introduction to Git, Git systems/
as a Distributed
Version Control https://www.geeksforgeeks.org/git-introduction/
System (DVCS); Git
Components-Working https://www.geeksforgeeks.org/what-is-a-git-
Directory, Staging repository/
Area, Repository
Setting Up Git Installing Git- https://www.geeksforgeeks.org/git-introduction/
Download and
Installation Steps,
Configuring Basic
Settings (username,
27
email); Creating a Git
Repository-Initializing
a New Repository,
Cloning an Existing
Repository;
Basic Git git init and git clone - https://www.geeksforgeeks.org/basic-git-commands-
Commands Initializing a New with-examples/
Repository, Cloning an
Existing Repository; https://www.geeksforgeeks.org/essential-git-
git add-Staging commands/
Changes, Using
Wildcards; git
commit-Committing
Changes, Adding
Commit Messages; git
status-Checking the
Status of Your
Repository; git log-
Viewing Commit
History, Options for
Customizing Log
Output;
Branching and Introduction to https://www.geeksforgeeks.org/branching-strategies-
Merging Branching-Creating in-git/
and Managing
Branches, Switching https://www.geeksforgeeks.org/git-merge/
Between Branches;
Merging Changes- https://www.geeksforgeeks.org/how-to-merge-two-
Merging Branches, branches-in-git/
Handling Merge
Conflicts; Branching
Strategies-Feature
Branching, Release
Branching, Git Flow
Workflow;
Remote Adding Remote https://www.geeksforgeeks.org/what-is-a-git-
Repositories Repositories-Linking repository/
Local and Remote
Repositories, Multiple https://www.geeksforgeeks.org/what-is-a-git-
Remotes; git pull and repository/#git-push-and-pull-commands
git push-Pulling
Changes from a
Remote Repository,
Pushing Changes to a
Remote Repository;
Handling Remote
Branches-Tracking
and Creating Remote
Branches;
Collaborating with Forking and Pull https://www.geeksforgeeks.org/git-fork/
Git Requests-Forking a
Repository, Creating https://www.geeksforgeeks.org/git-workflows-for-agile-
and Managing Pull development-teams/
Requests; Git
Collaboration
Workflows-
28
Centralized Workflow,
Feature Branch
Workflow, Forking
Workflow, Gitflow
Workflow

Hands-On:

• Complete the skills’ hands-on exercises to reinforce your learning. Refer to the Exercise
Instructions section above to access the practice content.

Module 12 – DevOps and CICD


Overview:

This module focuses on an awareness of the concept of Development and Operations done together in
the current business development model.

Learning Objectives:

After completing this module, learners will be able to:


• Explain the concepts of DevOps
• Explain the details of the components of DevOps like Continuous Integration and Continuous
Delivery
• List the popular tools used in DevOps

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to What is DevOps?, https://www.geeksforgeeks.org/devops-tutorial/
DevOps Goals and Benefits of
DevOps, Key DevOps https://www.geeksforgeeks.org/introduction-to-
Practices devops/

Understanding What is Continuous https://www.geeksforgeeks.org/introduction-to-


CI/CD Integration (CI)?, What devops/
is Continuous
Deployment/Delivery https://www.geeksforgeeks.org/what-is-ci-cd/
(CD)?, Differences
between CI and CD,
Benefits of CI/CD
CI/CD Tools and Overview of Popular https://www.geeksforgeeks.org/introduction-to-
Platforms CI/CD Tools (e.g., devops/
Jenkins, GitHub
Actions, GitLab CI/CD,
CircleCI)

Check your understanding:

29
Module 13 - Cloud fundamentals
Overview:

This module focuses on an awareness of the concepts in Cloud computing.

Learning Objectives:

After completing this module, learners will be able to:

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to Traditional IT https://www.flackbox.com/traditional-it-deployment-
Cloud Computing Deployment, models-on-prem-colo
Virtualization, Service-
Oriented Architecture https://www.geeksforgeeks.org/fundamentals-of-
(SOA), Cloud vs. On- software-architecture/
Premises Data
Centers, Pros and https://www.geeksforgeeks.org/cloud-computing/
Cons of Cloud
Computing
Cloud Service Infrastructure as a https://www.geeksforgeeks.org/cloud-computing/
Models Service (IaaS),
Platform as a Service https://www.geeksforgeeks.org/cloud-based-services/
(PaaS), Software as a
Service (SaaS)
Cloud Deployment Public Cloud Model, https://www.geeksforgeeks.org/cloud-computing/
Models Private Cloud Model,
Hybrid Cloud Model, https://www.geeksforgeeks.org/cloud-deployment-
Community Cloud models/
Model
Cloud Service AWS, Azure, GCP https://www.geeksforgeeks.org/aws-tutorial/
Providers
https://www.geeksforgeeks.org/what-is-microsoft-
azure/

https://www.geeksforgeeks.org/google-cloud-platform-
gcp/

Check your understanding:

30
Module 14 – Containerization using Docker

Overview:

This module focuses on an awareness of the most widely used application containerization tool, Docker.

Learning Objectives:

After completing this module, learners will be able to:


• Explain the concept and features of Docker.
• List the basic Docker commands.
• Explain the concepts of Docker storage, networking, and orchestration.

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Docker Basic Docker https://www.geeksforgeeks.org/docker-tutorial/
Commands Commands - Run, ps,
stop, rm, images, rmi,
pull, Append a
command, Exec
Docker Run How to Use the docker https://www.geeksforgeeks.org/docker-tutorial/
run Command, Run a
Container Under a
Specific Name, Run a
Container in the
Background
(Detached Mode), Run
a Container
Interactively, Run a
Container and Publish
Container Ports, Run a
Docker Container and
Remove it Once the
Process is Complete
Docker Images What is a Docker https://www.geeksforgeeks.org/docker-tutorial/
Image?, Image
Layers, Container
Layer, Parent Image,
Base Image, Docker
Manifest, Container
Registries, Container
Repositories, How to
Create a Docker
Image - Interactive
Method, Dockerfile
31
Method, The Docker
Build Context
Docker Compose What is Docker https://www.geeksforgeeks.org/docker-tutorial/
Compose?, Benefits of
Docker Compose,
Basic Commands in
Docker Compose,
Install Docker
Compose, Create the
Compose file,The
YAML Configuration
file
Docker Engine What is Docker https://www.geeksforgeeks.org/docker-tutorial/
Engine-Docker CLI,
REST API, Docker
Deamon
Docker Storage Storage Drivers, Data https://www.geeksforgeeks.org/docker-tutorial/
Volumes, Changing
the Storage Driver for
a Container, Creating
a Volume, Listing all
the Volumes
Docker Default Networks, https://www.geeksforgeeks.org/docker-tutorial/
Networking Listing All Docker
Networks, Inspecting a
Docker network,
Creating Your Own
New Network
Container What is container https://www.geeksforgeeks.org/docker-tutorial/
Orchestration orchestration?, Why
do we need container
orchestration?, What
are the benefits of
container
orchestration?, What
is Kubernetes
container
orchestration?,
Container
orchestration versus
Docker

Check your understanding:

Gen AI Fundamentals
Overview:

This module focuses on the very famous concepts of Generative Artificial Intelligence, different tools and
their features, and the application of GenAI tools for real-time problems.

32
Learning Objectives:

After completing this module, learners will be able to:


• Explain what Generative AI is and its history
• Explain the types of GenAI models
• Explain few widely used GenAI tools and its practical applications

Self-Learning (Open-source links):

Key Topics Sub-topics Learning Reference Links


Introduction to What is Generative https://www.gartner.com/en/topics/generative-ai
Generative AI AI? Overview of https://www.geeksforgeeks.org/what-is-generative-ai/
Generative AI
applications, History
and evolution of
Generative AI
Types of GANs (Generative https://www.geeksforgeeks.org/generative-ai-models/
Generative AI Adversarial Networks),
Models VAEs (Variational https://www.geeksforgeeks.org/what-is-generative-ai/
Autoencoders)
https://www.geeksforgeeks.org/variational-
autoencoders/

Popular Overview of OpenAI's https://www.geeksforgeeks.org/generative-ai-models/


Generative AI GPT, Introduction to
Tools Google’s BERT https://www.geeksforgeeks.org/github-copilot/

https://www.geeksforgeeks.org/explanation-of-bert-
model-nlp/

Practical Text generation and https://www.geeksforgeeks.org/applications-of-ai/


Applications of completion, Image
Generative AI generation and editing,
Music and audio
synthesis

What’s Next?
Congratulations on successfully completing the 8-week DN 4.0 Deep Skilling learning program!
As you have now finished this important phase of your learning, you will be taking a Knowledge-Based
Assessment (KBA) to certify your skills. This assessment will cover all the skills and topics you
have learned during the past five weeks, ensuring you have a comprehensive understanding of the
material.
We wish you the best of luck with your assessment and look forward to seeing you apply your newly
acquired knowledge and skills. Good luck!

33

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy