This report contains concise details of in-plant training received at Colombo Dockyard PLC to fulfill the industrial training requirements of B.Sc. Eng. degree program at University of Moratuwa.
This report is based on the internship experience I had during my time of internship. The relevant details of the internship program are available in the cover page. This report contains three main chapters namely, Introduction to the Training Establishment, Training Experience and Conclusion. In the following paragraphs, what each chapter contains is explained briefly.
The first chapter is titled, “Introduction to training establishment” and it contains information about the organization that I had my training at.
The second chapter includes information related to the training experience I had, during my time of stay at the training establishment.
The final chapter is the conclusion of the report, where it contains a summary of the training experience mentioned in chapter 2 and how all these training experiences affected my life and career and it distinguishes the university life from the training life, by clearly mentioning what I gained as an intern in that company.
"A die is a specialized tool used in manufacturing industries to cut or shape material mostly using a press. Like molds, dies are generally customized to the item they are used to create. Products made with dies range from simple paper clips to complex pieces used in advanced technology".
This report contains concise details of in-plant training received at Colombo Dockyard PLC to fulfill the industrial training requirements of B.Sc. Eng. degree program at University of Moratuwa.
This report is based on the internship experience I had during my time of internship. The relevant details of the internship program are available in the cover page. This report contains three main chapters namely, Introduction to the Training Establishment, Training Experience and Conclusion. In the following paragraphs, what each chapter contains is explained briefly.
The first chapter is titled, “Introduction to training establishment” and it contains information about the organization that I had my training at.
The second chapter includes information related to the training experience I had, during my time of stay at the training establishment.
The final chapter is the conclusion of the report, where it contains a summary of the training experience mentioned in chapter 2 and how all these training experiences affected my life and career and it distinguishes the university life from the training life, by clearly mentioning what I gained as an intern in that company.
"A die is a specialized tool used in manufacturing industries to cut or shape material mostly using a press. Like molds, dies are generally customized to the item they are used to create. Products made with dies range from simple paper clips to complex pieces used in advanced technology".
Final Internship Report at Institute of Information Technology, University of Dhaka (IIT, DU [http://www.iit.du.ac.bd]); performed at Jantrik Technologies Ltd. [http://www.jantrik.com]
An internship report submitted in partial fulfilment of the requirements for the a ward of diploma of science in information technology of muteesa 1 royal university
Internship report playback issue the pagilidhi I am sai 32 I will convince the pagilidhi ra neeku baaga balisindhi I am sai 32 I am sai 32 I am sai 32 I am sai 32 a many of them is the same pic of
Palestine last event orientationfvgnh .pptxRaedMohamed3
An EFL lesson about the current events in Palestine. It is intended to be for intermediate students who wish to increase their listening skills through a short lesson in power point.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
We all have good and bad thoughts from time to time and situation to situation. We are bombarded daily with spiraling thoughts(both negative and positive) creating all-consuming feel , making us difficult to manage with associated suffering. Good thoughts are like our Mob Signal (Positive thought) amidst noise(negative thought) in the atmosphere. Negative thoughts like noise outweigh positive thoughts. These thoughts often create unwanted confusion, trouble, stress and frustration in our mind as well as chaos in our physical world. Negative thoughts are also known as “distorted thinking”.
How to Create Map Views in the Odoo 17 ERPCeline George
The map views are useful for providing a geographical representation of data. They allow users to visualize and analyze the data in a more intuitive manner.
The Roman Empire A Historical Colossus.pdfkaushalkr1407
The Roman Empire, a vast and enduring power, stands as one of history's most remarkable civilizations, leaving an indelible imprint on the world. It emerged from the Roman Republic, transitioning into an imperial powerhouse under the leadership of Augustus Caesar in 27 BCE. This transformation marked the beginning of an era defined by unprecedented territorial expansion, architectural marvels, and profound cultural influence.
The empire's roots lie in the city of Rome, founded, according to legend, by Romulus in 753 BCE. Over centuries, Rome evolved from a small settlement to a formidable republic, characterized by a complex political system with elected officials and checks on power. However, internal strife, class conflicts, and military ambitions paved the way for the end of the Republic. Julius Caesar’s dictatorship and subsequent assassination in 44 BCE created a power vacuum, leading to a civil war. Octavian, later Augustus, emerged victorious, heralding the Roman Empire’s birth.
Under Augustus, the empire experienced the Pax Romana, a 200-year period of relative peace and stability. Augustus reformed the military, established efficient administrative systems, and initiated grand construction projects. The empire's borders expanded, encompassing territories from Britain to Egypt and from Spain to the Euphrates. Roman legions, renowned for their discipline and engineering prowess, secured and maintained these vast territories, building roads, fortifications, and cities that facilitated control and integration.
The Roman Empire’s society was hierarchical, with a rigid class system. At the top were the patricians, wealthy elites who held significant political power. Below them were the plebeians, free citizens with limited political influence, and the vast numbers of slaves who formed the backbone of the economy. The family unit was central, governed by the paterfamilias, the male head who held absolute authority.
Culturally, the Romans were eclectic, absorbing and adapting elements from the civilizations they encountered, particularly the Greeks. Roman art, literature, and philosophy reflected this synthesis, creating a rich cultural tapestry. Latin, the Roman language, became the lingua franca of the Western world, influencing numerous modern languages.
Roman architecture and engineering achievements were monumental. They perfected the arch, vault, and dome, constructing enduring structures like the Colosseum, Pantheon, and aqueducts. These engineering marvels not only showcased Roman ingenuity but also served practical purposes, from public entertainment to water supply.
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Ethnobotany and Ethnopharmacology:
Ethnobotany in herbal drug evaluation,
Impact of Ethnobotany in traditional medicine,
New development in herbals,
Bio-prospecting tools for drug discovery,
Role of Ethnopharmacology in drug evaluation,
Reverse Pharmacology.
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxEduSkills OECD
Andreas Schleicher presents at the OECD webinar ‘Digital devices in schools: detrimental distraction or secret to success?’ on 27 May 2024. The presentation was based on findings from PISA 2022 results and the webinar helped launch the PISA in Focus ‘Managing screen time: How to protect and equip students against distraction’ https://www.oecd-ilibrary.org/education/managing-screen-time_7c225af4-en and the OECD Education Policy Perspective ‘Students, digital devices and success’ can be found here - https://oe.cd/il/5yV
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
training report
1. UNIVERSITY OF MORATUWA
Faculty of Engineering
Non-GPA Module CS 3992: Industrial Training
TRAINING REPORT
Mubasher Technologies (Pvt) Ltd
From 19th
June 2017 to 1st
of December 2017
S.P. Thewa Hettige
140623B
Department of Computer Science and Engineering
2. Industrial Training Report S.P. Thewa Hettige
2
I. Preface
This report is a full detailed capture on the industrial training program that I underwent under
the module 3992 by university of Moratuwa faculty of engineering with the collaboration of
NAITA.
I take this as an opportunity to thank the industrial training division of University of
Moratuwa and department of computer science and engineering of UoM for providing this
valuable opportunity. It’s vital an undergraduate has a proper understanding about the
industry he/she is about to enter there by this program addresses that area quite successfully. I
completed my training at Mubasher technologies (Pvt) Ltd and I strongly believe I was able
to achieve the objectives of the module during my stay at Mubasher . This report summarizes
my experience at Mubasher for 24 weeks spanning from 19th
July 2107 to 1st
of December
2017
This training report has 3 major sections. In the first section provides a glimpse to the training
establishment. Mubasher is a global leader when comes to brokerage solution providing.
Chapter 1 includes the details of Mubasher technologies private Ltd and its functionality
Second chapter is focused on my training experience. It is again categorized in to few
subsections such Project work assigned to me, technologies I got exposed and the
extracurricular activities I took part during my tenure at Mubasher. This was my first time
working in a company and it was a great opportunity for me to develop personal and
professionally.
Third and the Final chapter carries a summarized conclusion on my training experience. This
section includes what I learnt from the company during the training period, what targets in
mind I had in my mind that was achieved and not achieved and my perspective on the
training program offered by Mubasher and few of my suggestions to improve the training
experience.
3. Industrial Training Report S.P. Thewa Hettige
3
II. Acknowledgement
I Take this as an opportunity to thank the training division of UoM and the department of
computer science and engineering for providing us this amazing opportunity to get the
necessary industrial exposure required to be the best of the best in the IT and software sector.
Further a bog thank you goes to our former departmental head Dr.Chathura de silva for his
guidance and support and Dr. Dilum Bandara for coordinating the module and handling the
entire process from collaborating with companies, pitching sessions to securing interviews for
us.
A special thanks goes to Mr.Nihal wijewerra head of industrial training and Mr.Ananda
Gamage for taking good care of us during the training period and for their effort in making
this module a valuable as well as an effective experience for all 3rd
year undergraduates. I
wish you all the good luck to continue the training program that we received to upcoming
batches too.
Next I wish to thank the general manager DFN Mubasher Mr..Arjuna Nanayakkara and the
tech leads at Mubasher for recruiting me for the organization. Special thanks goes to my team
leads Mr.Amila Manatunga and Mr.Chaminda Hettigoda for trusting me with their important
team work. My heartfelt gratitude goes my mentor Nuwan Millawitiya for guiding me right
throughout with his technical expertise , providing useful insights ,reviewing my work and
pointing out my flaws during my brief stay at Mubasher. Further I wish to extend my thanks
to all the fellow colleagues I met during my training and whom I worked with for considering
me as one of their own and helping me learn and grow .
Further I got the opportunity to participate in lot of extracurricular activities at mubasher .
This really helped me to bond well with the rest of the staff and build a relationship with
them that will last beyond the walls of the organization. I wish to thank the HR of Mubasher
as well as the MFS fun club for letting us take part in the fun activities and for letting us
organize “STEP UP” annual interns day.
At last but not least I wish to thank my fellow batch mates’ Chamath Manuka and Viran
Malaka who worked with me side by side during training. We represented the major teams at
Mubasher and during our training we managed to do some impressive work together and I
believe we were able to create a very good image as undergraduates of University of
Moratuwa.
4. Industrial Training Report S.P. Thewa Hettige
4
Table of Content
Contents
I. Preface................................................................................................................................2
II. Acknowledgement .............................................................................................................3
1. Introduction to the Training Establishment .......................................................................6
1.1. Introduction.................................................................................................................7
1.1.1. History of Mubasher and its Current status .........................................................7
1.1.2. Achievements of the company.............................................................................9
1.1.3. What does Mubasher do?.....................................................................................9
1.1.4. Vision and Mission of Mubasher.......................................................................11
1.1.5. Mubasher Client Products..................................................................................11
1.1.6. Technologies Utilized........................................................................................13
1.2. Organizational Structure ...........................................................................................13
1.3. SWOT Analysis.........................................................................................................14
1.3.1. Strength..............................................................................................................14
1.3.2. Weaknesses........................................................................................................16
Lack of Proper Documentation........................................................................................16
1.3.3. Opportunities......................................................................................................17
1.3.4. Threats................................................................................................................17
1.3.5. Profitability ........................................................................................................17
2. Training Experience.........................................................................................................18
2.1. Product ......................................................................................................................18
2.1.1. Features of Admin Terminal..............................................................................18
2.1.2. Frameworks for development ............................................................................20
2.1.3. Developer expectation for new web AT Web Framework ................................20
2.1.4. IDE and Version Controlling.............................................................................20
2.2. Methodology .............................................................................................................21
5. Industrial Training Report S.P. Thewa Hettige
5
2.3. The first day of Internship.........................................................................................22
2.4. Next few weeks .........................................................................................................23
2.4.1. Working hours ...................................................................................................23
2.4.2. Daily routine in Company Premise....................................................................23
2.4.3. Recreational Activities.......................................................................................24
2.4.4. Outings, Trips and Celebrations ........................................................................24
2.5. My work during the training period ..........................................................................27
2.5.1. Implementing Sub Market Module in Admin Terminal....................................27
2.5.2. Development of web AT....................................................................................29
2.5.3. Development of desktop wrappers for the web AT...........................................32
2.5.4. Research (PoC) to select the best grid structure for the Web AT......................36
2.5.5. Other Projects.....................................................................................................38
2.6. Workshops and Tech talks ........................................................................................42
2.7. Problems and Diffculties Faced ................................................................................42
2.8. Experience and skills gained.....................................................................................43
3. Conclusion .......................................................................................................................44
III. List of Abbreviations ...................................................................................................45
6. Industrial Training Report S.P. Thewa Hettige
6
Figures
Figure 1 Company logo .............................................................................................................6
Figure 2 NTG logo.....................................................................................................................8
Figure 3 Company diversity.......................................................................................................8
Figure 4 Mubasher Trade Pro ..................................................................................................12
Figure 5 Mubasher Trade plus.................................................................................................12
Figure 6 JIRA account .............................................................................................................15
Figure 7 Desktop AT ...............................................................................................................19
Figure 8 WEB AT first view....................................................................................................19
Figure 9 Agile procedure .........................................................................................................22
Figure 10 Company events ......................................................................................................26
Figure 11 WEB AT view .........................................................................................................29
Figure 12 Sidenav AT..............................................................................................................31
Figure 13 Splash screens for desktop wrapper ........................................................................32
Figure 14 Desktop wrapper with top menu bar .......................................................................35
Figure 15 Ag grid upon implementation with features............................................................37
Figure 16 Material grid implementation..................................................................................38
Figure 17-UI prototype Menu Navigation developed..............................................................40
Figure 18 Bitcoin and Block chain tech talk............................................................................41
1. Introduction to the Training Establishment
Figure 1 Company logo
7. Industrial Training Report S.P. Thewa Hettige
7
1.1. Introduction
1.1.1. History of Mubasher and its Current status
The Chairman of the company is Eng. Mohammad Al Balla . The founder of
the company is Mr. Manjula Jayasinghe who came from Saudi Arabia and started the
company in Sri Lanka as a stock brokerage system. In the year of 2000 Mr. Manjula
Jayasinghe officially founded DirectFN | Mubasher in Sri Lanka. He initially named
the company as ISI Sri Lanka (Pvt) Ltd. Initially the company was started in Trans
Asia with only 8 people. Company grew up to 14 employees and it was moved to
Nawam Mawatha in 2003. The company was moved to a wider space in kohuwala
since it grew up to 60 members rapidly in the year 2007. Thereafter
DirectFN|Mubasher was separated as 2 companies instead of one and DFN was
moved to Park street Colombo 02 and Mubasher technologies was established in
borella.
Mubasher is one of the finest software solution providers in FinTech Industry.
Difference between DirectFN and Mubasher is that DirectFN is a product company
which make software products to 3rd
parties. As Mubasher owns a brokerage (MFS)
and the brokerage software is developed by Mubasher and it is also the owner. The
company runs from the commissions in every transactions make as a broker.
Mubasher doesn’t make products and sell them to others but they maintain their own
product and conduct resecrh and development to make their products superior.
This operates in over 37 markets including the top positions at Saudi Arabia, UAE and
Sri Lanka. It operates under the largest ICT services provider in Middle East and North
Africa (MENA) region, National Technology Group (NTG) which is a business group
with revenues in excess of $500 MM. NTG mainly provides its services to Middle
East, India, Sri Lanka and the United State through over 20 subsidiaries worldwide.
Mubasher currently provides real time market data, financial content and direct market
access to over 77 stock exchanges globally.
8. Industrial Training Report S.P. Thewa Hettige
8
Figure 2 NTG logo
Mubasher technologies is responsible of delivering low latency and more
efficient services application in trading. Sri Lankan team is responsible of doing
researches and development to enhance this features more and more. So it is an
important thing to select the best employees for this organization as this company runs
effectively in seconds as well. So performance is highly considered. Below you can
see the company’s diversity all around the world centering Saudi Arabia.
Figure 3 Company diversity
9. Industrial Training Report S.P. Thewa Hettige
9
1.1.2. Achievements of the company
First project- Saudi Stock Exchange
Part of the NTC Group
By 2005 – 98% market share for price information dissemination with
Mubasher Pro in Saudi
By end 2005- started our own brokerage which is the #2 brokerage in Dubai
today
Mubasher Pro for Egypt expansion
Started our own brokerage which is the No 2 brokerage in Dubai today
Deployed our solutions in the whole middle east region and many countries in
North Africa
Further developments – India / Pakistan / Indonesia/ Bangladesh / Sri Lanka
1.1.3. What does Mubasher do?
Mubasher as a business has few different solutions offered (When you go to
mubashertrade.com you will be able to see a page asking you to choose an option)
1. Global trading
2. Egypt
3. UAE
4. Institutions
Global trading is where customers can join and trade in any of the exchange world wide (In
UAE, Saudi, QATAR, Kuwait, UK, USA, SL, etc.) in number of instruments (Equity,
Futures, CFDs, Bonds, Forex, Etc.)
A customer join this means he will be a customer under mubasher (Dutrade) which is
registered in Bahrain as Mubasher Financial Services BSC.
(http://global.mubashertrade.com) - this has a direct connection with Bahrain exchange only
and Mubasher have a banking license as well to do currency exchange for their customers)
10. Industrial Training Report S.P. Thewa Hettige
10
Second one is Egypt brokerage which is a typical brokerage that you come across in SL,
where customers under Mubasher brokerage in Egypt will be connected to ONLY Egypt
Exchange, and these customers are not allowed to trade in other exchanges worldwide
(http://egypt.mubashertrade.com)
UAE setup is similar to Egypt but with one exception (Which was introduced very recently),
UAE customers who join Mubasher (Now known as alsafwa-mubasher after mubasher
merged with Alsafwa brokerage) can trade in UAE Exchanges (ADX, DFM, DIFX, DGCX).
But the change compared to Egypt is that now these customers are allowed to trade in other
exchanges in other countries as well.
And remember this is different to Bahrain brokerage we have and a completely different
setup
Bahrain setup in overall is called MFS and Dubai brokerage is called UAE or DBFS
4. Institutional system which is complicated out of all the solutions is something like this.
Imagine you are a brokerage that want a good system for your customers but cannot buy a
system fully and also in need of allowing their customers to trade in all the countries. Now
Mubasher institutional setup ( called DIFC ) is offering a white label franchise solution
(similar to KFC, Pizza HUT,etc) where you pay for trade you do (Through commission). This
white label solution includes customization of front end products, and allowing this outside
brokerage to connect their customers to exchanges they need through good software.
Imagine a customer in this brokerage: this is how you are allowed to place a trade in
exchange
Customer -> send to outside brokerage -> comes to DIFC -> send to exchange/executing
broker -> then exchange if first came to an executing broker -> then to exchange.
(https://institutional.mubashertrade.com)
For DBFS/UAE information visit http://www.alsafwamubasher.ae :)
11. Industrial Training Report S.P. Thewa Hettige
11
1.1.4. Vision and Mission of Mubasher
Vision - To become the most sought after investor desktop and
transaction platform for financial institutions in the world.
Mission - To develop world-class next generation innovative solutions using the
latest technology, with an extraordinary talented team of diverse professionals in a
collaborative, learning environment.
1.1.5. Mubasher Client Products
Mubasher products vary from desktop to web applications as well as
mobile applications, for the investor who is on the move. This provides a wide
range of products for real-time price dissemination, secure e- trading,
financial data delivery and analysis tools to suit every tier of investor. It offers
next generation order management technology to the clients with its products.
Also they are available in multiple languages specialized for different regions
and the products are developed to fulfill all the requirements of each and
every investors and all clients. It provides comprehensive solutions to the
financial community with the capability of viewing real time prices and
related information for multiple asset classes. Following are the main products
of Mubasher,
Mt Plus Dubai
Mt Plus Egypt
Mt plus Global
Mt Plus Thawasul
Egypt Game
Mubasher Trade Forum
Thawasul Game
Mubasher Contribution Platform
12. Industrial Training Report S.P. Thewa Hettige
12
Some Client Products
Figure 4 Mubasher Trade Pro
Figure 5 Mubasher Trade plus
13. Industrial Training Report S.P. Thewa Hettige
13
1.1.6. Technologies Utilized
1.1.6.1. Programming Language and framework
Java (SE/EE)
HTML5
CSS
Bootstrap
Angular4
electron
1.1.6.2. Application servers / Web servers / Middleware
JBoss
Apachche
Jetty
IBM MQ Server
NginX
1.1.6.3. Databases
Oracle
MySQL
1.2. Organizational Structure
Chairman is the head of the company , he is followed by the management committee .right
after them comes Architects ,technical managers and Engineers and the lowest layer is
composed of support divisions which include source control ,UI,QA ,product management
,release and tech writers.
14. Industrial Training Report S.P. Thewa Hettige
14
1.3. SWOT Analysis
1.3.1. Strength
High powered teams
MFS is the leading brokerage service provider in middle east region and the services and
platforms they provide are of high qualitya and they have a solid customer base
Further mubasher has serval teams including OMS team, MT+ team, price team ,shared
services team ,App support team and the HR team. These high powered teams consisting of
highly skilled individuals are the backbone of the company. They share their knowledge with
the newcomers and interns of the company to reduce the steepness of the learning curve.
Success of the mubasher brokerage in Middle East region is a proof of quality and
professionalism of the teams at mubasher development center.
Sprint meetings and scrum methodology
During my training period I was able to participate in team activities that follows sprints
based on scrum methodology. Upon receiving Change requests from the clients, team
planned a sprint .they received huge amounts of requests over time and they decided on the
once that are crucial and that should be given priority during the initial sprint planning. After
this few requests was chosen and they were included in a 2 week sprint .team members will
volunteer and assign themselves to fix the given issues .Every day at a certain time the team
gathered and discuss the current situation of the sprint. Fixed issues were marked complete,
others were marked as in progress. Time spent on fixing each issue was marked along with
the estimated time in story points. Burndown chart was adjusted to see how the team is
performing at the moment and to figure out whether we need to work faster.if there were
unclear areas the team discussed them during the meeting. If a person faces a problem during
the development phase team will discuss and help to resolve the matter.
JIRA was used as a tool for tracking purposes.As agile software development methodology
gives much more benefits over other known methodologies, it strengthens the work of the
company. Benefits are adaptive planning, evolutionary development, early delivery,
continuous delivery and rapid response to changes. And also the use of JIRA to plan and
15. Industrial Training Report S.P. Thewa Hettige
15
work in agile software development is ideal. To make developers life easier it is equipped
with various features such as bug tracking, requirement tracking , issue tracking, traceability
and project management functions.
Figure 6 JIRA account
Company Image and Service History
Company has a powerful HR system as HR management is one of a key role in
company that needs to be taken care of . They have allocated a separate team to maintain
the HR system and HR system available at mubasher (brainxhr system) is also developed
by an employee.
App support Team plays a big role in the company image too. Their service is available
24 hours each day. bugs reported they are mentioned in the JIRA and will be fixed
according to the priority.
Products are checked by experienced QA engineers before being delivered to the
users. The QA has several rounds firstly in local and they are sent to UAT testing and
their employees in Dubai check for any bugs then in to production testing and then into
production so the quality is so high the probability of having a bug us very loo in that
case. Because of this high quality products
16. Industrial Training Report S.P. Thewa Hettige
16
1.3.2. Weaknesses
Lack of Proper Documentation
When comes to documentation , some of the processes ,work flows ,class diagrams , ER
diagrams and changes are not properly documented.since mubasher is trying to receive the
CMMI level 3 certification having proper documentation is a must and now they are working
on keeping proper note of their current work and also generating necessary docs for older
work.our team uses Confluence as a tool for documentation purposes as of now and
everything we do are properly documented.But to receive the CMMI level 3 certification
company has to pass 3 audits that includes a through documentation that will be properly
examined by the authorities.
Focuses only on a single domain
Mubasher is the leader in fintech. They are restricted to providing brokerage services only
.mubasher doesn’t have diverse amount of products like virtusa, which is clear barrier for the
company to expand. Further they provide enterprise solution soft wares unlike WS02,whereas
companies like WS02 are more in to developing technologies instead of developing
enterprise software. Therefore the employees and interns are restricted to a limited amount of
technologies and there aren’t many research areas to dig deep in to since their trading
platforms have matured over time and they doesn’t need much big scale changes. Further
since the domain covered by mubasher is small there is less competition and company
doesn’t get challenged enough. This affects the developments rate of the company massively.
Less exposure for Employees
since the development in mubasher is restricted to financial domain employees are
only exposed to development of enterprise solutions.
17. Industrial Training Report S.P. Thewa Hettige
17
1.3.3. Opportunities
Expansion
Mubasher is currently the best performing brokerage in the Middle East region but their
impact on other regions is not as significant as Middle East. Therefore they are in look out for
expansion. To expand attracting more investors is a must and attracting investors form UK
USA is vital. Therefore mubasher is trying to earn the ISO certification currently to appeal
itself better to the potential investors.
These days mubasher technologies is trying to get their hands on CMMI level 3 certification
too and there are not many companies that has achieved that status here is Sri Lanka
.therefore this will definitely help in further bettering the company’s image in the industry
and emerge as a global leader.
1.3.4. Threats
Competitors and other trading platforms
Mubasher has number of competitors such as EFG Hermes, Mashreq , Belton etc. Therefore
it is necessary for the mubasher trading platforms to run efficiently without any down time to
keep its customers and users satisfied
1.3.5. Profitability
The product and the product owner both are the same. company is the booth
brokerage and the system. From each transactions buy or sell the company gains a
commission. In each second many transactions take place and from each transaction a
percentage wise commission is gained to Mubasher by adding these all up daily
Mubasher earns a huge amount of money which is also used to pay the salaries for the
employees who work in it Inside the application, there are places users need to subscribe
for getting some information. Price and Trade details of the companies are not provided
freely. To subscribe for those details, users needed to pay DirectFN which is the sister
company of mubasher.
18. Industrial Training Report S.P. Thewa Hettige
18
2. Training Experience
2.1. Product
Admin terminal is an application used to handle customer support services in stock
brokerages. It’s an integral part of a trading system that works hand in hand with order
management systems to manage accounts. Settle dues and holdings, and record customer data
and transactions.
The current AT mubasher uses is a desktop application developed using .NET , its heavy and
it has more than 1000 distinct features which makes it unique and highly important business
wise. From adding customers system to adding various types of accounts to CRUD
operations on orders and many others can be easily done via the AT. whenever the app
support unit receives a call from a customer regarding an unexecuted order or an uninitilized
account that’s he/she created, AT can be used to look in to those matters immediately and fix
it. This makes admin terminal the back bone of mubasher trading systems .
Web Admin Terminal – this is the web version of the admin terminal a project we started
from scratch to develop during our training period.
2.1.1. Features of Admin Terminal
Admin terminal is the backbone of Mubasher It can perform CRUD operations on almost all
entities in the system.It can add customers edit customer view customer summary ,view
customer details ,view his transactions and orders .further it has the ability to generate all
kinds of reports
20. Industrial Training Report S.P. Thewa Hettige
20
2.1.2. Frameworks for development
Web AT relies on the framework Angular 4 which was chosen due to its ability to
have a strong backend logic along with a high class view and speed is also an additional
factor why Angular 4 was chosen.
2.1.3. Developer expectation for new web AT Web Framework
Framework was expected to provide following features ,
Reusable widget libraries.
Responsiveness
Unique user experience
Real time update
Unit and functional testing
Technology stack to develop web AT
AJAX
JQuery
Jasmine framework for testing
JSON
Bootstrap 3/4
SASS
Flexbox and CSS3
Angular 4 framework
HTML5
NodeJS
HTML5 App cache and local storage
2.1.4. IDE and Version Controlling
Mostly for development purposes I used IntelliJ idea and Webstorm. There were few
occasions where I used VS code instead of webstorm since its lightweight. Version control
was GIT. We were given bit bucket accounts by the company and also the access to
necessary code repos.
21. Industrial Training Report S.P. Thewa Hettige
21
2.2. Methodology
My team at mubasher practiced agile development methodology called Scrum. Our onsite BA
team interacted with different business units of MFG and raised change requests for new
features/enhancements.
Also they conducted the UAT for software releases for from CDC and report defects against
different products/components. Production issues were reported by both BA team and
application support team.These issues and new requirements were prioritized and routed to
CDC via management tool called JIRA (jira.mubasher.net). This was refereed as the product
backlog and this backlog contained defects and CRs raised by internal teams also.
Our team then planned for regular sprints to implement or fix the reported CRs and defects.
team selected how much to commit to do by the end of the sprint, priority of reported items
were checked again with the on-site team. Once priority of the items were confirmed, team
selected a set of high priority items to fit the duration of the sprint and commit a delivery
date. During the sprint, our team continued on refining the product backlog. Testing is also a
major part of the sprint. At the end of the sprint, we had products/components that are tested
and ready to ship.
Once the sprint release is out, it was uploaded to MFG Release Web with detail release notes.
A release email was also sent along with release notes to application support and BA team.
Application support team deployed the release components on UAT environment. Once the
deployment is done, BA team started doing UAT on newly released versions and once the
testing is completed, release will be moved to production. BA team provides end user training
if required to use the new features of the system.
This process helped me a lot to understand the product life cycle and how issues are
addressed.
22. Industrial Training Report S.P. Thewa Hettige
22
Figure 9 Agile procedure
2.3. The first day of Internship
I started my training with mubasher on 19th
of June 2017. I signed the contract and received
my laptop from the IT division. There after I was introduced to the team I was about to start
working to which was the OMS team. The team was as follows
Chaminda hettigoda (Senior software architect)
Imali Nawaratne (chief QA engineer)
Nuwan Millawitiya (Tech Lead)
Pumudika Dissanayake (Senior software Engineer)
Thilanga Jayamanna (Tech Lead)
Ovina Peiris (Business Analyst)
Ahsan shamshudeen (Senior software Engineer)
Ruchira Ranaweera (Associate tech lead)
Chathura Randika (Senior Tech lead)
Kulanga athukorala (Business Analyst)
23. Industrial Training Report S.P. Thewa Hettige
23
I was introduced to the above personals and I was given a work station to start working.
Further I received a company email, access to Mubasher code repositories and access to
company Wi-Fi and I was added to the mailing groups and skype chats of respective teams
.Further I was provided with some material such as a scrum primer a booklet for me to learn
how scrum methodology and sprint meeting work. Work of the previous interns was shared
with me to get an idea of the kind of work that had been done previously.
I was provided the necessary tutorials and a bunch of soft wares that I needed to set up before
starting work. HR had a session for us about our leaves, dress code and other company
benefits available for the interns. I was provided assistance to install and configure all the
softwares necessary.
2.4. Next few weeks
2.4.1. Working hours
Usual company hours were from 9 in the morning to 6 in the evening but we were allowed to
cover 8 hours of work any way we wanted. I worked late on most days till 7-8 eventhough
the work finished at 6.we stayed almost till 11-12 on the days we were preparing for the tech
talk and organizing intern’s day.
2.4.2. Daily routine in Company Premise
. I usually arrived at company premises around 9-9.30 in the morning and I had my breakfast
with the few of my team mates. We were served tea at 10 am every working day. At around
11 -12 the team usually had the sprint meeting to discuss the current situation of the sprints
and matters at hand. The days we had tech talks most of them were held at the office
premises from 10.15 to 11 whereas the staff participated in them keeping aside their work.
We used to have lunch at around 2pm and the evening team was served again at 3. If there
was a special occasion such as a birthday or a farewell party it was celebrated at around 5.
Any special announcements from the GM or from the members of the fun club was made in
the evening. We had several events inside office premises such as the carom league and
interns day. Those were started around 5 and went late till 9-10.the days we stayed late for
office work we were provided dinner along with an Uber ride to go home after the work is
completed. After 6 most employees got together to play carom.
24. Industrial Training Report S.P. Thewa Hettige
24
2.4.3. Recreational Activities
We used to play badminton in DS senanayake college courts on Thursday evening which was
booked by the company.few of the other employees did swimming on college pool.after
working hours we played carom mostly and there were few outings with the team as well.
2.4.4. Outings, Trips and Celebrations
MFS Aurudu festival
1st
event we took part was the MFS Aurudu festival which was held In june.this was right
after we were selected from the interview and by this time our training wasn’t even started
yet but still we received an invitation form the HR to take part in the event. It was held in
aqua pearl hotel panadura. We participated in lot of aurudu games and other fun filled
activities and we got the opportunity to mingle with the office staff for the first time.
“MFS strikes” –MFS bowling challenge
Staff of MFS took part in MFS bowling challenge at excel world 20th
of July 2017. The
employees were divided in to 5 separate group and they fought shoulder to shoulder for the
bowling trophy. After the event we had dinner and the winners were given gifts and the event
was a mega success since everybody enjoyed bowling and the excitement equally.
MFS Carom championship
Once again this event was organized by MFS fun club .the event was held at company
premises with the participation of 5 teams under 5 categories men’s singles/doubles,
women’s singles/doubles and mix doubles. Most games went till the wire and it was a fun
filled evening since everybody was involved in cheering their teams. Awards were presented
to the winning tea, after the event.
MFS cricket league - MCL
MFS cricket league was held on 20th
of October at Malay grounds .players were auctioned
away in a bidding where captains and team managers were allowed to pick players for their
side using virtual cash.5 teams fought for the trophy and it was a close competition whereas
team fatty livers ended up being champions.
MFS annual trip
25. Industrial Training Report S.P. Thewa Hettige
25
We went on our annual trip to cinnamon Yala on 8-10th
of September .it was a family trip and
it was an amazing opportunity to get to the families of the fellow employees. Trip spanned
for 3 days, we played cricket went on swimming and enjoyed the Yala safari.
Careers day –University of Moratuwa
CSE careers fair was held on 18th
of October 2017 and we with the rest of the Mubasher team
and DFN team participate in it representing our respective companies. We demonstrated how
Mubasher products work for the juniors and answered their questions regarding them. It was
a huge honor and big experience participating on behalf of a company to promote it.
MFS interns day –STEP UP 2017
Interns of Mubasher got this opportunity to organize a fun event for the rest of the employees.
Myself ,2 of my batch mates along with 2 IIT interns and an NSBM intern got together to
organize step up 2017.we did a segment called “how well do you know your interns?”. And
asked each employee of the company about their interns and recorded their answers and it
was played on the event day. Our event composed of 3 rounds where 1st
round was bunch of
quizzes second round contained Pictionary and 3rd
round was a dress up and a role play game
between teams. Dinner was also provided for the participants and awards were given to the
winners. we received a hugely positive feedback about the event and everyone was happy
about the effort we put in.
27. Industrial Training Report S.P. Thewa Hettige
27
2.5. My work during the training period
2.5.1. Implementing Sub Market Module in Admin Terminal
Requirement
The admin terminal provides the ability to add , update or delete customers to the
sytems or orders to the system apart from the many other features it provide.submerket
module was necessary to be implemented under the market module since trading in
submarkets are also allowed through mubasher platforms
Solution
I went through the available code and went through several instances where sub
modules of major modules are implemented.Reuirements were studied and it was understood
that I had basically 5 features to implement.adding a submarket , updating a sub market
,changing the status of a submarket( active / inactive ) ,displaying the full list of submarkets
in the AT and displaying a filtered submarket list.I figure out eventhough there are 5
requirments only 4 methods has to be written since the last 2 requiremnts ,displayin =d the
list and displyingt the filtered list can be handled through thr same method via a single JSON
request just by passing an extra argument to the method that carries the field to which the
fileter should be applied.
Approach
I studied the document on their existing JSON request protocol. 4 requests were designed
and the system used indexes to identify these requests. 2 numbers are send along with the
request by which the system understood the module to look for (market module) and action to
perform (add/edit /change status/display list of submarkets). Postman was used to send API
calls to the Admin terminal. Admin terminal was configured and hosted on localhost at the
beginning but later it was deployed on wildfly application server.(Jboss) . necessary fields a
sub market should have has to be decided accordingly full JSON request was prepared
28. Industrial Training Report S.P. Thewa Hettige
28
Implementation
New bean was created named sub market bean and relevant request beans and
response beans were written
Looking at the already existing JSON request protocol a 4 JSON requests were designed for
adding, updating, changing status and display list requests.
Table was added to the database with necessary fields
Relevant methods were written in the market controller to add edit and display submarkets
Test cases were written to test the methods, DAO tests were written using mojito
JPA and stored procedures were used to persist data to the database
Final Outcome
I was able to complete my work before the due date, all methods were tested and
whenever there was any issue the program was debugged , error point was found and fixed.
Lot of errors came up while the development process but they were fixed until the required
JSON response was obtained. Test cases were written for each method and DAO tests were
written in order to test persistence too.
Code was submitted to my mentor for review. After the feedback code was refactored,
camel casings were adjusted, meaningful method names were added, comments were added
to the code where necessary for better understanding. Code quality was tested with sonarqube
and critical issues it pointed out was fixed. Sample JSON requests and responses were noted
down and included in the AT documentation for anyone s referral.
29. Industrial Training Report S.P. Thewa Hettige
29
2.5.2. Development of web AT
Requirement
The requirement is to convert the standalone Desktop AT to a web version. mubasher
currently has a desktop AT which is fairly heavy and it has thousands of features.it takes lot
of effort to learn how to work in it and it’s not very user friendly visually. Therefore
mubasher wanted us to develop a web AT using latest technologies that is user friendly and
that offered a smooth navigation to the features unlike in the current AT.
Approach
Since we had to develop the project from scratch we had to select what technologies
will suit us better in the long run. Since web apps team has already started developing rubix
framework using angular 4 we decided to go with angular 4 and develop the AT as a
customization inside the rubix code since we can use the rubix resources and we can share a
common code base instead of developing everything from scratch. We also looked in to the
rubix code and used few of there conventions in developing ours .
Figure 11 WEB AT view
30. Industrial Training Report S.P. Thewa Hettige
30
Implementation
I had to study angular before starting since I had very limited knowledge about it.
once done we added a basic login page to get things started. We started developing under
rubix products. We made a different product called AT and started writing code inside that
module.
Further sub modules were created to make the procedure more systemic such as backend
module, constants module, layouts, widgets, routing and assets.
First we wanted to put some dummy buttons in the interface and display some raw data in it.
A service back office service was written to send the requests to the back office core. The
structure of the JSON requests that are accepted by the back office core were understood and
requests upon button clicks were made to follow that pattern.URL of the back office core was
given to the program so it knows where to send the request. response was grabbed and
displayed in JSON format in screen in the beginning but later they were displayed in grids
after widgets were developed.
Final Outcome
Initial phase of the development of web AT was successful since we figured out aa
structure to send JSON requests to the back office using web AT instead of postman and the
methods that were written were optimized in various ways.
32. Industrial Training Report S.P. Thewa Hettige
32
2.5.3. Development of desktop wrappers for the web AT
Requirement
Even though a web app is available with all AT functions some people still require the
desktop fell of it. there are few among us who would still prefer downloading an installer,
installing it and using with a desktop icon without visiting the web app. therefore developing
a desktop wrapper for the web app was necessary.
Approach
Electron framework was chosen to develop the desktop wrapper since it allowed developing
cross platform desktop apps with the use of web technologies such as HTML ,CSS and
javascript. Therefore learning about .NET wasn’t necessary since web technologies alone
allowed us to develop the wrappers.
Electron provides a runtime to build desktop apps only with pure JavaScript. Electron takes
a main file defined in your package.json file and executes it. This main file,then creates
application windows which contain rendered web pages with the power of interacting with the
native GUI of your OS .
Figure 13 Splash screens for desktop wrapper
33. Industrial Training Report S.P. Thewa Hettige
33
Implementation
It was required to learn electron before developing. Therefore few examples and
existing applications were studied beforehand in order to get a solid idea about the features
available through electron.
Firstly a basic electron app was developed where you were directed straight to the
authentication page of the web app.URL to this page was given to the electron and upon
firing up on a chromium browser window users were directed to the login page of the web
app through which they could login and go to the next pages available. But few complications
arose since all the navigations to various features were still done through the web app instead
of through the electron menu bar. So it was necessary to figure out a way to navigate to
various features only using the electron menu bar. Because of this it was required to find a
way to communicate with the web AT and electron app where electron app tells the web AT
which menu bar item was clicked and web AT choses you the right URL and sends it back to
the electron app. for this to happen it needed a back and forth communication method
between the web AT and electron app (wrapper) .for this IPC (inter procedure
communication was used.
IPC lets the 2 apps talk to each other using ipcMain and Ipc Renderer methods. Whenever a
menu bar item was clicked an index (a number) assigned to that specific button was send to
the webAT via IPC. Web AT picks up the number form its index.html and sends it to aa
angular component .the component looks at the number and picks up the available route for it
and returns it to the electron app via IPC thereby the relevant page is loaded in the browser
window.
Few bugs were encountered along the way and necessary fixes were done
Usually in the web app users are allowed to see the menu bar only upon login but in the
electron app since the menu bar was on the browser window by default it was seen even
when the users were on the login page. Therefore to avoid this from happening another IPC
call was required. Initially menu bar was made null and upon login an ipc call was made from
the AT to the electron app which initialed the menu bar by making it visible.
After coding and logic was completed app needed to be packaged. macOS Linux and
windows executables has to be created with an app icon.
34. Industrial Training Report S.P. Thewa Hettige
34
Following steps were taken to package the already written app
Electron packager was installed – packager is a library that let us bundle electron source code
and make executables that can be distributed
Electron version and product name was set
Write scripts on package.json for mac, Windows and Linux packaging separately
Use npm run package-mac/package-win/package-Linux
Once the packaging was done it was required to make installers
Installer script was first set up which was called installer.js
This iinstaller.js file contains all the information that is required for node to create installers
such as where to look for the packaged app, whether an msi installer is required ,where
should the installers be saved, icon of the installer ,and the name of the packaged.exe and
installer.exe
Run the script using the command node installer.js
Installers were created at the location we gave
Squirrel events were also handled they were used in order to provide intsallign and
uninstlling the app and making its hortcut possible
Electron-winstaller was used
After running you will have an .nupkg, a RELEASES file, and a .exe installer file in
the outputDirectory folder for each multi task target given under the config entry.
This way installers for win32/win64 , linux and mac OS was created
Each was tested In respective environmenrts and the ones that were buggy were recreated
35. Industrial Training Report S.P. Thewa Hettige
35
Figure 14 Desktop wrapper with top menu bar
Final Outcome
The final outcome was a 100% working desktop wrappers for Linux Mac and
windows. But still there were improvements to be made as still the web AT is under
development and wrapper is something that should evolve with it.
There was a small lag when the menu tool bar to appear on top when authentication is done.
Other than that everything worked out fine.
36. Industrial Training Report S.P. Thewa Hettige
36
2.5.4. Research (PoC) to select the best grid structure for the Web AT
Requirement
Current AT used grids and tables to display data about orders, accounts customers etc and
we decided to find the best grid table system that we can use along with angular 4 for our
new AT . Therefore we decided to do a PoC (Proof of concept) on available tables. Following
tables were chosen to research on.
Ag grid
Angular material tables (cdk /md tables)
Ng2 grids
Approach
Grids were evaluated on their
Ability to display more than 6000 records at once
Time to load
Availability of features like pagination , sorting , filtering ,horizontal vertical scrolling
,row editing
Visual effect to the user
Availability of light dark and other themes and possibility to have a custom theme
Easiness to work with ( easier to develop a basic template to add a table whenever
required)
37. Industrial Training Report S.P. Thewa Hettige
37
Figure 15 Ag grid upon implementation with features
Implementation
In my research I focused more on angular material or cdk tables
Since angular material for angular 4 is still under development there are hardly any resources
to look in to while developing. Its documentation too isn’t that rich to follow but what is
already there is quite effective to get you going.
Only 3 features were available along with the cdk table.
pagination
filtering
sorting
above were implemented and performance of the table was tested by loading more than 6000
records in it. CDK tables supported angualar 4 really well and it offered many themes too.it
was really easy to design and apply a custom theme and there was the possibility to apply
different themes to different components in the same page.Firstly the column names were
hard coded then I was able get the JSON response and automatically generate table headers
by assigning JSON tags to column names according to each table retrieved/each response
sent.
38. Industrial Training Report S.P. Thewa Hettige
38
Figure 16 Material grid implementation
Final Outcome
The final outcome was we chose ag grid over material grids and ng2 grids since it
offered many features free that other 2 didn’t or had to pay to get. But we left the
implementation of material table inside the code without removing it since it is still evolving
and maybe useful in the future.
2.5.5. Other Projects
Apart from 3 major scale developments we did above ,I did many other relatively small
development tasks that were quite crucial
Implementing customer summary : customer summary is one of the biggest
areas when comes to AT. Customer summary provides the security account
details, trade account details , cash account details of a certain customer along
with its th customers person details. This was implemented under customer
module just as the submarket module I did before. Back office java code was
written and upon clicking on a customer on the customer list his summary was
shown in the front end. Upon clicking customers ID was taken and sent as a json
39. Industrial Training Report S.P. Thewa Hettige
39
request and his details and all accounts under that ID was displayed in the front
end.bootstarp 4 cards were used for displaying purposes.
Report Generation : Cash transactions of a customer has to be printed as a report
and had to be made available for the cutomer to download in PDF form .upon
providing start date and end date(date range) ,customer ID along with the dates
were picked up and all tranactions were printed on a prepreapred template and
converted to PDF format. Jaspersoft studio was used to design the report and
templete of the report was stored in a server location where it was accessed
henever customer requeted a cash statememnt.
Grid change using flexbox and hierarchical routing: we wanted a proper
responsive structure for the web AT for its menu to arrange when moving from
laptop view to tab view to mobile view. flexbox was used to arrange menu tiles
vertically and horizontally upon the view selected.
Development of smooth navigation for the Web AT (UI Prototypes) : We started
developing web version of the admin terminal and we designed a menu bar that contained all
the features offered by the the application. When we showed the initial prototype to
Mr.Manjula Jayasinghe he wasn’t happy about the primary interface and the way we have
arranged the top menu bar. From his point of view he wanted a hierarchical navigation that
contained boxes that can be clicked on. He wanted the interface to be more visual and
clickable and smoother to navigate.
We started developing the box structure. Flexbox is used to develop this structure at first.once
a box is clicked another set of boxes appeared which are the sub menus of the clicked menu
box.we developed this up to 3 levels. Few prototypes were developed and sent for approval.
40. Industrial Training Report S.P. Thewa Hettige
40
Figure 17-UI prototype Menu Navigation developed
Tech Talk by me :
We were asked to do a tech talk on behalf of our team and after a 1 week preparation me and
my fellow batch mate Malaka Dayasiri did a tech talk on the topic “brace yourselves the next
gen of finance and internet is here”. During our tech talk we focused on bitcoin system and its
underlying technology block chain.
We discussed why the concept bitcoin is important, why bitcoins over normal currency, ways
to earn bitcoin, why bitcoin technology helps us get rid of the middle man. Further we
discussed about the problem that gave birth to crypto currency concept and how its
underlying technology block chain eliminates double spending problem. We did a small
example for people to understand how block chain functions.
Tech talk attracted lot of attention from everyone participated. Question and answer session
was also held right after the talk where we addressed questions from the participants. Lot of
interesting questions came up and the crowd was really happy about the way we approached
their questions and answered them.
We received very positive feedback from everyone who took part. Mr.Arjuna Nanayakkara
the general manager for DFN and Mubasher appreciated us highly for our effort. The
materials we referenced to get prepared for the tech talk was shared among the crowd due to
41. Industrial Training Report S.P. Thewa Hettige
41
their keen interest on the subject. Our tech talk had a very high impact and it was obvious
when lean IT architect for mubasher DFN Mr.Hirantha Wijewaradana choose “bitcoins for
trading platforms” as his MSc study focus area .
Figure 18 Bitcoin and Block chain tech talk
42. Industrial Training Report S.P. Thewa Hettige
42
2.6. Workshops and Tech talks
During the training period took part in the following workshops and tech talks
“Cultivating Secure IT culture” by QA Engineer Mahesh Jayasundara
“Fairy tale of the WWW” by Software Engineer Rahal Danthanarayana
“Intro to stock market ” –Manager Global financial portals Sanjaya Danasuriya
“Evolution of Mubasher” by Co-founder of Mubasher Mr.Yasatha Indigahawatta
“Algo trading” by Dr.Maged Abidou
“Emotional Intelligence” by Samangi Nanayakkara
“Intro to drawing and animation on web browser” by Malinda Kumarasinghe 9/14
“portfolio analysis” by Dr,Maged abidou
“present like me” by Sanjaya Danasuriya
“Social Media marketing” by Sadani Ridmali
“Presenting high volumes of real time data” by Tech Lead Vibeeshan mahadeva
“Test link – next step to test management” by Chief QA Engineer Imali Nawaratne
“4 P s of marketing” by Senior Software Engineer chandana bandara
“Intro to MFS infrastructure” by Lean IT architect Mr.Hirantha Wijewardana
“ISO certifications” by Lean IT architect Mr.Hirantha Wijewardana
2.7. Problems and Diffculties Faced
During my stay at Mubasher I had to face few difficulties, but most of them very technical
but was fairly manageable.my first week at Mubasher was bit hectic since there was lot of
areas I needed to get familiar with. We were introduced to the Mubasher code base and we
were given access to explore the back office core and how modules are developed in it. there
was lot of code reading to do but limited time to get used to it but with the support of our
mentor Mr.Nuwan Millawitiya and the rest of the team we were able to understand the code
and the development logics behind it fairly soon. We were unfamiliar with the sprints and
sprint planning meetings at the beginning but we were continuously allowed to take part in
the sprint meeting that was held daily and it really helped us to figure out how a sprint is
conducted and how each team member contribute.
43. Industrial Training Report S.P. Thewa Hettige
43
Secondly there was lot of new technologies involved and it took a fair amount of time to get
enough hands on experience with them before using them for hardcore development purposes
.with the continuous support of our team lead our mentor and the rest of the interns we were
manage to keep the learning curve low with quick but effective knowledge transfer sessions.
During our research we had to use angular material heavily but since it’s still evolving and
it’s under development it was hard to find useful resources regarding them. Angular material
documentation wasn’t enough either since it only provided a basic overview. But with the
collaboration with the UI team we managed to use angular material for our front end
development purposes very effectively
2.8. Experience and skills gained
We got an insight in to organization, its business operations, how it operates, its objectives
and its vision. Several talks were conducted for us by the regular employees of the company
for us to better understand what they do. Mr.Ovina peiris a business analyst for the company
conducted a session on the business operations of the company and Mr.Sanjaya Danasuriya
conducted a session for us about stock market and related trading. These helped us to better
understand the business domain behind the mubasher development center .it’s vital knowing
what you are on since it makes development easier and more interesting.
I was a part of 3 teams to be exact. OMS team (order management system) , MT+ team (web
apps) ,and new AT team. I participated for more than 50 sprint meetings and several sprint
planning sessions and helped us understand what a CR(change request ) is how they are taken
, how they are assigned and how the team goes about to complete a sprint .we were given a
document called scrum primer that contained all necessary info we needed to know about a
scrum. i saw how a problem is broken down and how estimated time and actual time is noted
down using story points and how issues are assigned , fixed and documented. JIRA was used
to track issues and confluence was used as a documentation tool.
I learnt lot of new technologies as well as this was a great opportunity to further polish what I
knew and learn deeper. Java was heavily used for the development of back office core , and
working with the back office core helped me to understand how maven is used , how J2EE
related technologies such as JPA is used for persistence and how application servers such as
jboss wildly is used for deployment purposes. Further write test cases, debugging and got a
wide exposure to tools like intelliJ idea ,sql navigator arexis merge ,postman.
44. Industrial Training Report S.P. Thewa Hettige
44
Further during our time with web applications team we got a wide exposure to angular 4 ,
angular material , bootstrap ,flexbox , vanilla javascipt css and HTML5. Further electron was
too heavily used
Work ethics – Mubasher was a great place to learn many work ethics too since the employees
were much disciplined when came to their work. Punctuality /dress code and meeting
deadlines and being friendly with the other coworkers were few areas I improved on.
Extracurricular activities experience – we got the opportunity to participate in many events
and it was ideal to get rid of work pressure and enjoy with the colleagues
3. Conclusion
A training period is essential to bridge the gap between theory and practice .there is a huge
gap between what we study in the university and what is practiced in the industry. During my
training I got the chance to relate what I studied at the university and practice them at work.
Mubasher gave me lot of opportunities to improve my skills and learn new ones along the
way. Fellow employees were very supportive throughout. They assigned me work such that I
have the full stack exposure. I was involved in both backend and frontend development and I
had the chance to work with both desktops apps and web apps. I learnt to develop apps from
scratch from understanding requirements to modularize them, deploy them, write test cases,
debug and refactoring and bug fixing.
Web AT project we stared was a brand new project and we did lot of research on it before
starting like finding the best technologies and right tools for it.so we got the exposure to
developing a complete full scale web app from scratch and the process associated with it.
One complaint from our tech leads was that the syllabus we follow at the university doesn’t
align with the current industry. In my personal opinion we focus on too much theory beyond
industry requirement sometime and I suggest to reevaluate the syllabus so that the
undergraduates can practice what they learn better during their training.
Further another issue that came up during training was the duration of the training period.in
my personal opinion it would be ideal if it was an year instead of mere 24 weeks. From what
I heard from fellow Mubasher employees Moratuwa interns catch up things fast but by the
time they are ready for some hardcore development work they leave. Therefore I would like
to suggest extending the training period if possible so that the undergraduates get a better
exposure.
45. Industrial Training Report S.P. Thewa Hettige
45
Mubasher is a good place to learn. It has lot of resourceful people under its roof who are
willing to share their knowledge. I was privileged enough to take part in lot of tech talks
throughout the training period. It was interesting listening to them and those coming from the
best performing members of the company had a big impact on my learning and curiosity.
Training at Mubasher wasn’t restricted to coding and designing but there were lot of
recreational activities that we were allowed to take part. Mubasher strikes bowling challenge,
Mubasher carom championship, mubasher cricket league and the annual trip is at the top of
the list. These activities helped me to bond with the rest of the employees and make friends
with them. These activities made working with them a lot easier later. Further we were
allowed to organize the interns day at mubasher where we got the chance to organize an event
for the rest of the staff .therefore we got the opportunity to organize a corporate event too
instead of just being participants each time. It is necessary to use the training to become a full
stack person instead of just becoming a full stack developer.
III. List of Abbreviations
NAITA National Apprentice and Industrial Training Authority
SWOT strengths, weaknesses, opportunities and threats
MFS Mubasher Financial Services
AT Admin terminal
OMS Order Management System
UI user interface
CSE Computer Science and Engineering
46. Industrial Training Report S.P. Thewa Hettige
46
References
• Training Diary
• Training hand book by Training Division of University of Moratuwa
• HRM system https://brainxhr.com/
• UAE website http://uae.mubashertrade.com/en/mubasher_mtplus.html
• Mubasher Global http://global.mubashertrade.com
• DirectFN website (new) http://lk.directfn.com/index.html
• DirectFN website http://www.mubasher.net/
• JIRA Mubasher https://jira.mubasher.net/secure/Dashboard.jspa
• DirectFN website http://www.directfn.com/