About Me
I Have 7+ years of professional experiences in backend and frontend development as a Software Engineer and as a Tech Lead in Java and .NET frameworks. Currently, I am working in Malaysia as a Senior Software Engineer. Have end to end software deve...
Show MoreSkills
Web Development
Software Engineering
Networking & Security
Programming Language
Development Tools
Operating System
Data & Analytics
Software Testing
Mobile Apps
Others
Database
Portfolio Projects
Company
Call minutes and Internet Data Loan Platform for Dialog Axiata
Description
My Role: As TechLead communicates with stakeholders, design, coding, consider the best
technologies and manage 4 member development team.
Target users: System’s, end-users were prepaid customers (Mainly who use recharge card
payments for their mobile connections)
Environment Details: Almost 10 million customer base and expected 500-1000 any kind of
request per minute. (Loan request, loan settle request, query request). Existing loan platform is
outdated and difficulties to serve growing customer base and lack of ability to configure
according to the changing business requirements
Use cases :
- Prepaid mobile customers should be able to request call minutes and Internet data as a loan.
- When customers make payment against his account the unsettled loans he/she already has should be settled.
- Users should be able to query whether their eligibility to request various kinds of loans
- Business users should be able to define new loan sachems and make changes to existing loan sachems easily.
- Each event should be notified to the user.
- Each event should be auditable.
- Customers should be able to subscribe to an automatic loan, which grants certain call credits when the call credits get lower to a pre-configured point while being in a call without disrupting the call.
Non-functional requirements:
- Should be highly available
- Efficient
- Consistent
Solution:
- Microservice architecture based solution and shared database.
- The solution included 6 micro-services. (Loan grant handler service, Loan settle Service, Kaffka listeners service, Query handler service, Admin console service)
- Provided restful APIs to clients such as USSD, Mobile APP, and Web to request an eligibility query, loan request or loan history query in the system.
- Call events and payment events are fed into Kafka topics which generated by OCS(Huawei Online Charging System)
- Kafka listener microservices are responsible for reading the topic and trigger the relevant microservice(Loan Grant or Loan recovery)
- Easily configurable loan schema table structure.
- SOAP API based integrations for resource provisioning in OCS
Skills
Java (All Versions) Kubernetes Docker Apache-Kafka Rest API Microservices PostgreSQL Git Apache Maven SQL Linux SpringBootTools
Eclipse Git Maven Dbeaver Linux Red HatCompany
User Inventory Item Request and Inventory Procurement management system for Trelleborg
Role
Full-Stack Developer
Description
My Role: As a software engineer responsible for communicate with client to gether
requirements, design the application, code, develop unit tests and deploy in client.
Target users: Mechanics, machine operators, office staff, procurement managers and
department heads.
Environment Details: Tyre manufacturing factory. End users were mainly mechanics and
machine operators and procurement managers. These employees required to request items
(materials, machine spare parts, stasinary) from the warehouses of factory. Paper based
manual item requests to warehouses and needed to follow approval hierarchy before reaching
the warehouse. Also when there is a shortage in the warehouse for a some item to fulfill the
request procurement users needed to procure it. This existing system was very
timeconuming, hard to maintain and had to track. Requirement to develop software to
computerize the system
Use cases :
- Any employee in the company should be able to raise an item request flow to the warehouse.
- Line managers and department heads should be able to review the request and approve or reject.
- Warehouse managers should be able to review the request and fulfill the request accordingly If warehouse manager unable to fulfill the request partly or fully, the warehouse manager should be able to raise sub procurement request sub-flow under the main request to procure the shortage quantity.
- Procurement managers should be able to review the item procurement request raised by warehouses and should be able to indent similar.
- Procurement managers should be able to raise purchase orders accordingly after compare quotations from multiple suppliers
- Warehouse managers should be able to issue remaining items to half issued or fully not issued items requests flows raised by users after receiving the procured tems.
Non-functional requirements:
- Consistent
- Reliable
- Efficient
Solution:
- Workflow application developed on Redhat JBPM workflow engine
- JavaEE based backend business logic runs on the JBoss application server
- JSF based frontend runs on the JBoss server.
- MS SQL database and Microsoft servers Integrations with core inventory control system Movex.