NomadXD

Lahiru Udayanga

Follow @NomadXD
Colombo, Sri Lanka
lahiru97udayanga@gmail.com
https://nomadxd.github.io/

Languages

Go, Java, JavaScript, Rust, Python, C++, Lua

Databases

PostgreSQL, MariaDB, MongoDB, Elasticsearch

Technologies & Frameworks

K8s, Docker, gRPC, Envoy proxy, WASM, ExpressJS, NestJS, React, Nginx, Git

About

I am a 25-year-old Software Engineer currently living in Colombo, Sri Lanka. I hold a B.Sc (hons) in Computer Science and Engineering from University of Moratuwa, and I am currently employed at WSO2 LLC as a software engineer working on Kubernetes native API gateways. My interested areas in Computer Science are Distributed systems, Micro services, Cloud native software development, API and middleware development and Blockchain development.

Looking for a deeper dive into my passions and interests? You'll find it all on my personal blog at https://nomadxd.github.io/blog/

Work Experience


Software Engineer

WSO2 LLC

Software Engineer working on Kubernetes native API gateways

https://wso2.com/

Google Summer of Code Student

Red Hat, Inc.

Envoy proxy authorization cache for 3scale API management by Red Hat.

https://www.3scale.net/

Software Engineer Intern

WSO2 LLC

Web Socket Integration, Rate Limiting and Analytics for WSO2 Envoy proxy based Micro-gateway (Choreo-connect)

https://wso2.com/

Education


B. Sc (hons) in Computer Science and Engineering

University of Moratuwa

Department of Computer Science and Engineering

https://uom.lk/

Projects


3scale - Envoy proxy authorization cache

This project is done as a part of GSoC 2021 under 3scale API management by Red Hat. Implemented an internal cache for envoy proxy to perform authorization and rate limiting to reduce the request processing time at the proxy. Used web assembly to dynamically extend envoy proxy without implementing native filters and compiling the static binary executable. Rust language is used for primary development with proxy-wasm. Golang is used to implement an integration test framework.

https://summerofcode.withgoogle.com/archive/2021/projects/6205479449001984/


Web Socket Integration, Rate Limiting and Analytics for WSO2 Envoy proxy based Micro-gateway (Choreo-connect)

This project is done as a part of my undergraduate internship at WSO2. WSO2 Choreo Connect is a lightweight message processor for APIs. Choreo Connect is used for message security, transport security, routing, and other common API Management related quality of services. In my project I implemented a native filter, a WASM filter and a gRPC streaming processing service to implement rate limiting and analytics support for web socket connections. Golang, Java and C++ are used for primary development and technologies like gRPC, Netty, Web Assembly, Envoy proxy and Bazel are used.

https://github.com/wso2/product-microgateway


Automatic Text Simplification for Sinhala language

This project is done as a part of my final year research project. Worked on a NLP research for automatic text simplification. Used deep neural networks and text mining techniques to perform Sinhala text simplification as a monolingual machine translation task.

https://github.com/brainsharks-fyp17


Commhawk - Real time emergency alerting and incident reporting system

This project is done as a part of Software Engineering Project for semester 4. Implemented a real time push service using RethinkDB and web sockets. Used the implemented push servcie to implement a bi-directional real time communication platform between the government institutes and the general public. Technologies like NodeJS, PostgreSQL, RethinkDB, Web Sockets, Flutter and React are used here.

https://github.com/NomadXD/commhawk