19BPS1034 Capstone
19BPS1034 Capstone
Bachelor of Technology
in
Computer Science
by
JYOTIKA JAISWAL
19BPS1034
Bachelor of Technology
in
Computer Science
by
JYOTIKA JAISWAL
19BPS1034
I further declare that the work reported in this thesis has not been
submitted and will not be submitted, either in part or in full, for the award of
any other degree or diploma in this institute or any other institute or university.
Place: Chennai
This piece of work talks about various aspects of the author’s 4 month long Software
Engineering internship at JP Morgan Chase & Co. The job description is based on the
line of business - Employee Experience & Corporate Technology. The role is a full-
stack software development role and the project is based on building a Knowledge
Management application. The use-case is built for the legal department of the firm. The
legal knowledge management application entails the sharing, management, transferring
and safe-guarding of legal documents. The internship duration is full of various learning
mechanisms like certifications, virtual experiences and internship trainings, covering
theoretical as well as hands-on coaching. JP Morgan used technologies such as React,
Springboot, Mongo DB and Jenkins are focused on in the training provided by
professional mentors, and these technologies are used to build a real-time application.
Project and team management is a crucial part of the firm, therefore ample emphasis on
Agile methodology for team managing and Jira, Confluence and BitBucket is given for
ensuring seamless product delivery. Winding-up outcomes of the internship as well as
future plan of the employment and the application is also discussed.
i
ACKNOWLEDGEMENT
Place: Chennai
Jyotika Jaiswal
ii
CONTENTS
CONTENTS iii
LIST OF FIGURES vi
CHAPTER 1 - INTRODUCTION
2.1 INTRODUCTION 9
2.2 SCHEDULE 10
2.5 OUTCOME 15
iii
CHAPTER 3 – LEARNINGS
3.1 INTRODUCTION 16
3.4 OUTCOME 23
4.1 INTRODUCTION 24
4.2 REACT 24
4.3 SPRINGBOOT 26
4.4 JENKINS 28
4.5 CLOUD 29
4.6 MONGODB 33
4.8 INTELLIJ 36
4.9 JIRA 38
4.10 GIT 39
4.11 CONFLUENCE 40
4.12 JUNIT 42
iv
CHAPTER 5 – PROJECT SPECIFICATIONS
REFERENCES 51
v
LIST OF FIGURES
8. React 25
9. Spring 26
10. Springboot 27
11. Jenkins 28
14. MongoDB 34
16. Intellij 37
17. Jira 38
18. Github 40
19. Confluence 41
20. JUnit 42
vi
LIST OF ACRONYMS
3. CB Commercial Banking
vii
Chapter 1
1. INTRODUCTION
1
JP Morgan Chase & Co. has a storied history that reigns over 200 years, with
the roots tracing back to 1799 when the Manhattan Company was formed.
In 1871, J.P. Morgan founded J.P. Morgan & Co. In 1913, the Federal
Reserve Act was signed into law, giving J.P. Morgan a role in managing the
central bank. In 1984, Chemical Bank becomes the biggest bank of the
United States by taking over Manufacturers Hanover Trust Company. In
1991, a merger of Chemical Bank is established with Manufacturers
Hanover and Chase Manhattan. In 2000, J.P. Morgan & Co. merges with
Chase Manhattan Corporation to establish what we now know as JP Morgan
Chase & Co. Since then, the company has thrived and expanded to become
one of the biggest banks of the world.
JP Morgan Chase & Co. sustains as the largest financial organization of the
world by its various business operations that run globally. It operates in four
major business segments that include a vast range of economic solutions and
services for the clients. The business segments are:
2. Commercial Banking –
2
3. Consumer & Community Banking –
3
These business operations keep the company’s growth well-paced and
emphasize on its global evolution. The company has important functional
sections that deliver the operations to the consumers and keep JP Morgan’s
business up and running. These essential sections include –
4
4. Finance Risk Data and Controls Unit-
Cyber & Tech Controls (CTC) is a division of the company that focuses
on safeguarding the business operations of the firm from cyber threats.
The cyber threats have the ability to compromise the integrity,
confidentiality and the efficacy of the data, therefore cyber security plays
a crucial part to protect this data against the threats. JP Morgan’s CTC
division has cyber security procedures that conduct risk assessments,
planning and monitoring for mitigating these threats. Technology
controls proposes mechanisms that ensure proper use, encryption and
management of any and all hardware and software technologies.
6. International Consumer-
One of the main goal of the line of business is to enhance the technologies
used by the employees. All of the internal softwares and applications that
are built for JP Morgan Chase & Co. employee use only are developed by
the technologists of the line of business. Technologists of the line of business
also emphasize on the up and coming technologies of JP Morgan Chase &
Co. that the company is integrating to the teams. EECT has teams
encompassing technologies like artificial intelligence, blockchain and cloud
that build useful products out of these technologies. By leveraging these
technologies, various efficient solutions have been enabled for the company,
such as –
6
4) Machine learning teams that have made personalization of the banking
services suiting to individual clients possible.
EECT is the backbone of all the business operating segments of the firm. It
provides efficient applications and solutions for various departments of the
company, such as the accountants, bankers, attorneys and lawyers etc. The
division brings innovation to all sectors of the firm. EECT makes the
functioning of JP Morgan, both internally and externally possible.
The legal department of the firm is responsible for giving legal advices to
the company, for managing the firm’s legal matters and for ensuring that the
firm’s business proceedings comply with the laws and regulations. The legal
department consists of lawyers, attorneys and paralegals that provide
constant support to the functioning of the company. They also identify and
mitigate any potential legal risks that the firm may experience in the course.
Needless to say that the legal department plays an immensely crucial role in
the existence of the company by ensuring that all external and internal
business operations are operated in accordance with the applicable rules and
regulations. The department keeps the company up and running. The Legal
Solutions department consists of software engineers that formulate and
develop applications that help in the functioning of the legal department of
the firm.
7
Various technologies are used to build useful applications that can help the
firm and the legal professionals to streamline their operations and better
manage their workload. Some use-cases that the department applications are
built on are-
1) Management, organizing and processing of large volume of data,
documents, contracts and confidential information.
2) Electronic discovery, which is the process of identifying, collecting, and
producing electronically stored information in response to legal requests.
3) Data analysis mechanisms that help legal departments to identify
patterns and trends in legal data.
4) System to capture, store and share useful information and knowledge
within the legal department
2. INTERNSHIP TRAINING
2.1 INTRODUCTION
The interns were divided into cohorts and teams that consisted of 5-6 fellow
interns who all worked together as a team to build the full-stack application
using JP Morgan’s technologies. Through this effort, the training
emphasized on the importance of teamwork, which offers chances for
personal development and learning. Team members can increase their
knowledge and abilities by learning from each other's experiences,
viewpoints, and areas of expertise.
The end purpose of the training was to also sell the application to the product
owner using the key features and USPs of the application. The process of
building the application was segmented into 40 minor software development
tasks which all add up to build the application. In the end the mentors,
product owners and judges gave appropriate marking to all the teams based
on the level of application that is built, number of tasks done and final
presentation. Further on, teams qualified for the semi-finals and the finals
round and then the winners were announced.
9
2.2 SCHEDULE
The first week of the training emphasized on learning the technologies that
are used by the firm. Some tasks were assigned along with the learning
technologies and were to be completed on the same day.
10
2.3 ABOUT THE PROJECT
12
2) Notifications and Alerts - Users receive messages and
updates from the application when new reward opportunities,
exclusive promotions, or changes to their reward status
occur. This motivates customers to keep taking part in the
rewards programme by keeping them informed and involved.
These are the key features that make our rewards application
stand out uniquely.
13
2.3.4 PROJECT ARCHITECTURE
The following techstack was taught and used for building the application-
1) Front-End - React is a JavaScript toolkit that provided a component-
based approach to reuse components and build the UI efficiently.
2) Back-End - Java framework ‘Spring’ is utilised to create the application's
backend. It offers a wide range of tools and capabilities that make it
easier to create server-side applications that are reliable and scalable.
3) Testing - For testing the Java application, we use framework called
JUnit. It offers effective means of creating and running unit tests, which
are tests that examine the behavior of components.
4) Deployment – Continuous Integration (CI) and Continuous Delivery
(CD) operations are carried out using Jenkins, an open-source
automation server. It aids in automating several tasks within the
programme, including its development, testing, and deployment.
5) Task Management – Jira is an issue tracking and project management
tool created by Atlassian. It gave us a centralised platform to organise,
monitor, and control our project, tasks, and problems.
6) Team Management - Agile is a method for project management and
software development that is gradual and iterative. It placed a strong
emphasis on adaptability, teamwork, and responsiveness to change,
which helped us deliver the application in an effective & flexible way.
2.5 OUTCOME
The outcome of the 2-week internship training program was that we were
able to learn as well as implement popular JP Morgan technologies that are
used for building real-time applications. We were able to build a real-time
application from scratch ourselves. Not only that, but we were able to
present the application to the stakeholders and the product owners.
The final day of the internship training concluded with a semi-final and final
among all the teams, out of which our team was able to accomplish a place
at the finals and stand as the Top 5 teams out of all the teams in participation.
15
Chapter 3
3. LEARNINGS
3.1 INTRODUCTION
JP Morgan Chase & Co. is a firm that is much bigger and broader than being
just a financial organization and investment bank. JP Morgan Chase & Co.
is a technological company, which prioritizes innovation and its evolution.
The firm emphasizes on constant skill development and learnings that help
individuals to work more efficiently within their teams. From the
commencement of the internship period, including some months prior to it,
JP Morgan Chase & Co. assigned to us various learning courses and virtual
experiences of the internship, which helped us gain an insight into the job
role that we are up for, and helped us enhance our skill-set for the same.
1) Software Engineering –
20
3.1.2 LEARNING CERTIFICATIONS
22
3.1.4 OUTCOME
4. TECHNOLOGY SPECIFICATIONS
4.1 INTRODUCTION
4.2 REACT
Spring Boot is a part of the spring framework and was built with
the intention to make it easier to build, test and deploy spring
applications. Spring boot is a spring module that enables RAD
(Rapid Application Development) feature to the framework.
28
1) Continuous Integration- Jenkins can be automatically
configured to build and test software whenever changes are
pushed in a repo, thus making bug detecting easy.
4.5 CLOUD
29
Cloud computing enables ready-to-use services and resources
that the users can avail based on their requirements, at a pay-per-
use basis. Cloud can be made available in multiple forms, based
on the accessibility and availability provided to the users.
30
Fig 12. Types of cloud
31
1) Infrastructure as a Service (IaaS) – In IaaS cloud service
provider provides customers with virtualized computing
resources, such as – virtual machines, storage, and
networking infrastructure, that they can use to create and
implement their own applications. The maximum level of
control over their infrastructure is given to the customer via
IaaS, which also allows them to scale as necessary.
The way that businesses and people use and manage computing
resources has been revolutionized by cloud computing. With the
flexibility, scalability, affordability, and accessibility it offers,
businesses can concentrate on their core operations without
having to worry about maintaining complicated IT systems. Its
key features are -
32
1. On-demand services – With the use of cloud computing,
clients can provision computer resources—such as servers
and storage—on-demand without the help of the cloud
service provider's staff.
4.6 MONGODB
4.8 INTELLIJ
36
Fig 16. Intellij official logo
37
4.9 JIRA
4.9.1 JIRA
38
3) Personalization - Jira offers adaptable workflows that let
teams create their own procedures and systems for handling
their work.
4.10 GIT
4.10.1 GITHUB
4.11 CONFLUENCE
4.11.1 CONFLUENCE
40
Fig 19. Confluence official logo
41
4.12 JUNIT
1) Testing - The test cases in JUnit, which are classes with test
methods, are how the tests are arranged. Each test method is
designed to test a particular piece of code or behaviour.
5. PROJECT SPECIFICATIONS
43
5.1.2 PROJECT BACKGROUND
44
5) Knowledge Transfer – It is the process of sharing knowledge
and expertise from one individual or group to another. For
organizations to remain competitive and adapt to changing
circumstances, effective information transfer is essential.
46
The UI also provides reporting and analytics features to the
product owners, to get useful insights of how the application
is getting used based on metrics like user activities and
knowledge usage. Adobe Analytics, a robust analytics
platform powered by Adobe is used to report real-time
analytics of the application usage. It provides a wide range of
features for data collection, reporting and visualization.
Adobe Analytics provides reporting dashboards that can be
customized according to preferences. It also offers advanced
tools such as for predictive analysis.
48
Knowledge assets, such as documents, files, metadata, and
related data, are stored and organized by the backend. It
guarantees accurate knowledge indexing, categorization, and
retrieval within the application.
49
CONCLUSION & FUTURE WORK
The internship has been a very illuminating experience and has offered the
author to take a steady and strong step in the corporate world. The project of
‘Legal Knowledge Management’ is a very significant application for JP Morgan
Chase & Co. Being a financial firm that impactful, with a massive legal
department, the knowledge management application proves to be extremely
advantageous for managing, storing and safe-guarding various legal documents.
The application also acts as a social application for sharing legal information
and other knowledge assets with a wider audience efficiently.
The scope of the application’s impacts extends all the employees of the
company. The firm and the stakeholders are on-board with the current
disposition of the application, and it is to be rolled out soon. Further
functionalities are in-place to be developed soon. Application modernization is
an important emphasis of the team, and it will be made possible by integration
of cloud service - AWS to the application. This will enhance the scalability and
efficiency of the application. Evolving technologies like machine learning,
artificial intelligence and Chatgpt are set to be integrated with the application.
The internship duration entailed a marvelous learning curve that covered various
innovative JP Morgan’s technologies for full-stack development. Besides this,
numerous team and project management technologies were also given ample
emphasis during the training. The Agile methodology of team management
particularly stands out for enabling many state-of-the-art techniques for well-
balanced product development with constant team growth. The real-time
application of these technologies has upscaled the author’s technological
knowledge, whilst also uplifting communication and personality skills.
With the conclusion of the internship, the author aims at successfully wrapping
up the internship experience and taking along the lessons learned to imply them
when the job commences. The future ensures constant learning with upcoming
AWS certification and integrating it to the product, along with brainstorming
and developing other innovative ideas to modernize the application. On a
personal level, the author aims at taking more development and leadership
opportunities soon.
50
REFERENCES
4. Prabhakaran, J. (2023, May 9). Ultimate Guide to Law Firm & Legal
Knowledge Management. Document360. https://document360.com/blog/legal-
knowledge-management/
7. Wali, R., & M, S. K. (2020, April 6). Rapid web application development
using Spring Framework: A case study. SSRN.
https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3529327
10. Continuous delivery with Jenkins: Jenkins Solutions to implement ... (n.d.-b).
https://www.researchgate.net/publication/308811242_Continuous_Delivery_w
ith_Jenkins_Jenkins_Solutions_to_Implement_Continuous_Delivery
51
11. The quality of junit tests: An empirical study report - researchgate. (n.d.-e).
https://www.researchgate.net/publication/326471588_The_quality_of_junit_te
sts_an_empirical_study_report
14. An introduction to the key components of Adobe Analytics and benefits ... (n.d.-
b). https://www.grazitti.com/blog/an-introduction-to-the-key-components-of-
adobe-analytics-and-benefits-of-using-it-for-your-enterprise/
52