๐งโ๐ป Portfolio¶
WSO2 ยท Architect โ Integration BU ยท Compiler Developer โ Ballerina Platform¶
2013 โ Present ยท 13+ years
BSc in Computer Science and Engineering (Hons), University of Moratuwa, Sri Lanka
Ballerina Workflow¶
I currently own and lead the design and implementation of workflow support for Ballerina and WSO2 Integrator. This module brings workflow orchestration capabilities to the Ballerina ecosystem, enabling developers to build and manage workflows natively.
Ballerina Integrator / WSO2 Integrator : BI¶
WSO2 Integrator โ Ballerina Integrator
Ballerina Integrator : BI is a developer tool for building integrations, including APIs, file processing, event-driven workflows, automation, and more.
It provides a unified low-code and pro-code developer experience within the same tool, enhanced by robust visual aids to represent various aspects of the integration, such as:
- Architecture view
- Message flow
- Control flow
- Data mapping
- Entity relationship
The developer experience is built on open standards and protocols, including OpenAPI, GraphQL, gRPC, and WebSocket. Additionally, AI-powered capabilities enhance developer productivity.
Built on the open-source Ballerina programming language, BI combines all these capabilities to provide a seamless and powerful integration experience.
I led the design and architecture of the Ballerina Integrator, the new low-code development tool built on top of the Ballerina language. This project is the successor to an earlier low-code tool for Ballerina and is inspired by my proof-of-concept project, Ballerina-Diagram-Gen (https://github.com/hasithaa/Ballerina-Diagram-Gen), which introduced flow-based diagrams for Ballerina. In my role as lead, I was responsible for designing and building the core architecture ("the brain") of this new low-code platform. This design work laid the foundation for WSO2 Integrator. In 2025, Ballerina Integrator was renamed to WSO2 Integrator : BI (with BI as the default profile), and in 2026 it was renamed to WSO2 Integrator.
Ballerina Language & Compiler¶
ballerina-lang ยท Ballerina.io
I played a key role in the development of the Ballerina Language Compiler. I was part of the compiler and runtime team from the early days when Ballerina experimented with DSL-like syntaxes. After several years of dedicated effort in development and design, we successfully built a robust Ballerina Compiler that caters to the needs of integration developers. I continue to be involved in improving the language and its tooling for the developer community.
Ballerina Language Specification¶
As a primary contributor to the Ballerina Language Specification from the beginning of the language design process, I have been involved in several iterations, feature changes, re-implementations, and design verifications. Being an initial member of the Ballerina team, I have played an active role in shaping various language features and helping the team throughout the development process.
WSO2 Business Process Server¶
Carbon Business Process ยท Product BPS (Archived) Apache ODE (Forked) ยท Apache ODE (Retired)
WSO2 Business Process Server (BPS) was an easy-to-use, open-source business process server that executed business processes written using BPMN, WS-BPEL, and WS-HumanTasks standards. BPS used a WSO2-maintained fork of Apache ODE as its WS-BPEL engine. As a developer and release manager, I contributed to its development by adding various features, including HumanTask Coordination, Caching Layer, and multiple UX improvements. Although the product is now deprecated, I am always happy to discuss and share insights about it.
WSO2 Business Rules Server¶
WSO2 Business Rules Server (BRS) was an open-source tool that exposed business rules as secure web services, integrating them into an organization's application infrastructure. I was responsible for maintaining and releasing the product, though it is now deprecated.
Java4BPEL Extension¶
Java4BPEL is an Apache ODE & WSO2 BPS extension that I developed as a side project. It introduced a BPEL extension activity for invoking Java libraries within BPEL workflows, providing greater flexibility and customizability.
MetCat¶
MetCat (Apache Extras Archive)
The MetCat project was a university project focused on developing a metadata catalog that could be integrated with Apache Airavata. It was designed to capture workflow metadata and assist in scalable metadata management and user-defined queries.