Hi, I'm Partha Protim Paul

Software Engineer & CS Graduate Student @ UBC

About Me

Hello! I'm Partha Protim Paul, a Software Engineer pursuing my MSc in Computer Science at UBC under Prof. Reid Holmes. My research focuses on agentic, generative AI for automating software testing and failure analysis. I have ~2 years of experience building backend systems with Domain Driven Development and microservices, and I've worked with GenAI pipelines (LangChain, LangGraph) in production. I also have experience in designing and developing frontend applications using Angular, React.

I have contributed to open-source projects like Apache Commons Lang, Apache Commons Collections, and Automerge. I am always eager to learn and contribute to the software development community.

Partha Protim Paul

Experience

Flows Experience LLC

Backend Software Engineer (Part-Time) | Remote | 06/2023 - 01/2026

  • Developed REST APIs and an agentic pipeline enabling social account integration to extract event details from posts and create social gatherings, increasing platform engagement by 30%.
  • Created a documentation search agent using the Kernel Library to index the entire codebase, cutting developer search time by 40%.
  • Re-engineered location search using Actor architecture and GeoHashing to find nearby experiences, resulting in 30% performance improvement for 10K+ users.
  • Optimized complex PostgreSQL queries and implemented caching strategies, reducing response times by 25% during peak traffic.
  • Architected the core event system using DDD and OOP principles, accelerating delivery of new features by 10%.
  • Implemented CI/CD pipelines with GitHub Actions and Docker for reliable deployment on Azure and GCP.
  • Managed real-time event updates and display, resulting in a ~40% increase in precise events fetching and contributing to a significant rise in user retention and platform usage.
.NET Python FastAPI LangChain Redis PostgreSQL

Shahjalal University of Science & Technology

Lecturer, Software Engineering, IICT | Sylhet, Bangladesh | 01/2022 - 12/2024

  • Instructed courses: Software Design Patterns, Mobile/Web Development, Software Testing, Distributed Systems, Data Structures, and Algorithms.
  • Thesis: xNose: A Test Smell Detector for C# — Visual Studio extension to detect test smells in xUnit C# projects (IEEE/ACM ICSE-Companion, 2024).

Orbitax Bangladesh Ltd

Associate Software Engineer | Dhaka, Bangladesh | 01/2020 - 12/2021

  • Tech Stack: .NET Core, Angular, MongoDB, SQL, AWS, GCP, PowerBI, RabbitMQ, Elasticsearch, Microservices.
  • Redesigned push notification API to support 10K+ enterprise users, boosting system performance by 60% in an Agile environment.
  • Engineered a graph-based execution engine for complex workflows (US Patent granted), saving clients 43% processing time.
  • Overhauled frontend using Angular with component-based architecture, eliminating memory leaks and accelerating feature delivery by 40%.
  • Designed a data pipeline for third-party integrations processing 20K+ monthly transactions.
  • Transformed legacy PowerBI module, fixing memory leaks and optimizing data loading for 1M+ record datasets.
  • Mentored junior interns in clean code architecture, maintenance, and unit testing best practices.
.NET Core Angular RabbitMQ MongoDB

Projects

RaftKV

  • Implemented Raft consensus from scratch for a distributed KV store, achieving 39K ops/sec with <80ms latency.
  • Designed multi-layered architecture with RSM and gRPC for leader election, log replication, and atomic persistence.
Go gRPC Badger DB Raft

Exam Quiz Generator

  • Developed an LLM system for automated question generation, used by 15+ faculty to generate 500+ questions monthly.
  • Applied context-aware retrieval with embeddings to ensure alignment with course modules and difficulty levels.
Python FastAPI LangChain Angular

International Tax Platform [ITP]

  • Coded and documented a search engine for platform contents, which led to a 34% increase in user engagement.
  • Transformed the legacy PowerBi frontend module, addressing memory leaks and significantly enhancing performance upto 40% while ensuring smooth loading of graphs.
  • Created the comprehensive Tax News management system, including the development of a daily newsletter feature.
  • Architected real-time data sync, integrating 30 microservices for smooth chart updates on the dashboard. Reduced sync time by 45%, enhancing dashboard responsiveness, and boosting user engagement by 40%.
.NET Core Angular RabbitMQ Redis MongoDB

SUST Guest House [Guest House]

  • Developed the admin panel for internal use, simplified internal processes and increased productivity by 25%.
  • Managed a team of 4 developers to complete the production product in a shorter period than the deadline.
  • Implemented a message queuing system using RabbitMQ, ensuring booking consistency and reducing booking errors by 40%.
.NET Core Angular RabbitMQ Redis MongoDB

Open Source Contributions

apache/commons-lang

ArrayUtils.removeAll() null input behavior

  • Purpose: Fix Javadoc for all ArrayUtils.removeAll() overloads that incorrectly stated passing a null array would throw IndexOutOfBoundsException.
  • Actual behavior: The implementation delegates to the generic removeAll(Object, int...) overload, which returns null when the array is null.
  • Updated Javadoc across all primitive and Object overloads to document that null is returned when the input array is null.
View Pull Request →

apache/commons-collections

Fix flaky test occurred in 'CollectionBagTest.testCollectionToArray2'

  • Purpose of this PR: This PR fixes the flaky test org.apache.commons.collections4.bag.CollectionBagTest.testCollectionToArray2
  • Why the test fails: As the CollectionBagTest uses HashBag as its collection which uses HashMap internally and as per Java 8 documentation, the ordering of HashMap is not constant, so assigning the same hashmap as an array to different objects can change the ordering. So when comparing these two arrays with assertEquals the test may fail as their ordering can be different.
  • Fix: Override the getIterationBehaviour()' method from AbstractCollectionTestand returnUNORDEREDinCollectionBagTest.
View Pull Request →

Automerge

add toString() method to RawString object

  • Description: This PR adds a toString() method to the RawString class. This makes it easier to uniformly handle string and RawString in code, as you can simply call toString() on any value of either type and get a string representation of it.
View Pull Request →

apache/commons-collections

Fix flaky test failure in SynchronizedBagTest#testCollectionToArray2

  • Purpose of this PR: This PR fixes the flaky test org.apache.commons.collections4.bag.SynchronizedBagTest.testCollectionToArray2
  • Why the test fails: As the SynchronizedBagTest uses HashBag as its collection which uses HashMap internally and as per Java 8 documentation, the ordering of HashMap is not constant, so assigning the same hashmap as an array to different objects can change the ordering. So when comparing these two arrays with assertEquals the test may fail as their ordering can be different.
  • Fix: Create a HashSet from both arrays named a and array and check if they both are equal in testCollectionToArray2
View Pull Request →

Publications

  • Secure Backup and Recovery of SSI Wallets using Solid Pod Technology, IEEE COMPSAC, 2024.
  • xNose: A Test Smell Detector for C#, IEEE/ACM ICSE-Companion, 2024.

You can find my publications and citations on my Google Scholar profile.

View Google Scholar Profile

Education

University of British Columbia

Research: Agentic, generative AI-driven approaches for automating software testing and failure analysis (Advisor: Reid Holmes). Courses: Automated Testing, Advanced Software Engineering, Distributed Systems, Systems Security.

Shahjalal University of Science & Technology

Bachelor of Science in Software Engineering | 2017-2021

Sylhet, Bangladesh

Achievements

2nd Runner-up in App Development Contest, IUT 2019

Team: SUST_CodeSmell

19th Place in SUB IUPC Programming Contest 2018

Team: SUST Parasaurolophus

CodeForces: Max Rating 1810

Handle: PPnT

Contact

Feel free to reach out to me via email or connect with me on LinkedIn. I'm always open to discussing new opportunities and collaborations.

Email: ppartha101@gmail.com

GitHub: github.com/Partha-SUST16

LinkedIn: linkedin.com/in/partha-protim-paul

Current Location: Vancouver, BC, Canada