----------------------- Page 1-----------------------
Java Curriculum
For Software Engineer, Senior Software Engineer, Team Lead/ Consultant
Specialist
Document Owner: –Technical Development
Date: 29 November 2012
Version: 7.0
INTERNAL
----------------------- Page 2-----------------------
Java Curriculum for SE_SSE_TL_CS
Table of Contents
Background...................................................................................................................................3
Intended Audience........................................................................................................................3
Role Pre-requisites .......................................................................................................................4
Proficiency Scale ..........................................................................................................................5
Curriculum Progression Criteria....................................................................................................5
Completion Criteria .......................................................................................................................6
Role wise required Competency level...........................................................................................6
Behavioural Competency............................................................................................................10
Functional Competencies applicable to CS/TL ...........................................................................11
Learning Path .............................................................................................................................13
Competency Assessment ...........................................................................................................17
Assessment levels ..................................................................................................................17
Assessment Structure .............................................................................................................17
Assessment Topics and Sub-topics ........................................................................................18
List of assessment topics applicable to the respective job role ...............................................18
Topic: Core JAVA....................................................................................................................19
Topic: Core JAVA - Advanced.................................................................................................22
Topic: Web Technologies........................................................................................................24
Topic: J2EE.............................................................................................................................28
Topic: Design Methodology .....................................................................................................30
Page 2 of 34 INTERNAL Version 7.0
----------------------- Page 3-----------------------
Java Curriculum for SE_SSE_TL_CS
Background
The Java Curriculum is designed to enrich the practical skill set of the GLT Engineering Team and to increase
their capabilities, confidence, and rate of success for the assigned projects.
This JAVA curriculum has been developed by the Technical Development team based on the Service offering and
Service Catalogue created by the Engineering Services – Technical Development team within GLT. The Service
catalogue has been reviewed and approved by John Armistead for HTS –SWD. The competency map, training map
and assessment structure detailed further in this document has been reviewed internally by the subject matter
experts represented by various departments/regional delivery Teams in GLT to ensure participation from most of
the regions/COEs relevant to SWD. The list of such subject matter experts is included on page 2 of this document
for reference.
All artifacts created for the purpose of the curriculum document were shared with the steering committee members
(Subject Matter Experts) and were discussed during fortnightly meeting, feedback sought and review comments
have been incorporated.
The curriculum document provides information on:
The competencies and the proficiency required to complete various JAVA specific tasks
Training available for enhancing the JAVA technical capabilities
Competency Assessment
This curriculum specifically focuses on the JAVA skills within GLT. It is expected that this curriculum will be
extended across the HTS Community at a later date with additions if required.
Academy team has reviewed all the supporting documents to ensure the established standards/ process was
followed to create this Curriculum.
Intended Audience
Role GCB Average Technical Experience (In years)
Software Engineer 6 1 +
Senior Software Engineer 6 3+
Consultant Specialist/ Team Lead 5 5+
Associates who are currently working within HTS and have varying degree of technical competencies covered
in this curriculum.
Associates who are new to HSBC but have varying degree of technical competencies in the topics covered in
this curriculum.
Associates who are new to some of the competencies defined in this curriculum or associates who are new to
the role.
Page 3 of 34 INTERNAL Version 7.0
----------------------- Page 4-----------------------
Java Curriculum for SE_SSE_TL_CS
Role Pre-requisites
Role Pre-
Pre-requisites Description
requisites
1. Knowledge of R2DS Coding Standards
2. Hands on experience of the System/Application in Java, J2EE, Design Methodology,
Web Technology, R2DS, Spring, JSP/Servlet, RAD Tooling, HTML/DHTML/XML,
Maven, JUnit, Design Pattern, UML, Log4j
Software 3. Knowledge and experience in:
Engineer a. Using applicable Process for coding and review
b. Applicable process for Requirements Gathering
c. Applicable process for Testing
d. Using applicable configuration management Process and tools
Effective communication skills- Reading, Writing, Listening and Speaking.
1. Knowledge of R2DS Coding Standards
2. Hands on experience of the System/Application such as Java Basic, R2DS, JSP/Servlet,
J2EE, RAD Tooling, Spring, Maven, HTML/DHTML/XML, JUnit, RAD Tooling, Log4j,
Design Methodology, Web Technology
3. Knowledge and experience in:
a. Using applicable Process for coding and review
b. Applicable process for Requirements Gathering
Senior
c. Applicable process for design and development
Software
d. Applicable process for post implementation Support
Engineer
e. Applicable process for Testing
f. application Design, specific to Database Design as applicable to the change
g. Applicable process for design and development
h. Environment Set up for similar applications
i. Estimation and Design Process
j. Using applicable configuration management Process and tools
4. Effective communication skills- Reading, Writing, Listening and Speaking.
1. Knowledge of R2DS Coding Standards
2. Hands on experience of the System/Application such as Java, J2EE, Spring, Design
Methodology, Web Technology, R2DS, HTML/DHTML/XML, JSP/Servlet, Maven,
Design Pattern, UML, JUnit, Log4j, RAD Tooling
3. Knowledge and experience in:
Consultant
a. Applicable process for design and development
Specialist/
b. applicable process for Requirements Gathering
Team Lead
c. Using applicable configuration management Process and tools
d. Using applicable Process for coding and review
e. Applicable process for design and development
f. Applicable process for post implementation Support
g. Applicable process for Testing
Page 4 of 34 INTERNAL Version 7.0
----------------------- Page 5-----------------------
Java Curriculum for SE_SSE_TL_CS
Role Pre-
Pre-requisites Description
requisites
h. Application Design, specific to Database Design as applicable to the change
i. Applicable process for design and development
j. Environment Set up for similar applications
k. Estimation and Design Process
l. Applicable process for project closure
m. Task Planning & Tracking
2. Effective communication skills- Reading, Writing, Listening and Speaking.
Proficiency Scale
The following table provides the definition of the various proficiency levels.
Level Definition Description
5 Novice New to the job, is able to do the job but unable to meet the
standards and requires total supervision.
A person who is a beginner and is able to do the job though
4 Learner not yet consistently to the required standards and needs
frequent supervision.
This indicates the person needs much help to do the job
A person who has some experience and is able to do the job
3 Proficient to the required standards consistently, on a routine basis with
occasional supervision. This indicates the person can do
without much help to do the job
2 Professional An experienced person, able to do the job to the required
standards consistently without any supervision
A person who is recognized as an authority for his/her ability
1 Expert to do the job to exemplary standards independently and one
who is also able to coach others
Java Assessment levels
JAVA Required Definition of
Role GCB
Competency Level Competency Levels
Software Engineer 6 4 Learner
Senior Software Engineer 6 3 Proficient
Consultant Specialist/ 5
2 Professional
Team Lead
Curriculum Progression Criteria
Java SE to TL/CS curriculum has three proficiency levels, Learner, Proficient, and Professional which is the
natural progression path for an associate.
An associate is expected to take all recommended training courses.
An associate has the flexibility to complete the training at their convenience without having to follow a rigid
path, until there is a defined pre-requisite.
Page 5 of 34 INTERNAL Version 7.0
----------------------- Page 6-----------------------
Java Curriculum for SE_SSE_TL_CS
Completion Criteria
For successful completion, an associate should score 60% or above in the respective assessment
The training, project exposure, years of experience, functional competencies and assessments enables the
associate attain the required competency level (Current and future)
Role wise required Competency level
The table below lists the required competency levels for the respective job tasks across roles. This is applicable to
all competencies.
# Tasks Competency SE SSE CS/TL
1. Ability to Study the requirements
1 RA2.1 - Analysis 5 3 2
document in detail.
1. Ability to interact and communicate
effectively with BA teams.
2. Ability to clearly understand the
2 RA2.2 - Analysis 5 3 2
requirements.
3. Ability to ask the right questions in order
to gain more clarity to requirements
1. Ability to Update the understanding
document for internal review comments.
3 RA3.1 - Reviews 5 5 3
2. Ability to present Solution to stakeholders
and seek their buy-in.
1. Identify and prepare a list of Impacted
components
2. Document the high level technical
requirements based on the functional
4 RA3.1 - Reviews understanding of the requirements. 5 5 3
3. Prepare a list of components to be
developed based on the requirements
4. Present the technical solution to the
Stakeholders
1. Ability to break the requirements into
DS1.1 -
5 smaller packets/modules for efficient and 5 4 2
Estimation
successful delivery
1. Identify Estimation techniques and
methods
2. Identify and prepare a list of Impacted
programs.
DS1.1 - 3. Document the high level technical
6 5 4 2
Estimation requirements based on the functional
understanding of the requirements.
4. Prepare a list of
components(program/file/API's/SQL) to be
developed based on the requirements
1. Ability to Prepare level-0 estimation as
DS1.3 -
7 per the standard development estimation 5 4 2
Estimation
template
Page 6 of 34 INTERNAL Version 7.0
----------------------- Page 7-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Identify and prepare the list of reuse
DS1.3 - components
8 5 4 2
Estimation 2. Prepare estimations based on treuse
components and new components
1. Ability to break the requirements to into
DS2.1 -
9 smaller packets/modules for efficient and 5 3 2
Technical Design
successful delivery.
1. Document the high level technical
DS2.1 - requirements based on the functional
10 5 3 2
Technical Design understanding of the requirements.
2. Prepare high level design document
1. Ability to Co-ordinate with DBA team for
data designing and prepare data flow
DS2.2 -
11 diagram if required. 4 3 2
Technical Design
interact and communicate effectively with
DBA Team
1. Identify the impacted existing Database
DS2.2 - tables.
12 4 3 2
Technical Design 2. Identify the details of database changes
for the proposed solution
1. Ability to Understand the Technical
specification document (EDR/IDR)
13 CD1.1 - Coding 3 3 2
2. Ability to write code using R2DS
Standards for the desired features/functions
1. Create Java utility component.
2. Create presentation layer component.
3. Create service layer component.
14 CD1.1 - Coding 3 3 2
4. Create data access layer component.
5. Create build script.
6. Configure Web/Application server
1. Ability to Prepare Unit Test Plans and
15 CD1.2 - Coding 3 3 2
Test Scenarios/ Test Cases.
1. Setup Unit Test environment.
16 CD1.2 - Coding 3 3 2
2. Prepare Unit Test data.
1. Ability to Review the code and Unit test
17 CD2.1 - Review 4 3 2
plan/scenarios.
1. Prepare code review checklist.
18 CD2.1 - Review 2. Prepare Unit Test plan review checklist. 4 3 2
3. Peer review
1. Ability to Build the inventory/list of
programs which are being coded as per the
functions
CD3.1 - Code
19 Control 2. Ability to Maintain the code review 3 3 2
checklist for each round of review
3. Ability to Document and track the
requirements for any changes.
CD3.1 - Code 1. Prepare source code artifact
20 3 3 2
Control 2. Prepare code checkin/CheckOut list
Page 7 of 34 INTERNAL Version 7.0
----------------------- Page 8-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Ability to Perform test case execution as
per Unit test plan and log the results in Unit
test result document.
2. Ability to review the test results in QC.
3. Ability to update and close the review
CD4.1 - Unit comments.
21 3 3 2
Testing 4. Ability to Perform root cause analysis for
failed conditions and take necessary action
for resolution
5. Ability to interact with interface teams to
provide an update on current status of the
issues if any.
1. Prepare and review unit test plan
CD4.1 - Unit 2. Create Test Cases and Test Suits.
22 3 3 2
Testing 3. Debug Unit Test Component
4. Resolve Unit Test defect.
TS1.1 - Unit
1. Ability to perform Environment Setup and
23 Integration 4 3 2
configuration for UIT
Testing
1. Identify the code changes that have been
TS1.1 - Unit made
24 Integration 2. Configure the test environment and User 4 3 2
Testing profiles required to set up the environments
3. Write test code.
TS2.1 - System
1. Ability to Provide support to SIT team for
25 Integration 4 3 2
execution of test scripts.
Testing
TS2.1 - System
1. Use debugger to detect the error and
26 Integration 4 3 2
resolve the defect
Testing
TS3.1 - System
1. Ability to Fix the code for the failed
27 Acceptance 4 3 2
functionality identified by SAT team
Testing
TS3.1 - System
1. Use debugger to detect the error and
28 Acceptance 4 3 2
resolve the defect
Testing
TS3.2 - System 1. Ability to Perform Batch runs to
29 Acceptance Synchronize Code, Data and Environment 4 3 2
Testing with latest updates.
TS3.2 - System
1. Use debugger to detect the error and
30 Acceptance 4 3 2
resolve the defect
Testing
TS4.1 - Ability to do the performance tuning and
31 Performance code optimization for the components 4 3 2
Testing identified in performance report
TS4.1 - 1. Use tool to measure the system
performance.
32 Performance 4 3 2
2. Identify performance tuning techniques to
Testing
improve the performance of the application
TS5.1 - User
1. Ability to Perform Environment Setup and
33 Acceptance 4 3 2
Configuration
Testing
Page 8 of 34 INTERNAL Version 7.0
----------------------- Page 9-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Identify the code status in Configuration
TS5.1 - User
Management Tool
34 Acceptance 4 3 2
2. Prepare the environment with the required
Testing
procedures and user profiles
TS5.2 - User 1. Ability to Resolve Defects and follow
35 Acceptance Change control processes & coding 4 3 2
Testing standards.
1. Identify the reported issue.
TS5.2 - User
2. Analyze the code that is causing the error.
36 Acceptance 4 3 2
3. Use Debugging tool to debug
Testing
4. Resolve the reported issue.
TS5.3 - User 1. Ability to Ensure that critical & High
37 Acceptance priority defects are worked upon and tracked 4 3 2
Testing to closure in UAT phase.
TS5.4 - User 1. Ability to Perform Batch runs to
38 Acceptance Synchronize Code, Data and Environment 4 3 2
Testing with latest updates.
1. Ability to Provide Support to BA and end-
TS6.1 - Live user team to validate and verify that
39 changes in Production are working as 5 3 3
proofing
expected and seek certification for
Production Launch.
IM1.2 - Finalize 1. Ability to Identify the steps to be executed
40 Implementation during implementation based on the 5 4 3
Plan dependency, priority and schedule.
1. Identify the need for required User profiles
necessary for implementation
IM1.2 - Finalize 2. Identify the API's and system interfaces
41 Implementation that are impacted by this change and their 5 4 3
Plan availability during implementation
3. Identify the risks based on code
developed and the databases.
1. Ability to Provide Support to Release
42 IM2.2 - Release 4 3 2
team/Regional team for release activities.
1. Verify the test results based on test
conditions and scenarios as defined in the
test strategy.
2. Verify the Job Logs and Job History for
43 IM2.2 - Release 4 3 2
successful jobs
3. Analyze the Job log for failed conditions
4. Use debugger to detect the error and
resolve the defect
1. Ability to Synchronize UAT / Production
Support Environment with Production
44 IM2.4 - Release 4 3 2
Environment for post implementation
support
Page 9 of 34 INTERNAL Version 7.0
----------------------- Page 10-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Verify the code status in Configuration
Management Tool
2. Update the latest code to appropriate
45 IM2.4 - Release 4 3 2
module/group
3. Normalize the code based on standard
regularization process
1. Ability to Resolve Defects/incidents
46 IM3.1 - Support 4 3 2
identified in Production environment
1. Verify the test results based on test
conditions and scenarios as defined in the
test strategy.
2. Verify the Job Logs and Job History for
47 IM3.1 - Support 4 3 2
successful jobs
3. Analyze the Job log for failed conditions
4. Use debugger to detect the error and
resolve the defect
1. Ability to Follow Change Management
48 IM3.2 - Support Processes and R2DS Standards while 4 3 2
making changes in code.
49 IM3.2 - Support 1. Resolve the identified defects. 4 3 2
1. Ability to Perform RCA (Root Cause
50 IM3.3 - Support 5 3 2
Analysis for Major Incidents.
1. Identify the reported issue.
2. Analyze the code that cause the error.
51 IM3.3 - Support 5 3 2
3. Debug the Java code
4. Resolve the reported issue.
Behavioural Competency
Behavioural
# Description SE SSE CS/ TL
Competency
RA1.1 - 1. Ability to get the requirements Clarified by BA for a
1 5 4 3
Elicitation detailed understanding of scope
CD4.2 - Unit 1. Ability to interact with interface teams to provide
2 3 3 2
Testing an update on current status of the issues if any.
Page 10 of 34 INTERNAL Version 7.0
----------------------- Page 11-----------------------
Java Curriculum for SE_SSE_TL_CS
Functional Competencies applicable to CS/TL
# Tasks Competency SE SSE CS/TL
1. Ability to Register the requirements document
as a baseline for the project so that any
subsequent alterations to requirements are
RA4.1 -
1 subject to formal change management. NA NA 3
Approvals
2. Ability to Record the approval of stakeholders
that the requirements are satisfactory as
specified.
DS1.2 - 1. Ability to provide a right development
2 NA NA 3
Estimation methodology to deliver the project.
DS1.2 -
3 1. Identify development methodology. NA NA 3
Estimation
DS1.4 - 1. Ability to get the estimations reviewed
4 NA NA 3
Estimation Internally
1. Review estimation documents and functional
DS1.4 - points
5 NA NA 3
Estimation 1. Suggest the reusability of any existing
components.
1. Ability to get the Design reviewed by SME or
DS3.1 - Design
6 Tech Expert in Team to validate and certify NA NA 3
Review
design specifications for build activity.
DS3.1 - Design 1. Review the design document and suggest
7 NA NA 3
Review any further modification.
1. Ability to document and track the
DS4.1 - Design requirements for any changes.
8 NA NA 2
Control 2. Ability to use effective documentation and
tracking tools
DS4.1 - Design 1. Prepare design document checkin/checkout
9 NA NA 2
Control list
TS1.2 - Unit
1. Ability to Review the UIT results and certify
10 Integration NA NA 2
code
Testing
Page 11 of 34 INTERNAL Version 7.0
----------------------- Page 12-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Ability to clearly understand the developed
code and its impact on the existing system
and/or interfaces.
2. Ability to clearly document the system flow
and the steps to implement the
IM1.1 - Finalize
developed/changed code with relevant files/data
11 Implementation NA NA 3
structures/tables.
Plan
3. Ability to understand the risks of developed
code and possible "Revert back to old code"
scenario.
4. Ability to review the implementation plan
prepared for the specific release.
1. Identify the need for required User profiles
necessary for implementation
IM1.1 - Finalize 2. Identify the API's and system interfaces that
12 Implementation are impacted by this change and their NA NA 3
Plan availability during implementation
3. Identify the risks based on code developed
and the databases.
1. Ability to Perform activities as stated in
implementation plan and track schedule, Impact
IM2.1 -
13 of delay on dependent activities and milestones, NA NA 4
Release
Raise alerts as required to Project
Governance/Control team.
1. Ability to Participate in Go- No Go
IM2.3 -
14 telecon/meeting at various milestones of NA NA 4
Release
Implementation or Roll Back.
1. Ability to track requirements and keep the
requirements traceability matrix up to date.
2. Ability to ensure all the agreed RBPM
IM4.1 - Project
15 Process documents are updated and the NA NA 4
Closure
required approvals are in place.
3. Ability to ensure all the required steps have
been followed as per RBPM Closure process.
IM4.3 - Project 1. Ability to perform the resource Management
16 NA NA 4
Closure activities related to Project Closure.
Page 12 of 34 INTERNAL Version 7.0
----------------------- Page 13-----------------------
Java Curriculum for SE_SSE_TL_CS
Learning Path
The courses listed below are recommended and can be taken as per the associate’s convenience. These courses
will enable the associates to build the required competencies for the various job roles. The courses listed below are
applicable to the specific job roles:
1. Software Engineer
2. Senior Software Engineer
3. Consultant Specialist / Team Lead
You can take learning as per topics/subtopics applicable for your level ( Refer Section - List of assessment topics
applicable to the respective job role )
Important Note: For all the topics mentioned as Refresher Course, there are two options:
1. You can register for Classroom session in MyLearning as per course code given below
or
2. You can also take Self-paced learning by taking these refresher courses from MyLearning which is
available at following MyLearning link:
Name: Java refresher MyLearning code: CUR270720120422EAA
Topic Details Learning Course code/Link Additional External links
Type
Core Java OOPS Concepts in Java Refresher ILT020420121237CBG http://docs.oracle.com/javas
Java Datatypes, Course- e/tutorial/java/
Variables and Wrapper Classroom
Classes Training
Compilation and
Execution
Single and
Multidimensional Arrays
Strings and String
Handling Functions
Advanced File I/O Refresher ILT270420121557CBG http://docs.oracle.com/javas
JAVA -1 Collection Interfaces & Course- e/tutorial/essential/index.ht
Classes Classroom ml
Training
http://docs.oracle.com/javas
e/tutorial/collections/index.h
tml
Advanced Exception Handling Refresher ILT290520121955GCE http://docs.oracle.com/javas
JAVA -2 Threading – basics Course- e/tutorial/essential/index.ht
Classroom ml
Training
Advanced Garbage Collection, Refresher ILT290520122005GCE http://docs.oracle.com/javas
JAVA -3 Reflection Usage, Object Course- e/tutorial/reflect/index.html
Serialization Garbage Classroom
Collection Training http://docs.oracle.com/javas
Java Architecture and the e/tutorial/deployment/index.
JVM, Class Loading html
Junit Junit introduction. External http://www.vogella.de/a NA
Link rticles/JUnit/article.html
Web Tech - HTML/DHTML/XML Refresher ILT290520122053GCE http://www.w3schools.com/
1 :HTML 4.0, DHTML and Course- html/default.asp
JavaScript, XML, DTD Classroom
and Schema, XSLT, Training
XML Parser (DOM,SAX)
Page 13 of 34 INTERNAL Version 7.0
----------------------- Page 14-----------------------
Java Curriculum for SE_SSE_TL_CS
R2DS DS2 Basics (Request / Reference http://r2process.uk.hib NA
Response Processing), Documents m.hsbc/javadevstds/#h
JHX, JSF, Portlets, sbc.views.software_eng
Maven, Host Adaptor, .java/guidances/support
RSP ingmaterials/r2ds_java_
home_page_E51767E
C.html
Web Tech - Spring Basic, Spring Refresher ILT290520122057GCE http://www.springsource.org
2 Configuration,IOC Course- /
Classroom
Training
Log4J Log4j appenders. External http://logging.apache.or NA
Creating separate logger Link g/log4j/1.2/manual.html
& attaching log level,
describing how log
output will look like & the
format in which the log
output will be stored
J2EE Java Servlets Refresher ILT290520122044GCE
Java Server Pages, JSP Course- http://docs.oracle.com/java
Tag Library Classroom ee/5/tutorial/doc/bnafd.html
J2EE Security & JDBC Training
http://docs.oracle.com/java
ee/5/tutorial/doc/bnagx.html
http://docs.oracle.com/javas
e/tutorial/jdbc/basics/
http://docs.oracle.com/javas
e/1.5.0/docs/guide/security/i
ndex.html
SOAP Introduction to External http://www.w3schools.c NA
SOAP,SOAP Link om/soap/soap_intro.as
Encoding,Using SOAP p
in HTTP,Changes in
SOAP 1.2,Java API for
XML Messaging (JAXM)
and SAAJ
Java API for XML based http://docs.oracle.com/j
RPC (JAX-RPC) avase/tutorial/jaxp/inde
x.html
Java Overview, Authentication, External http://docs.oracle.com/j NA
Authenticati Pluggable Authentication Link avase/tutorial/security/i
on and Module, integrate a ndex.html
Authorizatio broad range of
n Service authentication
(JAAS) technologies,
Authorization ,
SecurityException etc,
Java Security
JMS Basic Concepts External http://docs.oracle.com/j NA
Link avaee/1.3/jms/tutorial/1
_3_1-
fcs/doc/jms_tutorialTO
C.html
DESIGN Desgin Patterns - GOF Refresher ILT290520122021GCE http://teams.in.hsbc/it/doma
PATTERNS Course/Refe in-
rence services/ES/Java/Design%
Documents- 20Methodology/Design%20
Classroom Patterns%20v1.0.pdf
Training
Page 14 of 34 INTERNAL Version 7.0
----------------------- Page 15-----------------------
Java Curriculum for SE_SSE_TL_CS
UML UML 2 Introduction Reference http://teams.in.hsbc/it/d NA
UML Building blocks Documents omain-
(Structural, Behavioral, services/ES/Java/Desig
Grouping ,Annotational n%20Methodology/UM
)UML Notations, L.pdf
Relationship,
Use Case, Sequence
diagram, Activity, Class
diagram, State,
Deployment, Package
EAI Enterprise Application MyLearning BESPOKE_SST_scorm NA
Architecture, 12_hsbc_gsi2_m08
Advantages and
disadvantages of 3-tier
architecture when
examined under the
following topics
R2ds for The purpose of this MyLearning BESPOKE_SST_pc_hs NA
Java 6.0: module is to provide bc_prism_dev_suite_de
Basic Level developers with the vtools
for necessary skills to build
Developers robust ES based
applications, to apply
good design principles to
the application design,
and to cover low level
details regarding the use
of the ES framework
BeGreen The BeGreen Strategy is MyLearning HK_GRP_HSBCC11 NA
Framework a time-tested
Overview methodology used to
upgrade software
applications in a quick
and cost effective
manner
Information Review basic application MyLearning ELE250320111506BM NA
Risk security requirements - GLTi
Security Identify common security
Training for vulnerabilities of Web
Developers applications
Find solutions to protect
system and data in
software application
development
Page 15 of 34 INTERNAL Version 7.0
----------------------- Page 16-----------------------
Java Curriculum for SE_SSE_TL_CS
MyLearning Link:
http://hsbcbusinessschool.global.hsbc/OneLearning/app/management/LMS_LearnerHome.aspx?FromLogin=1/
Steps to register for self-learning Refresher courses in MyLearning:
Step 1 – Click on link Java refresher
Step 2 – Click on Register and select the courses you want to attend, submit the registration.
Step 3 – Click on Start button to start the course you registered in new window.
Mock Assessments available via MyLearning
The following mock assessments are available to all associates via MyLearning.
1. Java - Software Engineer, Senior Software Engineer, Team Leader/Consultant Specialist
MyLearning Delivery Duration
# Job Role Behavioural Competency Course Name
Course Code Mode (Hours)
Requirement
Elicitation/Requirement IILT230320111638
Review/Requirement CMT - GLTi
Approval/Estimation/Design/D Basic
1 TL/CS/SSE/SE esign Review/Design ILT230320112115C Communication Classroom 16
Control/Code MT - GLTc Training
Workshop
Control/SIT/SAT/UAT/Live ILT260420111111B
Proofing/Release/Support/Proj RA - GLTb
ect Closure
Requirement
Elicitation/Requirement
Review/Requirement
Approval/Estimation/Design/D
2 TL/CS/SSE/SE esign Review/Design ILT230320111648C Effective Classroom 16
Control/Code MT Speaking Skills Training
Control/SIT/SAT/UAT/Live
Proofing/Release/Support/Proj
ect Closure
Requirement
Elicitation/Requirement ILT010620111636T
Review/Requirement DS - GLTi Professional Classroom
3 TL/CS/SSE/SE Approval/Estimation/Design/D 8
esign/Design Review/Design SST_comm_19_a0 Writing Skills Training
Control/Coding/SIT/SAT/Proje 2_bs_enus - GLTb
ct Closure
Page 16 of 34 INTERNAL Version 7.0
----------------------- Page 17-----------------------
Java Curriculum for SE_SSE_TL_CS
SST_COMM8325 -
GLTi
Requirement
ILT100620111317L Presentation Classroom
5 TL/CS/SSE Elicitation/Design AR - GLTc Skills Training 8
Review/Performance Testing
ILT260420111104B
RA - GLTb
Design Review/Project ILT230320111637C IT Project Classroom
6 TL/CS 24
Closure MT - GLTi Management Training
Design Review/Project ILT230320111645C Classroom
7 TL/CS Quality for PMs 24
Closure MT Training
Note:
--- All MyLearning courses available at following link:
http://hsbcbusinessschool.global.hsbc/OneLearning/app/management/LMS_LearnerHome.aspx?FromLo
gin=1
Competency Assessment
Assessment levels
JAVA Required Definition of
Role GCB
Competency Level Competency Levels
Software Engineer 6 4 Learner
Senior Software Engineer 6 3 Proficient
Consultant Specialist/ 5
2 Professional
Team Lead
For additional details please refer to the Assessment Information Document (AID)
http://teams.in.hsbc/hts/Academy/CCA/Assessment%20Guidelines/Forms/AllItems.aspx
Assessment Structure
The assessment structure is based on the Blooms taxonomy
Weightage Number of questions
Bloom’s Level Learner Proficient Professional Learner Proficient Professional
1 Knowledge 40% 30% 15% 24 18 9
2 Comprehension 40% 25% 20% 24 15 12
3 Application 10% 25% 35% 6 15 21
4 Analysis 10% 20% 30% 6 12 18
Total 100% 100% 100% 60 60 60
Page 17 of 34 INTERNAL Version 7.0
----------------------- Page 18-----------------------
Java Curriculum for SE_SSE_TL_CS
Assessment Topics and Sub-topics
Assessment topics describe the syllabus (topics/ subtopics) for various levels of competency assessments. It
provides a high level view for the Assesse in preparing for the assessments.
High level assessment structure
Serial Number Topics
1 Core JAVA (JDK1.4, JDK 1.5)
2 Core JAVA - Advanced
3 Web Technologies
4 J2EE
5 Design Methodology
List of assessment topics applicable to the respective job role
Topic Sub Topics SE SSE TL/CS
Core JAVA OOPS Concepts in Java Y Y Y
Java Datatypes, Variables and
Core JAVA Wrapper Classes Y Y Y
Core JAVA Compilation and Execution Y Y Y
Core JAVA Single and Multidimensional Arrays Y Y Y
Core JAVA Strings and String Handling Functions Y Y Y
Core JAVA File I/O Y Y Y
Core JAVA - Advanced Collection Interfaces & Classes Y Y Y
Core JAVA - Advanced Exception Handling Y Y Y
Core JAVA - Advanced Threading - basics Y Y Y
Garbage Collection, Reflection Usage,
Core JAVA - Advanced Object Serialization N Y Y
Java Architecture and the JVM, Class
Core JAVA - Advanced Loading N Y Y
Core JAVA - Advanced Junit Y Y Y
Web Technologies HTML/DHTML/XML Y Y Y
Web Technologies R2DS Y Y Y
Web Technologies Spring Y Y Y
Web Technologies Log4J Y Y Y
Web Technologies Web Technologies Best Practices Y Y Y
Web Technologies Configuration and Deployment Y Y Y
J2EE Java Servlets Y Y Y
J2EE Java Server Pages, JSP Tag Library Y Y Y
J2EE J2EE Security & JDBC N Y Y
J2EE SOAP N N Y
Java Authentication and Authorization
J2EE Service (JAAS) N N Y
J2EE JMS N Y Y
Design Methodology OOD Y Y Y
Design Methodology Design Pattern N Y Y
Design Methodology UML N Y Y
Design Methodology UML- Notations N Y Y
Design Methodology UML- Use Cases N N Y
Design Methodology EAI N N Y
Page 18 of 34 INTERNAL Version 7.0
----------------------- Page 19-----------------------
Java Curriculum for SE_SSE_TL_CS
Topic: Core JAVA
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Identify the characteristics
T1S1O1 Knowledge
of various OOPS concepts.
Analyse relation between
Abstraction, T1S1O2 Analysis
OOPS and Java.
Encapsulation, Differentiate between
T1S1O3 Comprehension
various OOPS concepts
OOPS Inheritance,
Concepts in T1S1O4 Explain Encapsulation Comprehension
Java Polymorphism,
Distinguish between type
T1S1O5 Comprehension
Overloading, of polymorphism in java
Overriding T1S1O6 Describe Encapsulation Knowledge
with relation to Java
Compare various OOPS
T1S1O7 Analysis
concept
Identify various Data Types
T1S2O1 Knowledge
available in Java
Explain how to declare and
T1S2O2 Comprehension
access variables in Java
demonstrate the
knowledge of conversion of
T1S2O3 Application
various primitive data types
to Objects and vice-versa
Java basic datatypes Analyse the best practises
Java Data while using variables and
types, Pass by value vs. pass by T1S3O4 accessing class and Analysis
Variables and reference. interfaces
Wrapper Declaring & accessing Distinguish between
Classes
variables and Wrapper T1S3O5 various data types in java Comprehension
Classes for basic data types and main method
declaration for java class
Demonstrate the use of
T1S3O6 Application
wrapper class in java
Identify range of various
T1S3O7 Knowledge
data types in java
Describe method
T1S3O8 declaration and various Knowledge
operator available in java
Explain the compilation
Compilation and Execution T1S3O1 and execution procedure Comprehension
using Javac, Java, using for Java classes.
eclipse based IDE (RAD),
Compilation Identify various keywords
and Command line arguments, T1S3O2 and access modifier in Knowledge
Execution java.
Common compilation errors Analyse common
& the tips to solve them T1S3O3 compilation errors and run Analysis
quickly java program
Page 19 of 34 INTERNAL Version 7.0
----------------------- Page 20-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Demonstrate the
T1S3O4 knowledge of compile and Application
execute java code
Demonstrate the
T1S3O5 knowledge of various Comprehension
operator in java
Demonstrate the
T1S306 knowledge of various Comprehension
operator in java
T1S307 Identify java 5.0 features Knowledge
Describe knowledge about
T1S308 Knowledge
java compiler
T1S309 Identify marker interface Knowledge
Analyse various loop in
T1S310 Analysis
java
Identify the use of Arrays in
T1S4O1 Knowledge
Java
Distinguish Single and
T1S4O2 Comprehension
multi dimensional arrays
Demonstrate the
T1S4O3 knowledge of exception Application
related to Array
Analyse various limitations
T1S4O4 Analysis
of Arrays
Pass by Reference in array, Describe various array
Single and initialization, T1S4O5 related methods in java Knowledge
Multidimensio
nal Arrays ArrayIndexOutOfBounds, Identify array initialization
limitations T1S4O6 process for various data Knowledge
types
Explain
T1S4O7 ArrayIndexOutOfBounds Comprehension
exception
Explain the procedure for
T1S4O8 Comprehension
copying Array
Demonstrate the
T1S4O9 knowledge of Array Application
handling methods
Identify the use of String
T1S5O1 Knowledge
Objects
Immutability,
Analyse various String
T1S5O2 Analysis
handling methods in Java
Strings and Constant pool.
String Distinguish various String
Handling Quality, T1S5O3 related Classes and use of Comprehension
Functions those classes.
Functions in String class,
Apply knowledge of various
String Buffer.
T1S5O4 String related function in Application
Java application
Page 20 of 34 INTERNAL Version 7.0
----------------------- Page 21-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Demonstrate the
T1S5O5 Application
knowledge of subString
Differentiate String and
T1S5O6 Analysis
StringBuffer
Analyse java string
T1S5O7 Analysis
concatenation operator
Demonstrate the
T1S5O8 knowledge of == and Application
equals method in String
Demonstrate the
knowledge of String
T1S5O9 Application
creation using new
operator and literals
Explain various ways for
T1S510 String declaration and Comprehension
methods in String class
Identify the use of File
operations and various
T1S6O1 Knowledge
class, methods involve in
file operation
Distinguish between
T1S6O2 various classes related to Comprehension
File and I/O operations
File Input Output Stream,
Construct I/O stream
T1S6O3 Application
Readers and Writers, classes for file operation
File I/O Analyse the performance
Writing objects to file, T1S6O4 while using file I/O Analysis
File class, Exceptions T1S6O5 Describe various IO Knowledge
streams in Java
Analyse class used in File
T1S6O6 Analysis
IO operation
Demonstrate the
T1S6O7 knowledge of methods Application
available for file operations
Page 21 of 34 INTERNAL Version 7.0
----------------------- Page 22-----------------------
Java Curriculum for SE_SSE_TL_CS
Topic: Core JAVA - Advanced
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Identify various Collection
T2S1O1 and Interfaces classes in Knowledge
java and the class hierarchy.
Explain the use of various
T2S1O2 Comprehension
Collection classes
Differentiate between
Collection interface T2S1O3 various collection Interface Analysis
available in Java
Collection, Collections class
Analyse the data structure
Reflection T2S1O4 Analysis
available in Java
Usage, Map interface & all children
Object in the hierarchy of collection Explain the use of collection
T2S1O5 Comprehension
Serialization & Map, sorting collections, in Java application
Explain implementation of
Choosing right collection. T2S1O6 Comprehension
various Collection Interface
Analyse Collection class
T2S1O7 hierarchy based on different Analysis
scenarios
Construct code using
T2S1O8 Application
collection interface
Describe the class hierarchy
T2S2O1 Knowledge
in Exception
Distinguish the different
T2S2O2 Comprehension
types of Exception in Java
Apply the Exception
Throw, throws, try, catch, T2S2O3 handling methodology in Application
finally Throwable Hierarchy, Java
errors. Compare error and
T2S2O4 Analysis
Exception classes
Creating business
exceptions, Explain use of try-catch-
Exception T2S2O5 Comprehension
finally Exception
Handling
Propagating exceptions,
Describe the usage and
T2S2O6 Knowledge
advantage of Exception
Typecasting exceptions,
Demonstrate the use of
T2S2O7 Application
Throwing exception in chained exception
overridden methods
Demonstrate the use of
T2S2O8 Application
Finally block in Exception
T2S2O9 Identify type of exception Knowledge
T2S210 Analyse try-catch block Analysis
What is a thread? Identify various thread
T2S3O1 Knowledge
methods.
Create threads in the
Threading - Describe various
program.
basics methodologies to define
T2S3O2 Knowledge
thread in Java and Thread
Different thread schedulers,
priority.
Page 22 of 34 INTERNAL Version 7.0
----------------------- Page 23-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
How java creates & registers Distinguish various thread
threads with the OS. T2S3O3 methods and methods from Comprehension
Object class.
Common thread methods,
Construct and compile class
T2S3O4 Application
using Thread
Usage of threads
Demonstrate the knowledge
T2S3O5 Application
of Process and Thread
Describe Synchronization in
T2S3O6 Knowledge
Thread
Demonstrate the use of
T2S3O7 Synchronized method and Application
block
Identify various state of a
T2S3O8 Knowledge
thread
Describe the use of garbage Knowledge
T2S4O1
collection
Describe the use of Knowledge
T2S4O2
Reflection
Demonstrate the use of Application
Garbage Collection- low
T2S4O3 Object Serialization,
priority thread. Reflection
Garbage
Collection, GC method Identify various steps for Knowledge
T2S4O4
Reflection garbage collection
Usage, Soft references,
Object T2S4O5 Analyse the Object for GC Analysis
Serialization Weak references.
Demonstrate the use of Application
T2S4O6
Java.lang.reflect, Proxy. object serialization in java
Identify the object for Application
T2S4O7
garbage collection
Analyse the usage of Analysis
T2S4O8
serialization
T2S5O1 Describe JVM and Java Knowledge
Architecture
Identify Class loading and Knowledge
T2S5O2
usage
Installing and Configuring
the JDK T2S5O3 Differentiate various class Analysis
loader available in Java
Java Examine the JVM Describe how JVM load the Comprehension
Architecture architecture T2S5O4
class to the application
and the JVM,
Class Review JVM hidden options T2S5O5 Construct class loader Application
Loading
Tune the JVM , identify the component Knowledge
T2S5O6
required for JVM
Concepts in class loading
Analyse best practise for Analysis
class loading
T2S5O7
Junit Junit introduction T2S6O1 Describe Junit framework Knowledge
and the usage of Junit
Page 23 of 34 INTERNAL Version 7.0
----------------------- Page 24-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Setup and integrate with IDE Construct test cases and Application
T2S6O2
setup mock objects
Explain various Junit classes Comprehension
Steps for writing test cases T2S6O3
and use.
Defining TestSuite Demonstrate and Construct Application
T2S6O4
Test Suite
Use of Mock Objects
T2S6O5 Analyse various Assert Analysis
Best practices available in Junit
T2S6O6 Construct Junit test cases Application
Analyse test cases and Test Analysis
T2S6O7
suits
Topic: Web Technologies
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify the use of Knowledge
HTML/DHTML and Java
T3S1O1
Script in webpage creation
Describe the use of XML Knowledge
T3S1O2
Analyse the use of XSLT, Analysis
DTD and Schema
T3S1O3
HTML 4.0, DHTML
Explain various parser Comprehension
HTML/DHTM JavaScript, XML, DTD T3S1O4 available for parsing XML
L/XML document
Schema, XSLT, XML
Parser (DOM,SAX) Explain the use ox XSLT, Comprehension
DTD and Schema
T3S1O5
Demonstrate the use of Application
T3S1O6 parser for XML
Demonstrate the use of Application
DTD and Schema
T3S1O7
Describe the use of R2DS Knowledge
DS2 Basics (Request / framework
T3S2O1
Response Processing),
R2DS JHX, JSF, Portlets
Identify various Knowledge
Maven, Host Adaptor, T3S2O2 component of R2DS
RSP
Page 24 of 34 INTERNAL Version 7.0
----------------------- Page 25-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Construct build script Application
T3S2O3 using Maven
Identify different Host
T3S2O4 Adaptor components Comprehension
Explain work flow for
Request/Response
T3S2O5 processing Comprehension
Construct various host
adaptor components
T3S2O6 Application
Identify various JHX Tag
T3S2O7 Knowledge
Describe various JSF
components
T3S2O8 Knowledge
Construct and deploy
portlets on WPS
T3S2O9 Application
Identify the use of Spring Knowledge
framework in web
T3S3O1
application
Identify various design Knowledge
T3S3O2 pattern used in Spring
Distinguish various Comprehension
T3S3O3 component in Spring
Spring Basic, Construct Spring Application
T3S3O4 configuration file.
Spring Spring Configuration,
IOC
Apply Spring configuration Application
T3S3O5 changes in web
application
Distinguish various Comprehension
T3S3O6 configuration file available
in Spring
Demonstrate the Application
T3S3O7 knowledge of IOC/DI
Page 25 of 34 INTERNAL Version 7.0
----------------------- Page 26-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify various levels of Knowledge
T3S4O1 logging
Distinguish various Comprehension
T3S4O2 available logging levels
Construct Log4j Application
T3S4O3 configuration file and code
Log4j appenders using log4j API
Creating separate logger Describe usage of Log4j Knowledge
& attaching log level. T3S4O4 for Java application
Log4J
Describing how log
output will look like & the
format in which the log Analyse logging output on Analysis
output will be stored T3S4O5 various level
Explain various appenders Comprehension
T3S4O6 available in Log4j
Explain the component of Comprehension
T3S4O7 Log4j
Identify best practises Knowledge
used in HSBC
T3S5O1
Explain best practises Comprehension
followed in various
T3S5O2
technologies
DS2- Best Explain best practises for Comprehension
Practices,CDM T3S5O3 web application
Web guidelinesProject,
Technologies application and package
Best structuresException Demonstrate the Application
Practices handling and Error T3S5O4 knowledge of best
generationLoggingPerfor practise for web
mance considerations application
Describe Package Knowledge
structure for Java
T3S5O5
application
Explain methodology for Comprehension
T3S5O6 performance tuning
Page 26 of 34 INTERNAL Version 7.0
----------------------- Page 27-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify various Knowledge
T3S6O1 configuration file required
for java application
Construct configuration Application
files
T3S6O2
Construct deployment Application
Presentation layer T3S6O3 descriptor files
implementation
Integration layer
implementation Explain various Tags used Comprehension
Configuration Data object usage and T3S6O4 in configuration and
and implementation deployment file
Deployment Performance
considerations
Coding checklist, Analyse various class Analysis
configuration and T3S6O5 loader for WAS
deployment (WPS, WAS)
Analyse various Analysis
classloader for WPS
T3S6O6
Analyse DAL Analysis
T3S6O7 implementation
Page 27 of 34 INTERNAL Version 7.0
----------------------- Page 28-----------------------
Java Curriculum for SE_SSE_TL_CS
Topic: J2EE
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Describe the type of servlet and their Knowledge
T4S1O1
use, life cycle method available
Explain servlet and various Comprehension
T4S1O2
components
Construct servlet using servlet API Application
T4S1O3
Servlet 2.4 Explain various tag used in web.xml Comprehension
T4S1O4
Specification,
API
Creating Servlets, T4S1O5 Analyse session management in Analysis
Java Servlets Web.xml servlet
Various techniques Explain various listener class Comprehension
& their trade offs, T4S1O6
available in Servlet
Tips for session
management Explain various Object Scope in Comprehension
T4S1O7
Servlet
Describe Servlet initialization Knowledge
T4S1O8
Analyse the available cycle method of Analysis
T4S1O9 servlet and the design pattern use in
servlet model
Identify directive, scriptlet, tag in a Knowledge
T4S2O1
jsp page
Identify various predefined objects in Knowledge
T4S2O2
JSP
Explain various components of JSP Comprehension
T4S2O3
pages
Describe JSTL Knowledge
T4S2O4
JSP 2.0, <%@
taglib , prefixes for Construct JSP pages and Application
the tag lib, tld (tag T4S2O5 demonstrate the knowledge for
Java Server library descriptors), custom tag
Pages, JSP
Compare available life cycle methods Analysis
Tag Library T4S2O6
Using JSTL, in jsp
Including the Tag
Library T4S2O7 Explain stages of JSP page Comprehension
Implementation translation an implicit objects
Construct code using Tag Lib API Application
T4S2O8
Analyse the usage of custom tag Analysis
T4S2O9
T4S210 Explain TLD Comprehension
T4S211 Identify the Tag to define Tag library Knowledge
Page 28 of 34 INTERNAL Version 7.0
----------------------- Page 29-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify various security feature in a Knowledge
web application
T4S3O1
HSBC Defensive T4S3O2 Describe the method, driver available Knowledge
Design Guidelines in JDBC API
for E-business
Demonstrate the use of various Application
Solutions and Open T4S3O3 JDBC Drivers
Web Application
Security Project
J2EE Security (OWASP) Construct the steps for JDBC Application
& JDBC guidelines, SQL connection and identify JDBC API
Injections.Cross methods
Site Scripting, T4S3O4
Broken Access
Controls,
Parameter
manipulation etc
Construct DD for java application to Application
implement security features
T4S3O5
Describe various building blocks of Knowledge
T4S4O1
SOAP
Introduction to Distinguish various SOAP element Analysis
SOAP,SOAP T4S4O2
Encoding,
Using SOAP in T4S4O3 Construct SOAP messages Application
HTTP, Changes in
SOAP SOAP 1.2,Java API
Explain SOAP components, Comprehension
for XML Messaging
T4S4O5 messages and advantages of SOAP
(JAXM) and SAAJ
Java API for XML
based RPC (JAX-
Describe SOAP Knowledge
RPC)
T4S4O5
Overview Identify various module in JAAS Knowledge
T4S5O1
Authentication,
Pluggable
Java Authentication T4S5O2 Explain various of authentication and Comprehension
Authentication Authorization methods in JAAS.
Module,
and
Authorization Integrate a broad T4S5O3 Describe use of JAAS in Java Knowledge
Service range of application
authentication
(JAAS)
technologies, Analyse JAAS configure file Analysis
Authorization T4S5O4
,Security Exception
Page 29 of 34 INTERNAL Version 7.0
----------------------- Page 30-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
etc, Explain JAAS components Comprehension
Java Security T4S5O5
Describe JMS concept Knowledge
T4S6O1
Explain usage of JMS and Comprehension
T4S6O2
component related to JMS
JMS Basic Concepts Describe various message type Knowledge
T4S6O3
supported by JMS
Construct JMS messages and Application
T4S6O4 identify various component of a
messages
Topic: Design Methodology
Sub-
Details ( Provide Objective
Topic Assessment Objectives Bloom's Level
Description) No.
Name
T5S1O1 Decribe OOD basics Knowledge
T5S1O2 Explain OOD principles Comprehension
Analyse the use of OOD principles in Java Analysis
T5S1O3
OO Basics, application
OOD
OO Principles T5S1O4 Describe type of OOD pattern Knowledge
T5S1O5 Explain the use of OOD design pattern Comprehension
T5S1O6 Analyse various OOD design pattern Analysis
Distinguish between various design patterns
T5S2O1 and its applicability in Design and Knowledge
programming
Design Pattern, Design Distinguish between different types of
Pattern Pattern (GOF) T5S2O2 design patterns Comprehension
T5S2O3 Analyze the use of various design patterns Analysis
Describe UML principles and the use of Knowledge
T5S3O1
UML
UML UML 2 Introduction T5S3O2 Analyse the usage of UML Analysis
T5S3O3 Demonstrate the use of UML Diagram Application
UML- UML Building T5S4O1 Describe various notations available in UML Knowledge
Notations blocks (Structural,
Page 30 of 34 INTERNAL Version 7.0
----------------------- Page 31-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-
Details ( Provide Objective
Topic Assessment Objectives Bloom's Level
Description) No.
Name
Behavioral, T5S4O2 Explain the use of UML notation Comprehension
Grouping
,Annotational)UML T5S4O3 Construct various UML notation Application
Notations,
Relationship,
T5S4O4 Analyse various building blocks Analysis
Use Case, T5S5O1 Explain use of UML diagram and identify Knowledge
Sequence various uml diagrams
diagram, T5S5O2 Construct UML diagram Application
UML-
Use Activity, Class
Cases diagram, state, T5S5O3 Analyse UML diagrams Analysis
Deployment, T5S5O4 Explain various Diagram Comprehension
Package
Describe Enterprise Application Architecture Knowledge
Enterprise
T5S6O1
Application
Architecture,
Advantages and
Explain various design pattern for EAI Comprehension
disadvantages of
T5S6O2
3-tier architecture
when examined
under the following
Explain various layers in 3-tier architecture Comprehension
topics: Scalability,
T5S6O3
maintainability,
EAI
reliability,
availability,
Analyse the various components of 3 tier Analysis
extensibility,
application
performance,
manageability and
security. T5S6O4
Design
consideration on
each layer, Pattern
on each layer.
Page 31 of 34 INTERNAL Version 7.0
----------------------- Page 32-----------------------
Java Curriculum for SE_SSE_TL_CS
Glossary of Terms
Term Description
A curriculum ( Plural : Curricula ), consists of defined learning path supported by
Curriculum specific training/learning interventions to service the needs of a specific role as it
migrates from one level of competency to the next.
Proficiency Is the measure for how good someone is at a skill or Capability.
Experience (in Relevant experience in months, within and outside HSBC. This is an attribute of the
months) role.
A task is a set of actions that accomplish a job or an assignment. A task is an
Tasks
activity that needs to be accomplished that is relevant to the role.
Assessment The assessment is used to help the associate learn and measure progress.
GCB Group Career Band
Job Family Broad area or field of work. For egg. Architecture, Project Management
Present or current profile that the associate is working in. For e.g. Software
Job Role Engineer, Senior Software Engineer, Associate Project Manager, Project Manager
etc.
JDK Java Development Kit
Course Duration Length of the course in hours
Delivery Mode Modality of the existing course - ILT/WBT/eLearning
Mandatory / To indicate whether a course is to be mandated for learning or recommended as
Recommended additional reference for the role.
Course Link Repository or the source of the existing course(s)
Certification is a designation or recognition earned by an associate to perform the
Certification
task in his/her job role.
The quality of being competent; adequacy; possession of required skill, knowledge,
Competency
qualification, or capacity
Code of the course, if any. Generally, there is a unique identification number for
Course Code
each course.
Page 32 of 34 INTERNAL Version 7.0
----------------------- Page 33-----------------------
Java Curriculum for SE_SSE_TL_CS
Document Information
Document
Document name: JAVA Curriculum
Created by: Name: Santosh Dharnidhar Rasputra
internal 71 91 20 2001
E-mail: santoshdharnidharrasputra@hsbc.co.in
Revision History
Version Date Updated By Reason for Issue
1.0 14 June 2011 Santosh Baseline version following approval from Rahul N Jain.
Dharnidhar
Rasputra
1.1 02 August 2011 Rahul Gaikwad Learning path section updated with the course codes for
GLTi, GLTc & GLTb
2.0 03 August 2011 Santosh Baseline version
Dharnidhar
Rasputra
2.1 17 August 2011 Rahul Gaikwad Inclusion of new eLearning trainings
3.0 12 September Santosh Changes to the assessment cut score section.
2011 Dharnidhar
Baseline version.
Rasputra
th
3.1 29 September Srinivasa Raju Changes to Learning Path sections and review
2011 comments
4.0 18 October 2011 Santosh Baseline version
Dharnidhar
Rasputra
4.1 12 March 2012 Santosh Changes to the learning path
Dharnidhar
Rasputra
4.2 19 March 2012 Rahul Gaikwad Changes to the learning path post discussion and
agreement with CA team
Necessary Topic Name, details added
5.0 29 March 2012 Vijnan Mandal Baselined
5.1 to 10 Sept 2012 Rahul Gaikwad/ Learning Path section modified to include
5.3 Santosh Refresher course codes, update internal/external
Dharnidhar reference links
Rasputra
6.0 21 September Santosh Baseline version
2012 Dharnidhar
Rasputra
6.1 19 Nov 2012 Rahul Gaikwad Learning Path link corrected for Servlet & JSP
7.0 29 November Santosh Baseline version
2012 Dharnidhar
Rasputra
Page 33 of 34 INTERNAL Version 7.0
----------------------- Page 34-----------------------
Java Curriculum for SE_SSE_TL_CS
Reviewed By
Reviewer Business Unit Date
Rahul N Jain Domain Services 6 May 2011
Satya S. Pujari Domain Services 2 May 2011
Santosh D. Rasputra Academy 5 May 2011
Napolean Edward LATAM 17 May 2011
Deepak Sonawane EUROPE 16 May 2011
Dhanunjay Mandaloju North America 16 May 2011
Sonu Sachdeva , Kapil Bhandari Product Services -SWH No Response
Amrith Kumar B APAC No Response
Mario M Ribeiro GBM 14 May 2011
Pradyumna Asmar Trade 13 May 2011
Prasad Hagargi / Prasanth Allam Payments 16 May 2011
Amit Aradhye GMO 16 May 2011
Rahul Gaikwad Engineering Services 19 November 2012
Approved By
Approver Business Unit Date
Daphnis Valente Domain Services and 27 June 2011
Academy
John Armistead
Page 34 of 34 INTERNAL Version 7.0
Java Curriculum
For Software Engineer, Senior Software Engineer, Team Lead/ Consultant
Specialist
Document Owner: –Technical Development
Date: 29 November 2012
Version: 7.0
INTERNAL
----------------------- Page 2-----------------------
Java Curriculum for SE_SSE_TL_CS
Table of Contents
Background...................................................................................................................................3
Intended Audience........................................................................................................................3
Role Pre-requisites .......................................................................................................................4
Proficiency Scale ..........................................................................................................................5
Curriculum Progression Criteria....................................................................................................5
Completion Criteria .......................................................................................................................6
Role wise required Competency level...........................................................................................6
Behavioural Competency............................................................................................................10
Functional Competencies applicable to CS/TL ...........................................................................11
Learning Path .............................................................................................................................13
Competency Assessment ...........................................................................................................17
Assessment levels ..................................................................................................................17
Assessment Structure .............................................................................................................17
Assessment Topics and Sub-topics ........................................................................................18
List of assessment topics applicable to the respective job role ...............................................18
Topic: Core JAVA....................................................................................................................19
Topic: Core JAVA - Advanced.................................................................................................22
Topic: Web Technologies........................................................................................................24
Topic: J2EE.............................................................................................................................28
Topic: Design Methodology .....................................................................................................30
Page 2 of 34 INTERNAL Version 7.0
----------------------- Page 3-----------------------
Java Curriculum for SE_SSE_TL_CS
Background
The Java Curriculum is designed to enrich the practical skill set of the GLT Engineering Team and to increase
their capabilities, confidence, and rate of success for the assigned projects.
This JAVA curriculum has been developed by the Technical Development team based on the Service offering and
Service Catalogue created by the Engineering Services – Technical Development team within GLT. The Service
catalogue has been reviewed and approved by John Armistead for HTS –SWD. The competency map, training map
and assessment structure detailed further in this document has been reviewed internally by the subject matter
experts represented by various departments/regional delivery Teams in GLT to ensure participation from most of
the regions/COEs relevant to SWD. The list of such subject matter experts is included on page 2 of this document
for reference.
All artifacts created for the purpose of the curriculum document were shared with the steering committee members
(Subject Matter Experts) and were discussed during fortnightly meeting, feedback sought and review comments
have been incorporated.
The curriculum document provides information on:
The competencies and the proficiency required to complete various JAVA specific tasks
Training available for enhancing the JAVA technical capabilities
Competency Assessment
This curriculum specifically focuses on the JAVA skills within GLT. It is expected that this curriculum will be
extended across the HTS Community at a later date with additions if required.
Academy team has reviewed all the supporting documents to ensure the established standards/ process was
followed to create this Curriculum.
Intended Audience
Role GCB Average Technical Experience (In years)
Software Engineer 6 1 +
Senior Software Engineer 6 3+
Consultant Specialist/ Team Lead 5 5+
Associates who are currently working within HTS and have varying degree of technical competencies covered
in this curriculum.
Associates who are new to HSBC but have varying degree of technical competencies in the topics covered in
this curriculum.
Associates who are new to some of the competencies defined in this curriculum or associates who are new to
the role.
Page 3 of 34 INTERNAL Version 7.0
----------------------- Page 4-----------------------
Java Curriculum for SE_SSE_TL_CS
Role Pre-requisites
Role Pre-
Pre-requisites Description
requisites
1. Knowledge of R2DS Coding Standards
2. Hands on experience of the System/Application in Java, J2EE, Design Methodology,
Web Technology, R2DS, Spring, JSP/Servlet, RAD Tooling, HTML/DHTML/XML,
Maven, JUnit, Design Pattern, UML, Log4j
Software 3. Knowledge and experience in:
Engineer a. Using applicable Process for coding and review
b. Applicable process for Requirements Gathering
c. Applicable process for Testing
d. Using applicable configuration management Process and tools
Effective communication skills- Reading, Writing, Listening and Speaking.
1. Knowledge of R2DS Coding Standards
2. Hands on experience of the System/Application such as Java Basic, R2DS, JSP/Servlet,
J2EE, RAD Tooling, Spring, Maven, HTML/DHTML/XML, JUnit, RAD Tooling, Log4j,
Design Methodology, Web Technology
3. Knowledge and experience in:
a. Using applicable Process for coding and review
b. Applicable process for Requirements Gathering
Senior
c. Applicable process for design and development
Software
d. Applicable process for post implementation Support
Engineer
e. Applicable process for Testing
f. application Design, specific to Database Design as applicable to the change
g. Applicable process for design and development
h. Environment Set up for similar applications
i. Estimation and Design Process
j. Using applicable configuration management Process and tools
4. Effective communication skills- Reading, Writing, Listening and Speaking.
1. Knowledge of R2DS Coding Standards
2. Hands on experience of the System/Application such as Java, J2EE, Spring, Design
Methodology, Web Technology, R2DS, HTML/DHTML/XML, JSP/Servlet, Maven,
Design Pattern, UML, JUnit, Log4j, RAD Tooling
3. Knowledge and experience in:
Consultant
a. Applicable process for design and development
Specialist/
b. applicable process for Requirements Gathering
Team Lead
c. Using applicable configuration management Process and tools
d. Using applicable Process for coding and review
e. Applicable process for design and development
f. Applicable process for post implementation Support
g. Applicable process for Testing
Page 4 of 34 INTERNAL Version 7.0
----------------------- Page 5-----------------------
Java Curriculum for SE_SSE_TL_CS
Role Pre-
Pre-requisites Description
requisites
h. Application Design, specific to Database Design as applicable to the change
i. Applicable process for design and development
j. Environment Set up for similar applications
k. Estimation and Design Process
l. Applicable process for project closure
m. Task Planning & Tracking
2. Effective communication skills- Reading, Writing, Listening and Speaking.
Proficiency Scale
The following table provides the definition of the various proficiency levels.
Level Definition Description
5 Novice New to the job, is able to do the job but unable to meet the
standards and requires total supervision.
A person who is a beginner and is able to do the job though
4 Learner not yet consistently to the required standards and needs
frequent supervision.
This indicates the person needs much help to do the job
A person who has some experience and is able to do the job
3 Proficient to the required standards consistently, on a routine basis with
occasional supervision. This indicates the person can do
without much help to do the job
2 Professional An experienced person, able to do the job to the required
standards consistently without any supervision
A person who is recognized as an authority for his/her ability
1 Expert to do the job to exemplary standards independently and one
who is also able to coach others
Java Assessment levels
JAVA Required Definition of
Role GCB
Competency Level Competency Levels
Software Engineer 6 4 Learner
Senior Software Engineer 6 3 Proficient
Consultant Specialist/ 5
2 Professional
Team Lead
Curriculum Progression Criteria
Java SE to TL/CS curriculum has three proficiency levels, Learner, Proficient, and Professional which is the
natural progression path for an associate.
An associate is expected to take all recommended training courses.
An associate has the flexibility to complete the training at their convenience without having to follow a rigid
path, until there is a defined pre-requisite.
Page 5 of 34 INTERNAL Version 7.0
----------------------- Page 6-----------------------
Java Curriculum for SE_SSE_TL_CS
Completion Criteria
For successful completion, an associate should score 60% or above in the respective assessment
The training, project exposure, years of experience, functional competencies and assessments enables the
associate attain the required competency level (Current and future)
Role wise required Competency level
The table below lists the required competency levels for the respective job tasks across roles. This is applicable to
all competencies.
# Tasks Competency SE SSE CS/TL
1. Ability to Study the requirements
1 RA2.1 - Analysis 5 3 2
document in detail.
1. Ability to interact and communicate
effectively with BA teams.
2. Ability to clearly understand the
2 RA2.2 - Analysis 5 3 2
requirements.
3. Ability to ask the right questions in order
to gain more clarity to requirements
1. Ability to Update the understanding
document for internal review comments.
3 RA3.1 - Reviews 5 5 3
2. Ability to present Solution to stakeholders
and seek their buy-in.
1. Identify and prepare a list of Impacted
components
2. Document the high level technical
requirements based on the functional
4 RA3.1 - Reviews understanding of the requirements. 5 5 3
3. Prepare a list of components to be
developed based on the requirements
4. Present the technical solution to the
Stakeholders
1. Ability to break the requirements into
DS1.1 -
5 smaller packets/modules for efficient and 5 4 2
Estimation
successful delivery
1. Identify Estimation techniques and
methods
2. Identify and prepare a list of Impacted
programs.
DS1.1 - 3. Document the high level technical
6 5 4 2
Estimation requirements based on the functional
understanding of the requirements.
4. Prepare a list of
components(program/file/API's/SQL) to be
developed based on the requirements
1. Ability to Prepare level-0 estimation as
DS1.3 -
7 per the standard development estimation 5 4 2
Estimation
template
Page 6 of 34 INTERNAL Version 7.0
----------------------- Page 7-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Identify and prepare the list of reuse
DS1.3 - components
8 5 4 2
Estimation 2. Prepare estimations based on treuse
components and new components
1. Ability to break the requirements to into
DS2.1 -
9 smaller packets/modules for efficient and 5 3 2
Technical Design
successful delivery.
1. Document the high level technical
DS2.1 - requirements based on the functional
10 5 3 2
Technical Design understanding of the requirements.
2. Prepare high level design document
1. Ability to Co-ordinate with DBA team for
data designing and prepare data flow
DS2.2 -
11 diagram if required. 4 3 2
Technical Design
interact and communicate effectively with
DBA Team
1. Identify the impacted existing Database
DS2.2 - tables.
12 4 3 2
Technical Design 2. Identify the details of database changes
for the proposed solution
1. Ability to Understand the Technical
specification document (EDR/IDR)
13 CD1.1 - Coding 3 3 2
2. Ability to write code using R2DS
Standards for the desired features/functions
1. Create Java utility component.
2. Create presentation layer component.
3. Create service layer component.
14 CD1.1 - Coding 3 3 2
4. Create data access layer component.
5. Create build script.
6. Configure Web/Application server
1. Ability to Prepare Unit Test Plans and
15 CD1.2 - Coding 3 3 2
Test Scenarios/ Test Cases.
1. Setup Unit Test environment.
16 CD1.2 - Coding 3 3 2
2. Prepare Unit Test data.
1. Ability to Review the code and Unit test
17 CD2.1 - Review 4 3 2
plan/scenarios.
1. Prepare code review checklist.
18 CD2.1 - Review 2. Prepare Unit Test plan review checklist. 4 3 2
3. Peer review
1. Ability to Build the inventory/list of
programs which are being coded as per the
functions
CD3.1 - Code
19 Control 2. Ability to Maintain the code review 3 3 2
checklist for each round of review
3. Ability to Document and track the
requirements for any changes.
CD3.1 - Code 1. Prepare source code artifact
20 3 3 2
Control 2. Prepare code checkin/CheckOut list
Page 7 of 34 INTERNAL Version 7.0
----------------------- Page 8-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Ability to Perform test case execution as
per Unit test plan and log the results in Unit
test result document.
2. Ability to review the test results in QC.
3. Ability to update and close the review
CD4.1 - Unit comments.
21 3 3 2
Testing 4. Ability to Perform root cause analysis for
failed conditions and take necessary action
for resolution
5. Ability to interact with interface teams to
provide an update on current status of the
issues if any.
1. Prepare and review unit test plan
CD4.1 - Unit 2. Create Test Cases and Test Suits.
22 3 3 2
Testing 3. Debug Unit Test Component
4. Resolve Unit Test defect.
TS1.1 - Unit
1. Ability to perform Environment Setup and
23 Integration 4 3 2
configuration for UIT
Testing
1. Identify the code changes that have been
TS1.1 - Unit made
24 Integration 2. Configure the test environment and User 4 3 2
Testing profiles required to set up the environments
3. Write test code.
TS2.1 - System
1. Ability to Provide support to SIT team for
25 Integration 4 3 2
execution of test scripts.
Testing
TS2.1 - System
1. Use debugger to detect the error and
26 Integration 4 3 2
resolve the defect
Testing
TS3.1 - System
1. Ability to Fix the code for the failed
27 Acceptance 4 3 2
functionality identified by SAT team
Testing
TS3.1 - System
1. Use debugger to detect the error and
28 Acceptance 4 3 2
resolve the defect
Testing
TS3.2 - System 1. Ability to Perform Batch runs to
29 Acceptance Synchronize Code, Data and Environment 4 3 2
Testing with latest updates.
TS3.2 - System
1. Use debugger to detect the error and
30 Acceptance 4 3 2
resolve the defect
Testing
TS4.1 - Ability to do the performance tuning and
31 Performance code optimization for the components 4 3 2
Testing identified in performance report
TS4.1 - 1. Use tool to measure the system
performance.
32 Performance 4 3 2
2. Identify performance tuning techniques to
Testing
improve the performance of the application
TS5.1 - User
1. Ability to Perform Environment Setup and
33 Acceptance 4 3 2
Configuration
Testing
Page 8 of 34 INTERNAL Version 7.0
----------------------- Page 9-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Identify the code status in Configuration
TS5.1 - User
Management Tool
34 Acceptance 4 3 2
2. Prepare the environment with the required
Testing
procedures and user profiles
TS5.2 - User 1. Ability to Resolve Defects and follow
35 Acceptance Change control processes & coding 4 3 2
Testing standards.
1. Identify the reported issue.
TS5.2 - User
2. Analyze the code that is causing the error.
36 Acceptance 4 3 2
3. Use Debugging tool to debug
Testing
4. Resolve the reported issue.
TS5.3 - User 1. Ability to Ensure that critical & High
37 Acceptance priority defects are worked upon and tracked 4 3 2
Testing to closure in UAT phase.
TS5.4 - User 1. Ability to Perform Batch runs to
38 Acceptance Synchronize Code, Data and Environment 4 3 2
Testing with latest updates.
1. Ability to Provide Support to BA and end-
TS6.1 - Live user team to validate and verify that
39 changes in Production are working as 5 3 3
proofing
expected and seek certification for
Production Launch.
IM1.2 - Finalize 1. Ability to Identify the steps to be executed
40 Implementation during implementation based on the 5 4 3
Plan dependency, priority and schedule.
1. Identify the need for required User profiles
necessary for implementation
IM1.2 - Finalize 2. Identify the API's and system interfaces
41 Implementation that are impacted by this change and their 5 4 3
Plan availability during implementation
3. Identify the risks based on code
developed and the databases.
1. Ability to Provide Support to Release
42 IM2.2 - Release 4 3 2
team/Regional team for release activities.
1. Verify the test results based on test
conditions and scenarios as defined in the
test strategy.
2. Verify the Job Logs and Job History for
43 IM2.2 - Release 4 3 2
successful jobs
3. Analyze the Job log for failed conditions
4. Use debugger to detect the error and
resolve the defect
1. Ability to Synchronize UAT / Production
Support Environment with Production
44 IM2.4 - Release 4 3 2
Environment for post implementation
support
Page 9 of 34 INTERNAL Version 7.0
----------------------- Page 10-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Verify the code status in Configuration
Management Tool
2. Update the latest code to appropriate
45 IM2.4 - Release 4 3 2
module/group
3. Normalize the code based on standard
regularization process
1. Ability to Resolve Defects/incidents
46 IM3.1 - Support 4 3 2
identified in Production environment
1. Verify the test results based on test
conditions and scenarios as defined in the
test strategy.
2. Verify the Job Logs and Job History for
47 IM3.1 - Support 4 3 2
successful jobs
3. Analyze the Job log for failed conditions
4. Use debugger to detect the error and
resolve the defect
1. Ability to Follow Change Management
48 IM3.2 - Support Processes and R2DS Standards while 4 3 2
making changes in code.
49 IM3.2 - Support 1. Resolve the identified defects. 4 3 2
1. Ability to Perform RCA (Root Cause
50 IM3.3 - Support 5 3 2
Analysis for Major Incidents.
1. Identify the reported issue.
2. Analyze the code that cause the error.
51 IM3.3 - Support 5 3 2
3. Debug the Java code
4. Resolve the reported issue.
Behavioural Competency
Behavioural
# Description SE SSE CS/ TL
Competency
RA1.1 - 1. Ability to get the requirements Clarified by BA for a
1 5 4 3
Elicitation detailed understanding of scope
CD4.2 - Unit 1. Ability to interact with interface teams to provide
2 3 3 2
Testing an update on current status of the issues if any.
Page 10 of 34 INTERNAL Version 7.0
----------------------- Page 11-----------------------
Java Curriculum for SE_SSE_TL_CS
Functional Competencies applicable to CS/TL
# Tasks Competency SE SSE CS/TL
1. Ability to Register the requirements document
as a baseline for the project so that any
subsequent alterations to requirements are
RA4.1 -
1 subject to formal change management. NA NA 3
Approvals
2. Ability to Record the approval of stakeholders
that the requirements are satisfactory as
specified.
DS1.2 - 1. Ability to provide a right development
2 NA NA 3
Estimation methodology to deliver the project.
DS1.2 -
3 1. Identify development methodology. NA NA 3
Estimation
DS1.4 - 1. Ability to get the estimations reviewed
4 NA NA 3
Estimation Internally
1. Review estimation documents and functional
DS1.4 - points
5 NA NA 3
Estimation 1. Suggest the reusability of any existing
components.
1. Ability to get the Design reviewed by SME or
DS3.1 - Design
6 Tech Expert in Team to validate and certify NA NA 3
Review
design specifications for build activity.
DS3.1 - Design 1. Review the design document and suggest
7 NA NA 3
Review any further modification.
1. Ability to document and track the
DS4.1 - Design requirements for any changes.
8 NA NA 2
Control 2. Ability to use effective documentation and
tracking tools
DS4.1 - Design 1. Prepare design document checkin/checkout
9 NA NA 2
Control list
TS1.2 - Unit
1. Ability to Review the UIT results and certify
10 Integration NA NA 2
code
Testing
Page 11 of 34 INTERNAL Version 7.0
----------------------- Page 12-----------------------
Java Curriculum for SE_SSE_TL_CS
# Tasks Competency SE SSE CS/TL
1. Ability to clearly understand the developed
code and its impact on the existing system
and/or interfaces.
2. Ability to clearly document the system flow
and the steps to implement the
IM1.1 - Finalize
developed/changed code with relevant files/data
11 Implementation NA NA 3
structures/tables.
Plan
3. Ability to understand the risks of developed
code and possible "Revert back to old code"
scenario.
4. Ability to review the implementation plan
prepared for the specific release.
1. Identify the need for required User profiles
necessary for implementation
IM1.1 - Finalize 2. Identify the API's and system interfaces that
12 Implementation are impacted by this change and their NA NA 3
Plan availability during implementation
3. Identify the risks based on code developed
and the databases.
1. Ability to Perform activities as stated in
implementation plan and track schedule, Impact
IM2.1 -
13 of delay on dependent activities and milestones, NA NA 4
Release
Raise alerts as required to Project
Governance/Control team.
1. Ability to Participate in Go- No Go
IM2.3 -
14 telecon/meeting at various milestones of NA NA 4
Release
Implementation or Roll Back.
1. Ability to track requirements and keep the
requirements traceability matrix up to date.
2. Ability to ensure all the agreed RBPM
IM4.1 - Project
15 Process documents are updated and the NA NA 4
Closure
required approvals are in place.
3. Ability to ensure all the required steps have
been followed as per RBPM Closure process.
IM4.3 - Project 1. Ability to perform the resource Management
16 NA NA 4
Closure activities related to Project Closure.
Page 12 of 34 INTERNAL Version 7.0
----------------------- Page 13-----------------------
Java Curriculum for SE_SSE_TL_CS
Learning Path
The courses listed below are recommended and can be taken as per the associate’s convenience. These courses
will enable the associates to build the required competencies for the various job roles. The courses listed below are
applicable to the specific job roles:
1. Software Engineer
2. Senior Software Engineer
3. Consultant Specialist / Team Lead
You can take learning as per topics/subtopics applicable for your level ( Refer Section - List of assessment topics
applicable to the respective job role )
Important Note: For all the topics mentioned as Refresher Course, there are two options:
1. You can register for Classroom session in MyLearning as per course code given below
or
2. You can also take Self-paced learning by taking these refresher courses from MyLearning which is
available at following MyLearning link:
Name: Java refresher MyLearning code: CUR270720120422EAA
Topic Details Learning Course code/Link Additional External links
Type
Core Java OOPS Concepts in Java Refresher ILT020420121237CBG http://docs.oracle.com/javas
Java Datatypes, Course- e/tutorial/java/
Variables and Wrapper Classroom
Classes Training
Compilation and
Execution
Single and
Multidimensional Arrays
Strings and String
Handling Functions
Advanced File I/O Refresher ILT270420121557CBG http://docs.oracle.com/javas
JAVA -1 Collection Interfaces & Course- e/tutorial/essential/index.ht
Classes Classroom ml
Training
http://docs.oracle.com/javas
e/tutorial/collections/index.h
tml
Advanced Exception Handling Refresher ILT290520121955GCE http://docs.oracle.com/javas
JAVA -2 Threading – basics Course- e/tutorial/essential/index.ht
Classroom ml
Training
Advanced Garbage Collection, Refresher ILT290520122005GCE http://docs.oracle.com/javas
JAVA -3 Reflection Usage, Object Course- e/tutorial/reflect/index.html
Serialization Garbage Classroom
Collection Training http://docs.oracle.com/javas
Java Architecture and the e/tutorial/deployment/index.
JVM, Class Loading html
Junit Junit introduction. External http://www.vogella.de/a NA
Link rticles/JUnit/article.html
Web Tech - HTML/DHTML/XML Refresher ILT290520122053GCE http://www.w3schools.com/
1 :HTML 4.0, DHTML and Course- html/default.asp
JavaScript, XML, DTD Classroom
and Schema, XSLT, Training
XML Parser (DOM,SAX)
Page 13 of 34 INTERNAL Version 7.0
----------------------- Page 14-----------------------
Java Curriculum for SE_SSE_TL_CS
R2DS DS2 Basics (Request / Reference http://r2process.uk.hib NA
Response Processing), Documents m.hsbc/javadevstds/#h
JHX, JSF, Portlets, sbc.views.software_eng
Maven, Host Adaptor, .java/guidances/support
RSP ingmaterials/r2ds_java_
home_page_E51767E
C.html
Web Tech - Spring Basic, Spring Refresher ILT290520122057GCE http://www.springsource.org
2 Configuration,IOC Course- /
Classroom
Training
Log4J Log4j appenders. External http://logging.apache.or NA
Creating separate logger Link g/log4j/1.2/manual.html
& attaching log level,
describing how log
output will look like & the
format in which the log
output will be stored
J2EE Java Servlets Refresher ILT290520122044GCE
Java Server Pages, JSP Course- http://docs.oracle.com/java
Tag Library Classroom ee/5/tutorial/doc/bnafd.html
J2EE Security & JDBC Training
http://docs.oracle.com/java
ee/5/tutorial/doc/bnagx.html
http://docs.oracle.com/javas
e/tutorial/jdbc/basics/
http://docs.oracle.com/javas
e/1.5.0/docs/guide/security/i
ndex.html
SOAP Introduction to External http://www.w3schools.c NA
SOAP,SOAP Link om/soap/soap_intro.as
Encoding,Using SOAP p
in HTTP,Changes in
SOAP 1.2,Java API for
XML Messaging (JAXM)
and SAAJ
Java API for XML based http://docs.oracle.com/j
RPC (JAX-RPC) avase/tutorial/jaxp/inde
x.html
Java Overview, Authentication, External http://docs.oracle.com/j NA
Authenticati Pluggable Authentication Link avase/tutorial/security/i
on and Module, integrate a ndex.html
Authorizatio broad range of
n Service authentication
(JAAS) technologies,
Authorization ,
SecurityException etc,
Java Security
JMS Basic Concepts External http://docs.oracle.com/j NA
Link avaee/1.3/jms/tutorial/1
_3_1-
fcs/doc/jms_tutorialTO
C.html
DESIGN Desgin Patterns - GOF Refresher ILT290520122021GCE http://teams.in.hsbc/it/doma
PATTERNS Course/Refe in-
rence services/ES/Java/Design%
Documents- 20Methodology/Design%20
Classroom Patterns%20v1.0.pdf
Training
Page 14 of 34 INTERNAL Version 7.0
----------------------- Page 15-----------------------
Java Curriculum for SE_SSE_TL_CS
UML UML 2 Introduction Reference http://teams.in.hsbc/it/d NA
UML Building blocks Documents omain-
(Structural, Behavioral, services/ES/Java/Desig
Grouping ,Annotational n%20Methodology/UM
)UML Notations, L.pdf
Relationship,
Use Case, Sequence
diagram, Activity, Class
diagram, State,
Deployment, Package
EAI Enterprise Application MyLearning BESPOKE_SST_scorm NA
Architecture, 12_hsbc_gsi2_m08
Advantages and
disadvantages of 3-tier
architecture when
examined under the
following topics
R2ds for The purpose of this MyLearning BESPOKE_SST_pc_hs NA
Java 6.0: module is to provide bc_prism_dev_suite_de
Basic Level developers with the vtools
for necessary skills to build
Developers robust ES based
applications, to apply
good design principles to
the application design,
and to cover low level
details regarding the use
of the ES framework
BeGreen The BeGreen Strategy is MyLearning HK_GRP_HSBCC11 NA
Framework a time-tested
Overview methodology used to
upgrade software
applications in a quick
and cost effective
manner
Information Review basic application MyLearning ELE250320111506BM NA
Risk security requirements - GLTi
Security Identify common security
Training for vulnerabilities of Web
Developers applications
Find solutions to protect
system and data in
software application
development
Page 15 of 34 INTERNAL Version 7.0
----------------------- Page 16-----------------------
Java Curriculum for SE_SSE_TL_CS
MyLearning Link:
http://hsbcbusinessschool.global.hsbc/OneLearning/app/management/LMS_LearnerHome.aspx?FromLogin=1/
Steps to register for self-learning Refresher courses in MyLearning:
Step 1 – Click on link Java refresher
Step 2 – Click on Register and select the courses you want to attend, submit the registration.
Step 3 – Click on Start button to start the course you registered in new window.
Mock Assessments available via MyLearning
The following mock assessments are available to all associates via MyLearning.
1. Java - Software Engineer, Senior Software Engineer, Team Leader/Consultant Specialist
MyLearning Delivery Duration
# Job Role Behavioural Competency Course Name
Course Code Mode (Hours)
Requirement
Elicitation/Requirement IILT230320111638
Review/Requirement CMT - GLTi
Approval/Estimation/Design/D Basic
1 TL/CS/SSE/SE esign Review/Design ILT230320112115C Communication Classroom 16
Control/Code MT - GLTc Training
Workshop
Control/SIT/SAT/UAT/Live ILT260420111111B
Proofing/Release/Support/Proj RA - GLTb
ect Closure
Requirement
Elicitation/Requirement
Review/Requirement
Approval/Estimation/Design/D
2 TL/CS/SSE/SE esign Review/Design ILT230320111648C Effective Classroom 16
Control/Code MT Speaking Skills Training
Control/SIT/SAT/UAT/Live
Proofing/Release/Support/Proj
ect Closure
Requirement
Elicitation/Requirement ILT010620111636T
Review/Requirement DS - GLTi Professional Classroom
3 TL/CS/SSE/SE Approval/Estimation/Design/D 8
esign/Design Review/Design SST_comm_19_a0 Writing Skills Training
Control/Coding/SIT/SAT/Proje 2_bs_enus - GLTb
ct Closure
Page 16 of 34 INTERNAL Version 7.0
----------------------- Page 17-----------------------
Java Curriculum for SE_SSE_TL_CS
SST_COMM8325 -
GLTi
Requirement
ILT100620111317L Presentation Classroom
5 TL/CS/SSE Elicitation/Design AR - GLTc Skills Training 8
Review/Performance Testing
ILT260420111104B
RA - GLTb
Design Review/Project ILT230320111637C IT Project Classroom
6 TL/CS 24
Closure MT - GLTi Management Training
Design Review/Project ILT230320111645C Classroom
7 TL/CS Quality for PMs 24
Closure MT Training
Note:
--- All MyLearning courses available at following link:
http://hsbcbusinessschool.global.hsbc/OneLearning/app/management/LMS_LearnerHome.aspx?FromLo
gin=1
Competency Assessment
Assessment levels
JAVA Required Definition of
Role GCB
Competency Level Competency Levels
Software Engineer 6 4 Learner
Senior Software Engineer 6 3 Proficient
Consultant Specialist/ 5
2 Professional
Team Lead
For additional details please refer to the Assessment Information Document (AID)
http://teams.in.hsbc/hts/Academy/CCA/Assessment%20Guidelines/Forms/AllItems.aspx
Assessment Structure
The assessment structure is based on the Blooms taxonomy
Weightage Number of questions
Bloom’s Level Learner Proficient Professional Learner Proficient Professional
1 Knowledge 40% 30% 15% 24 18 9
2 Comprehension 40% 25% 20% 24 15 12
3 Application 10% 25% 35% 6 15 21
4 Analysis 10% 20% 30% 6 12 18
Total 100% 100% 100% 60 60 60
Page 17 of 34 INTERNAL Version 7.0
----------------------- Page 18-----------------------
Java Curriculum for SE_SSE_TL_CS
Assessment Topics and Sub-topics
Assessment topics describe the syllabus (topics/ subtopics) for various levels of competency assessments. It
provides a high level view for the Assesse in preparing for the assessments.
High level assessment structure
Serial Number Topics
1 Core JAVA (JDK1.4, JDK 1.5)
2 Core JAVA - Advanced
3 Web Technologies
4 J2EE
5 Design Methodology
List of assessment topics applicable to the respective job role
Topic Sub Topics SE SSE TL/CS
Core JAVA OOPS Concepts in Java Y Y Y
Java Datatypes, Variables and
Core JAVA Wrapper Classes Y Y Y
Core JAVA Compilation and Execution Y Y Y
Core JAVA Single and Multidimensional Arrays Y Y Y
Core JAVA Strings and String Handling Functions Y Y Y
Core JAVA File I/O Y Y Y
Core JAVA - Advanced Collection Interfaces & Classes Y Y Y
Core JAVA - Advanced Exception Handling Y Y Y
Core JAVA - Advanced Threading - basics Y Y Y
Garbage Collection, Reflection Usage,
Core JAVA - Advanced Object Serialization N Y Y
Java Architecture and the JVM, Class
Core JAVA - Advanced Loading N Y Y
Core JAVA - Advanced Junit Y Y Y
Web Technologies HTML/DHTML/XML Y Y Y
Web Technologies R2DS Y Y Y
Web Technologies Spring Y Y Y
Web Technologies Log4J Y Y Y
Web Technologies Web Technologies Best Practices Y Y Y
Web Technologies Configuration and Deployment Y Y Y
J2EE Java Servlets Y Y Y
J2EE Java Server Pages, JSP Tag Library Y Y Y
J2EE J2EE Security & JDBC N Y Y
J2EE SOAP N N Y
Java Authentication and Authorization
J2EE Service (JAAS) N N Y
J2EE JMS N Y Y
Design Methodology OOD Y Y Y
Design Methodology Design Pattern N Y Y
Design Methodology UML N Y Y
Design Methodology UML- Notations N Y Y
Design Methodology UML- Use Cases N N Y
Design Methodology EAI N N Y
Page 18 of 34 INTERNAL Version 7.0
----------------------- Page 19-----------------------
Java Curriculum for SE_SSE_TL_CS
Topic: Core JAVA
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Identify the characteristics
T1S1O1 Knowledge
of various OOPS concepts.
Analyse relation between
Abstraction, T1S1O2 Analysis
OOPS and Java.
Encapsulation, Differentiate between
T1S1O3 Comprehension
various OOPS concepts
OOPS Inheritance,
Concepts in T1S1O4 Explain Encapsulation Comprehension
Java Polymorphism,
Distinguish between type
T1S1O5 Comprehension
Overloading, of polymorphism in java
Overriding T1S1O6 Describe Encapsulation Knowledge
with relation to Java
Compare various OOPS
T1S1O7 Analysis
concept
Identify various Data Types
T1S2O1 Knowledge
available in Java
Explain how to declare and
T1S2O2 Comprehension
access variables in Java
demonstrate the
knowledge of conversion of
T1S2O3 Application
various primitive data types
to Objects and vice-versa
Java basic datatypes Analyse the best practises
Java Data while using variables and
types, Pass by value vs. pass by T1S3O4 accessing class and Analysis
Variables and reference. interfaces
Wrapper Declaring & accessing Distinguish between
Classes
variables and Wrapper T1S3O5 various data types in java Comprehension
Classes for basic data types and main method
declaration for java class
Demonstrate the use of
T1S3O6 Application
wrapper class in java
Identify range of various
T1S3O7 Knowledge
data types in java
Describe method
T1S3O8 declaration and various Knowledge
operator available in java
Explain the compilation
Compilation and Execution T1S3O1 and execution procedure Comprehension
using Javac, Java, using for Java classes.
eclipse based IDE (RAD),
Compilation Identify various keywords
and Command line arguments, T1S3O2 and access modifier in Knowledge
Execution java.
Common compilation errors Analyse common
& the tips to solve them T1S3O3 compilation errors and run Analysis
quickly java program
Page 19 of 34 INTERNAL Version 7.0
----------------------- Page 20-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Demonstrate the
T1S3O4 knowledge of compile and Application
execute java code
Demonstrate the
T1S3O5 knowledge of various Comprehension
operator in java
Demonstrate the
T1S306 knowledge of various Comprehension
operator in java
T1S307 Identify java 5.0 features Knowledge
Describe knowledge about
T1S308 Knowledge
java compiler
T1S309 Identify marker interface Knowledge
Analyse various loop in
T1S310 Analysis
java
Identify the use of Arrays in
T1S4O1 Knowledge
Java
Distinguish Single and
T1S4O2 Comprehension
multi dimensional arrays
Demonstrate the
T1S4O3 knowledge of exception Application
related to Array
Analyse various limitations
T1S4O4 Analysis
of Arrays
Pass by Reference in array, Describe various array
Single and initialization, T1S4O5 related methods in java Knowledge
Multidimensio
nal Arrays ArrayIndexOutOfBounds, Identify array initialization
limitations T1S4O6 process for various data Knowledge
types
Explain
T1S4O7 ArrayIndexOutOfBounds Comprehension
exception
Explain the procedure for
T1S4O8 Comprehension
copying Array
Demonstrate the
T1S4O9 knowledge of Array Application
handling methods
Identify the use of String
T1S5O1 Knowledge
Objects
Immutability,
Analyse various String
T1S5O2 Analysis
handling methods in Java
Strings and Constant pool.
String Distinguish various String
Handling Quality, T1S5O3 related Classes and use of Comprehension
Functions those classes.
Functions in String class,
Apply knowledge of various
String Buffer.
T1S5O4 String related function in Application
Java application
Page 20 of 34 INTERNAL Version 7.0
----------------------- Page 21-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Demonstrate the
T1S5O5 Application
knowledge of subString
Differentiate String and
T1S5O6 Analysis
StringBuffer
Analyse java string
T1S5O7 Analysis
concatenation operator
Demonstrate the
T1S5O8 knowledge of == and Application
equals method in String
Demonstrate the
knowledge of String
T1S5O9 Application
creation using new
operator and literals
Explain various ways for
T1S510 String declaration and Comprehension
methods in String class
Identify the use of File
operations and various
T1S6O1 Knowledge
class, methods involve in
file operation
Distinguish between
T1S6O2 various classes related to Comprehension
File and I/O operations
File Input Output Stream,
Construct I/O stream
T1S6O3 Application
Readers and Writers, classes for file operation
File I/O Analyse the performance
Writing objects to file, T1S6O4 while using file I/O Analysis
File class, Exceptions T1S6O5 Describe various IO Knowledge
streams in Java
Analyse class used in File
T1S6O6 Analysis
IO operation
Demonstrate the
T1S6O7 knowledge of methods Application
available for file operations
Page 21 of 34 INTERNAL Version 7.0
----------------------- Page 22-----------------------
Java Curriculum for SE_SSE_TL_CS
Topic: Core JAVA - Advanced
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Identify various Collection
T2S1O1 and Interfaces classes in Knowledge
java and the class hierarchy.
Explain the use of various
T2S1O2 Comprehension
Collection classes
Differentiate between
Collection interface T2S1O3 various collection Interface Analysis
available in Java
Collection, Collections class
Analyse the data structure
Reflection T2S1O4 Analysis
available in Java
Usage, Map interface & all children
Object in the hierarchy of collection Explain the use of collection
T2S1O5 Comprehension
Serialization & Map, sorting collections, in Java application
Explain implementation of
Choosing right collection. T2S1O6 Comprehension
various Collection Interface
Analyse Collection class
T2S1O7 hierarchy based on different Analysis
scenarios
Construct code using
T2S1O8 Application
collection interface
Describe the class hierarchy
T2S2O1 Knowledge
in Exception
Distinguish the different
T2S2O2 Comprehension
types of Exception in Java
Apply the Exception
Throw, throws, try, catch, T2S2O3 handling methodology in Application
finally Throwable Hierarchy, Java
errors. Compare error and
T2S2O4 Analysis
Exception classes
Creating business
exceptions, Explain use of try-catch-
Exception T2S2O5 Comprehension
finally Exception
Handling
Propagating exceptions,
Describe the usage and
T2S2O6 Knowledge
advantage of Exception
Typecasting exceptions,
Demonstrate the use of
T2S2O7 Application
Throwing exception in chained exception
overridden methods
Demonstrate the use of
T2S2O8 Application
Finally block in Exception
T2S2O9 Identify type of exception Knowledge
T2S210 Analyse try-catch block Analysis
What is a thread? Identify various thread
T2S3O1 Knowledge
methods.
Create threads in the
Threading - Describe various
program.
basics methodologies to define
T2S3O2 Knowledge
thread in Java and Thread
Different thread schedulers,
priority.
Page 22 of 34 INTERNAL Version 7.0
----------------------- Page 23-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
How java creates & registers Distinguish various thread
threads with the OS. T2S3O3 methods and methods from Comprehension
Object class.
Common thread methods,
Construct and compile class
T2S3O4 Application
using Thread
Usage of threads
Demonstrate the knowledge
T2S3O5 Application
of Process and Thread
Describe Synchronization in
T2S3O6 Knowledge
Thread
Demonstrate the use of
T2S3O7 Synchronized method and Application
block
Identify various state of a
T2S3O8 Knowledge
thread
Describe the use of garbage Knowledge
T2S4O1
collection
Describe the use of Knowledge
T2S4O2
Reflection
Demonstrate the use of Application
Garbage Collection- low
T2S4O3 Object Serialization,
priority thread. Reflection
Garbage
Collection, GC method Identify various steps for Knowledge
T2S4O4
Reflection garbage collection
Usage, Soft references,
Object T2S4O5 Analyse the Object for GC Analysis
Serialization Weak references.
Demonstrate the use of Application
T2S4O6
Java.lang.reflect, Proxy. object serialization in java
Identify the object for Application
T2S4O7
garbage collection
Analyse the usage of Analysis
T2S4O8
serialization
T2S5O1 Describe JVM and Java Knowledge
Architecture
Identify Class loading and Knowledge
T2S5O2
usage
Installing and Configuring
the JDK T2S5O3 Differentiate various class Analysis
loader available in Java
Java Examine the JVM Describe how JVM load the Comprehension
Architecture architecture T2S5O4
class to the application
and the JVM,
Class Review JVM hidden options T2S5O5 Construct class loader Application
Loading
Tune the JVM , identify the component Knowledge
T2S5O6
required for JVM
Concepts in class loading
Analyse best practise for Analysis
class loading
T2S5O7
Junit Junit introduction T2S6O1 Describe Junit framework Knowledge
and the usage of Junit
Page 23 of 34 INTERNAL Version 7.0
----------------------- Page 24-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Objective
Details Assessment Objectives Bloom's Level
Name No.
Setup and integrate with IDE Construct test cases and Application
T2S6O2
setup mock objects
Explain various Junit classes Comprehension
Steps for writing test cases T2S6O3
and use.
Defining TestSuite Demonstrate and Construct Application
T2S6O4
Test Suite
Use of Mock Objects
T2S6O5 Analyse various Assert Analysis
Best practices available in Junit
T2S6O6 Construct Junit test cases Application
Analyse test cases and Test Analysis
T2S6O7
suits
Topic: Web Technologies
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify the use of Knowledge
HTML/DHTML and Java
T3S1O1
Script in webpage creation
Describe the use of XML Knowledge
T3S1O2
Analyse the use of XSLT, Analysis
DTD and Schema
T3S1O3
HTML 4.0, DHTML
Explain various parser Comprehension
HTML/DHTM JavaScript, XML, DTD T3S1O4 available for parsing XML
L/XML document
Schema, XSLT, XML
Parser (DOM,SAX) Explain the use ox XSLT, Comprehension
DTD and Schema
T3S1O5
Demonstrate the use of Application
T3S1O6 parser for XML
Demonstrate the use of Application
DTD and Schema
T3S1O7
Describe the use of R2DS Knowledge
DS2 Basics (Request / framework
T3S2O1
Response Processing),
R2DS JHX, JSF, Portlets
Identify various Knowledge
Maven, Host Adaptor, T3S2O2 component of R2DS
RSP
Page 24 of 34 INTERNAL Version 7.0
----------------------- Page 25-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Construct build script Application
T3S2O3 using Maven
Identify different Host
T3S2O4 Adaptor components Comprehension
Explain work flow for
Request/Response
T3S2O5 processing Comprehension
Construct various host
adaptor components
T3S2O6 Application
Identify various JHX Tag
T3S2O7 Knowledge
Describe various JSF
components
T3S2O8 Knowledge
Construct and deploy
portlets on WPS
T3S2O9 Application
Identify the use of Spring Knowledge
framework in web
T3S3O1
application
Identify various design Knowledge
T3S3O2 pattern used in Spring
Distinguish various Comprehension
T3S3O3 component in Spring
Spring Basic, Construct Spring Application
T3S3O4 configuration file.
Spring Spring Configuration,
IOC
Apply Spring configuration Application
T3S3O5 changes in web
application
Distinguish various Comprehension
T3S3O6 configuration file available
in Spring
Demonstrate the Application
T3S3O7 knowledge of IOC/DI
Page 25 of 34 INTERNAL Version 7.0
----------------------- Page 26-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify various levels of Knowledge
T3S4O1 logging
Distinguish various Comprehension
T3S4O2 available logging levels
Construct Log4j Application
T3S4O3 configuration file and code
Log4j appenders using log4j API
Creating separate logger Describe usage of Log4j Knowledge
& attaching log level. T3S4O4 for Java application
Log4J
Describing how log
output will look like & the
format in which the log Analyse logging output on Analysis
output will be stored T3S4O5 various level
Explain various appenders Comprehension
T3S4O6 available in Log4j
Explain the component of Comprehension
T3S4O7 Log4j
Identify best practises Knowledge
used in HSBC
T3S5O1
Explain best practises Comprehension
followed in various
T3S5O2
technologies
DS2- Best Explain best practises for Comprehension
Practices,CDM T3S5O3 web application
Web guidelinesProject,
Technologies application and package
Best structuresException Demonstrate the Application
Practices handling and Error T3S5O4 knowledge of best
generationLoggingPerfor practise for web
mance considerations application
Describe Package Knowledge
structure for Java
T3S5O5
application
Explain methodology for Comprehension
T3S5O6 performance tuning
Page 26 of 34 INTERNAL Version 7.0
----------------------- Page 27-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify various Knowledge
T3S6O1 configuration file required
for java application
Construct configuration Application
files
T3S6O2
Construct deployment Application
Presentation layer T3S6O3 descriptor files
implementation
Integration layer
implementation Explain various Tags used Comprehension
Configuration Data object usage and T3S6O4 in configuration and
and implementation deployment file
Deployment Performance
considerations
Coding checklist, Analyse various class Analysis
configuration and T3S6O5 loader for WAS
deployment (WPS, WAS)
Analyse various Analysis
classloader for WPS
T3S6O6
Analyse DAL Analysis
T3S6O7 implementation
Page 27 of 34 INTERNAL Version 7.0
----------------------- Page 28-----------------------
Java Curriculum for SE_SSE_TL_CS
Topic: J2EE
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Describe the type of servlet and their Knowledge
T4S1O1
use, life cycle method available
Explain servlet and various Comprehension
T4S1O2
components
Construct servlet using servlet API Application
T4S1O3
Servlet 2.4 Explain various tag used in web.xml Comprehension
T4S1O4
Specification,
API
Creating Servlets, T4S1O5 Analyse session management in Analysis
Java Servlets Web.xml servlet
Various techniques Explain various listener class Comprehension
& their trade offs, T4S1O6
available in Servlet
Tips for session
management Explain various Object Scope in Comprehension
T4S1O7
Servlet
Describe Servlet initialization Knowledge
T4S1O8
Analyse the available cycle method of Analysis
T4S1O9 servlet and the design pattern use in
servlet model
Identify directive, scriptlet, tag in a Knowledge
T4S2O1
jsp page
Identify various predefined objects in Knowledge
T4S2O2
JSP
Explain various components of JSP Comprehension
T4S2O3
pages
Describe JSTL Knowledge
T4S2O4
JSP 2.0, <%@
taglib , prefixes for Construct JSP pages and Application
the tag lib, tld (tag T4S2O5 demonstrate the knowledge for
Java Server library descriptors), custom tag
Pages, JSP
Compare available life cycle methods Analysis
Tag Library T4S2O6
Using JSTL, in jsp
Including the Tag
Library T4S2O7 Explain stages of JSP page Comprehension
Implementation translation an implicit objects
Construct code using Tag Lib API Application
T4S2O8
Analyse the usage of custom tag Analysis
T4S2O9
T4S210 Explain TLD Comprehension
T4S211 Identify the Tag to define Tag library Knowledge
Page 28 of 34 INTERNAL Version 7.0
----------------------- Page 29-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
Identify various security feature in a Knowledge
web application
T4S3O1
HSBC Defensive T4S3O2 Describe the method, driver available Knowledge
Design Guidelines in JDBC API
for E-business
Demonstrate the use of various Application
Solutions and Open T4S3O3 JDBC Drivers
Web Application
Security Project
J2EE Security (OWASP) Construct the steps for JDBC Application
& JDBC guidelines, SQL connection and identify JDBC API
Injections.Cross methods
Site Scripting, T4S3O4
Broken Access
Controls,
Parameter
manipulation etc
Construct DD for java application to Application
implement security features
T4S3O5
Describe various building blocks of Knowledge
T4S4O1
SOAP
Introduction to Distinguish various SOAP element Analysis
SOAP,SOAP T4S4O2
Encoding,
Using SOAP in T4S4O3 Construct SOAP messages Application
HTTP, Changes in
SOAP SOAP 1.2,Java API
Explain SOAP components, Comprehension
for XML Messaging
T4S4O5 messages and advantages of SOAP
(JAXM) and SAAJ
Java API for XML
based RPC (JAX-
Describe SOAP Knowledge
RPC)
T4S4O5
Overview Identify various module in JAAS Knowledge
T4S5O1
Authentication,
Pluggable
Java Authentication T4S5O2 Explain various of authentication and Comprehension
Authentication Authorization methods in JAAS.
Module,
and
Authorization Integrate a broad T4S5O3 Describe use of JAAS in Java Knowledge
Service range of application
authentication
(JAAS)
technologies, Analyse JAAS configure file Analysis
Authorization T4S5O4
,Security Exception
Page 29 of 34 INTERNAL Version 7.0
----------------------- Page 30-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-Topic Details ( Provide Objective
Assessment Objectives Bloom's Level
Name Description) No.
etc, Explain JAAS components Comprehension
Java Security T4S5O5
Describe JMS concept Knowledge
T4S6O1
Explain usage of JMS and Comprehension
T4S6O2
component related to JMS
JMS Basic Concepts Describe various message type Knowledge
T4S6O3
supported by JMS
Construct JMS messages and Application
T4S6O4 identify various component of a
messages
Topic: Design Methodology
Sub-
Details ( Provide Objective
Topic Assessment Objectives Bloom's Level
Description) No.
Name
T5S1O1 Decribe OOD basics Knowledge
T5S1O2 Explain OOD principles Comprehension
Analyse the use of OOD principles in Java Analysis
T5S1O3
OO Basics, application
OOD
OO Principles T5S1O4 Describe type of OOD pattern Knowledge
T5S1O5 Explain the use of OOD design pattern Comprehension
T5S1O6 Analyse various OOD design pattern Analysis
Distinguish between various design patterns
T5S2O1 and its applicability in Design and Knowledge
programming
Design Pattern, Design Distinguish between different types of
Pattern Pattern (GOF) T5S2O2 design patterns Comprehension
T5S2O3 Analyze the use of various design patterns Analysis
Describe UML principles and the use of Knowledge
T5S3O1
UML
UML UML 2 Introduction T5S3O2 Analyse the usage of UML Analysis
T5S3O3 Demonstrate the use of UML Diagram Application
UML- UML Building T5S4O1 Describe various notations available in UML Knowledge
Notations blocks (Structural,
Page 30 of 34 INTERNAL Version 7.0
----------------------- Page 31-----------------------
Java Curriculum for SE_SSE_TL_CS
Sub-
Details ( Provide Objective
Topic Assessment Objectives Bloom's Level
Description) No.
Name
Behavioral, T5S4O2 Explain the use of UML notation Comprehension
Grouping
,Annotational)UML T5S4O3 Construct various UML notation Application
Notations,
Relationship,
T5S4O4 Analyse various building blocks Analysis
Use Case, T5S5O1 Explain use of UML diagram and identify Knowledge
Sequence various uml diagrams
diagram, T5S5O2 Construct UML diagram Application
UML-
Use Activity, Class
Cases diagram, state, T5S5O3 Analyse UML diagrams Analysis
Deployment, T5S5O4 Explain various Diagram Comprehension
Package
Describe Enterprise Application Architecture Knowledge
Enterprise
T5S6O1
Application
Architecture,
Advantages and
Explain various design pattern for EAI Comprehension
disadvantages of
T5S6O2
3-tier architecture
when examined
under the following
Explain various layers in 3-tier architecture Comprehension
topics: Scalability,
T5S6O3
maintainability,
EAI
reliability,
availability,
Analyse the various components of 3 tier Analysis
extensibility,
application
performance,
manageability and
security. T5S6O4
Design
consideration on
each layer, Pattern
on each layer.
Page 31 of 34 INTERNAL Version 7.0
----------------------- Page 32-----------------------
Java Curriculum for SE_SSE_TL_CS
Glossary of Terms
Term Description
A curriculum ( Plural : Curricula ), consists of defined learning path supported by
Curriculum specific training/learning interventions to service the needs of a specific role as it
migrates from one level of competency to the next.
Proficiency Is the measure for how good someone is at a skill or Capability.
Experience (in Relevant experience in months, within and outside HSBC. This is an attribute of the
months) role.
A task is a set of actions that accomplish a job or an assignment. A task is an
Tasks
activity that needs to be accomplished that is relevant to the role.
Assessment The assessment is used to help the associate learn and measure progress.
GCB Group Career Band
Job Family Broad area or field of work. For egg. Architecture, Project Management
Present or current profile that the associate is working in. For e.g. Software
Job Role Engineer, Senior Software Engineer, Associate Project Manager, Project Manager
etc.
JDK Java Development Kit
Course Duration Length of the course in hours
Delivery Mode Modality of the existing course - ILT/WBT/eLearning
Mandatory / To indicate whether a course is to be mandated for learning or recommended as
Recommended additional reference for the role.
Course Link Repository or the source of the existing course(s)
Certification is a designation or recognition earned by an associate to perform the
Certification
task in his/her job role.
The quality of being competent; adequacy; possession of required skill, knowledge,
Competency
qualification, or capacity
Code of the course, if any. Generally, there is a unique identification number for
Course Code
each course.
Page 32 of 34 INTERNAL Version 7.0
----------------------- Page 33-----------------------
Java Curriculum for SE_SSE_TL_CS
Document Information
Document
Document name: JAVA Curriculum
Created by: Name: Santosh Dharnidhar Rasputra
internal 71 91 20 2001
E-mail: santoshdharnidharrasputra@hsbc.co.in
Revision History
Version Date Updated By Reason for Issue
1.0 14 June 2011 Santosh Baseline version following approval from Rahul N Jain.
Dharnidhar
Rasputra
1.1 02 August 2011 Rahul Gaikwad Learning path section updated with the course codes for
GLTi, GLTc & GLTb
2.0 03 August 2011 Santosh Baseline version
Dharnidhar
Rasputra
2.1 17 August 2011 Rahul Gaikwad Inclusion of new eLearning trainings
3.0 12 September Santosh Changes to the assessment cut score section.
2011 Dharnidhar
Baseline version.
Rasputra
th
3.1 29 September Srinivasa Raju Changes to Learning Path sections and review
2011 comments
4.0 18 October 2011 Santosh Baseline version
Dharnidhar
Rasputra
4.1 12 March 2012 Santosh Changes to the learning path
Dharnidhar
Rasputra
4.2 19 March 2012 Rahul Gaikwad Changes to the learning path post discussion and
agreement with CA team
Necessary Topic Name, details added
5.0 29 March 2012 Vijnan Mandal Baselined
5.1 to 10 Sept 2012 Rahul Gaikwad/ Learning Path section modified to include
5.3 Santosh Refresher course codes, update internal/external
Dharnidhar reference links
Rasputra
6.0 21 September Santosh Baseline version
2012 Dharnidhar
Rasputra
6.1 19 Nov 2012 Rahul Gaikwad Learning Path link corrected for Servlet & JSP
7.0 29 November Santosh Baseline version
2012 Dharnidhar
Rasputra
Page 33 of 34 INTERNAL Version 7.0
----------------------- Page 34-----------------------
Java Curriculum for SE_SSE_TL_CS
Reviewed By
Reviewer Business Unit Date
Rahul N Jain Domain Services 6 May 2011
Satya S. Pujari Domain Services 2 May 2011
Santosh D. Rasputra Academy 5 May 2011
Napolean Edward LATAM 17 May 2011
Deepak Sonawane EUROPE 16 May 2011
Dhanunjay Mandaloju North America 16 May 2011
Sonu Sachdeva , Kapil Bhandari Product Services -SWH No Response
Amrith Kumar B APAC No Response
Mario M Ribeiro GBM 14 May 2011
Pradyumna Asmar Trade 13 May 2011
Prasad Hagargi / Prasanth Allam Payments 16 May 2011
Amit Aradhye GMO 16 May 2011
Rahul Gaikwad Engineering Services 19 November 2012
Approved By
Approver Business Unit Date
Daphnis Valente Domain Services and 27 June 2011
Academy
John Armistead
Page 34 of 34 INTERNAL Version 7.0