Lead developer of Kanezen's internal business application, handling the frontend, backend
and CI/CD. Designed the system architecture from scratch and built authentication and
authorization with JWT and Spring Security.
Built REST APIs with Spring Boot and used them in the Angular frontend. Set up GitHub
Actions pipelines that push Docker images to AWS ECR/ECS for the backend and deploy the
frontend to AWS Amplify. Added English/Japanese localization with ngx-translate and
protected routes with Angular route guards. Migrated the company's on-premise file server
to AWS cloud storage.
Present progress to internal managers in project status meetings and manage software
releases so they ship on schedule.
Java · Spring Boot · Spring Security · JWT · REST · Angular · TypeScript ·
ngx-translate · Docker · AWS (ECR, ECS, Amplify, RDS, VPC, ALB, S3, IAM) · MySQL · GitHub
Actions · Git
NCHL runs Nepal's national payment systems (connectIPS, NCHL-IPS, NPI). I worked on a
corporate payment system connected to banks' Core Banking Systems: bulk payouts, salary,
vendor and utility payments, with a maker-checker approval flow and an audit trail.
Payments went through NCHL's National Payments Interface (NPI) to connectIPS (real-time)
and NCHL-IPS (deferred). I handled OAuth2 tokens and refresh, signed requests with
SHA256withRSA using a PFX keystore, and added account validation and per-bank debit limit
checks. Tracked ISO 20022 statuses (ACTC, ACSP, RJCT) through status-check APIs and daily
reconciliation reports, and used unique batch and instruction IDs so a retried request was
never posted twice.
Also built static and dynamic EMVCo QR payments, and worked on a multitenant India-Nepal
cross-border payment system with NPCI (NPIx to UPI) using SOAP, Spring MVC and JSP, where I
supported the team on message flow, compliance checks and settlement. Wrote contract-first
SOAP services (XSD, WSDL, JAXB, Spring-WS, Apache CXF), Spring Batch jobs with retry and skip
for large payment files, and an ActiveMQ notification service. Data on Oracle, PostgreSQL
and MongoDB with Hibernate/JPA.
Java · Spring Boot · Spring MVC · Spring Batch · Spring-WS · Apache CXF · JAXB ·
SOAP/WSDL/XSD · OAuth2 · SHA256withRSA · ISO 20022 · NPI/connectIPS · Oracle · PostgreSQL ·
MongoDB · Hibernate · ActiveMQ · Postman
Fonepay is Nepal's largest interoperable QR payment network. Promoted twice: Junior
Associate Software Engineer (Nov 2022), then Associate Software Engineer (Jul 2023).
Built Spring Boot microservices for the payment gateway behind Spring Cloud Gateway, with
Eureka, Ribbon, OpenFeign and Spring Cloud Config. Worked on merchant QR (P2M) and P2P
payments: payment request, status inquiry, and callbacks to merchants and banks with retry
when a callback failed. Made payment APIs idempotent with unique request IDs so a customer
is never charged twice, and wrote settlement and reconciliation jobs that match our records
with bank responses.
Added circuit breakers with fallbacks between services and rate limiting at the gateway.
Used Saga-style compensating steps to undo a multi-step payment when a downstream call
failed, along with Facade, Strategy and Builder patterns. Security with JWT, digital
signatures and Spring Security; Redis and ActiveMQ for real-time features and messaging.
Logs and tracing with ELK and Sleuth/Zipkin, API docs with Swagger/OpenAPI, code quality with
SonarQube.
Frontend in Angular 9+, PrimeNG and Tailwind. Query tuning, indexing and PL/SQL on Oracle,
MySQL, PostgreSQL and MongoDB. Docker images deployed to Kubernetes (KubeSphere), some
services on Tomcat and GlassFish, CI/CD with Jenkins and GitLab CI. Tests with JUnit, Mockito,
JaCoCo and Selenium.
Java · Spring Boot · Spring Cloud (Gateway, Eureka, OpenFeign, Config) · Spring
Security · JWT · Redis · ActiveMQ · ELK · Zipkin · Swagger · SonarQube · Angular · Docker ·
Kubernetes · Tomcat · GlassFish · Jenkins · GitLab CI · MySQL · Oracle · PostgreSQL · MongoDB