Dileepa
Peiris.
Full-stack developer & open source contributor building complete applications — from clean interfaces to robust backends with an eye for quality.
Experience
Where I've Worked
Industrial experience building real-world products at scale.

Cut+Dry
Quality Engineering Intern
07/01/26 – Present
OngoingAutomating AIO Tests (Jira) cases as Playwright end-to-end tests for the Cut+Dry web platform — following the framework's data → constants → page object → flow → fixture → spec layering so every test stays reusable and reviewable.
Maintaining the UI automation and distributor-platform regression suites — every new test is verified headed in a real browser, flaky selectors are healed, and each PR carries a captioned video of the run as evidence.
Generating tests with a Claude Code workflow that fetches a test case by ID, writes the Playwright test, runs it headed, self-heals failures and opens the PR — with batches running in parallel git worktrees, one PR per case.

WSO2
Software Engineering Intern
06/01/25 – 06/01/26
500+
PRs
1
Year
Built AI agents for the WSO2 Super App and Con App — intelligent automation and assistant features powered by GPT-4o, LangChain, and a Python FastAPI backend with pgvector.
Full-stack mobile app contributions using React Native — new features, AI integrations, frontend & backend improvements.
Converted the WSO2 Con native iOS/Android app into a React micro app — feature development and bug fixes.
Feature development and bug fixes for the WSO2 Con 2025 mobile app.
Added a feature to directly add the WSO2 TOTP secret — streamlined MFA onboarding using Asgardeo Native Authentication.
PR #382: Fixed ID token validation failure for tokens with multiple audiences — changed jose.jwtVerify() audience param from string to array. PR #416: Added granular config options to disable automatic SDK API calls (SCIM2, organizations, branding) for improved performance and developer control.
Introduced Ballerina methods for the WSO2 pgVector connector — extended vector DB capabilities.
Certified across the WSO2 ecosystem — API Manager, Identity Server, Ballerina, Choreo, Asgardeo and more.
Expo
Open Source Contributor
2025 – Present
Open Sourceexpo-blur rendered blank when a BlurView was the mask target of MaskedView. Moved the effect setup from draw time to layoutSubviews, so the UIVisualEffectView is created once the view has real bounds. Shipped with a public reproduction app and before/after screenshots.
The Material3 DateTimePicker dialog squeezed the calendar after switching from input mode. Fixed the dialog sizing in @expo/ui so the calendar keeps its full height when the mode toggles back.
FieldGroup rendered an empty row or section whenever a conditional child evaluated to false. Fixed the Compose child handling in @expo/ui so falsy children are skipped instead of drawn as blank rows.
Added numeric x-axis support to the Expo UI Chart component — enabling time-series and continuous-axis charts. Updated ChartDataPoint in TypeScript to accept string | number, added transformDataPoint() for Swift interop, and extended all chart mark types (bar, area, line, point, rectangle) in SwiftUI to handle both categorical and numeric axes.
Fixed an Android crash when passing CSS-style rgb()/rgba() strings to props decoded as android.graphics.Color — extended ColorTypeConverter in expo-modules-core to parse these formats, and added Robolectric unit tests to lock the behavior including whitespace variants.
Fixed a documentation inconsistency in expo-secure-store — the docs incorrectly stated that data is deleted on app uninstall, but iOS Keychain data persists after uninstallation by Apple's design. Clarified the real behavior to prevent developer confusion around sensitive data persistence.
Four fixes for the SDK 58 AudioStream API, each proven with a stub harness that compiles the real native code: Android events now report the stream state at queue time and drop buffers from a stopped session, the AudioRecord is released even when stop() throws, reading stops on ERROR_DEAD_OBJECT, and on iOS a failed start() removes its tap while non-interleaved input is converted instead of silently falling back.
@expo/ui MenuView triggers grew without bound and broke on rotation because the SwiftUI host measured with an unbounded width. Added a bounded-by-host measurement path in ExpoViewShadowNode so triggers fill their parent and wrap, with a rotation reproduction app.
AndroidX
Open Source Contributor · Jetpack Compose
10/25/26 – Present
Change approvedA HorizontalPager inside a Material3 ModalBottomSheet lost its horizontal overscroll because SheetDefaults' onPostFling reported the whole remaining velocity as consumed on both axes. Changed it to report only the sheet axis and added a ModalBottomSheetTest case. Reviewed with Code-Review +2 and Presubmit +2 on AOSP Gerrit, awaiting submit.
Plain-Compose app with an instrumented test that fails on Material3 1.5.0-beta02 and passes on 1.4.0, plus screen recordings — filed on the Google Issue Tracker with the repro linked.
Started as an @expo/ui BottomSheet issue. Traced the lost pager overscroll through Expo into Material3 and fixed it upstream instead of patching Expo — the fix reaches Expo with the next Material3 bump.
Projects
Things I've Built
Scroll through each project to explore its screens and features.
WSO2 Customer Portal
Serving 800+ WSO2 enterprise customers
New WSO2 customer portal for 800+ customers — zero downtime since migration. React frontend, Ballerina backend & ServiceNow integrations with AI and WebSockets.
800+ Users
Zero Downtime Since Migration
WSO2 Customer Portal
Oxygen UI Design System
WSO2's official component library & charts
Built oxygen-ui-charts-react by wrapping Recharts, and contributed reusable components — side nav bar (MUI wrapper), icon library (Lucide wrapper) — powering UI across all WSO2 products.
Oxygen UI Design System
Skill Bridge
Assistive app for children with neurodevelopmental disorders
A computer vision-powered React Native app helping children with neurodevelopmental disorders build executive functions, daily life skills, and vocational abilities through gamified activities. Built with inclusivity at its core — WCAG accessible, personalized, and therapeutic.
🥈 1st Runner-Up
InnovateX Season 2
Skill Bridge
Boola POP
Sri Lanka's first computer vision game on the Play Store
Sri Lanka's very first computer vision based mobile game — players interact using real-time body movements and gestures captured by the camera, with no controllers or joysticks required.
Sri Lanka's First Computer Vision Mobile Game
Boola POP
Avurudu Nakath 2026
Sinhala & Tamil New Year · Google Play
Cultural app with auspicious time countdowns, scheduled notifications and New Year content for Sri Lankan users.
Avurudu Nakath 2026
BOOK TO GO.LK
Real-Time Event Ticketing Full Stack Application · book-to-go.lk
A robust real-time ticketing platform with live availability updates, an interactive control panel, and a multi-threaded Producer-Consumer backend — built with Angular, Spring Boot, and MySQL.
BOOK TO GO.LK
Achievements
Awards & Recognition
Competition wins, open source recognition, and milestones.
InnovateX Season 2
Skill Bridge · 2025
Computer vision mobile app for children with neurodevelopmental disorders.
IIT Excellence Awards
Skill Bridge · 2025
Recognised for innovation and technical execution at the IIT Excellence Awards.
Hacktoberfest 2025
Open Source · 2025
Earned the Super Contributor badge for contributions across multiple repositories.
Jun 2025
Top Projects — Cutting Edge 2025
Selected among top projects at IIT's annual Cutting Edge exhibition. Skill Bridge was recognised for its impactful use of computer vision to support children with neurodevelopmental disorders.
May 2026
Top 13 Finalist — TEDxColombo 2025 Pitch-a-Thon
Selected as a Top 13 Finalist at the TEDxColombo 2025 Pitch-a-Thon, issued by John Keells. Pitched Skill Bridge to a panel of industry leaders and innovators.
#16
Sri Lanka GitHub
Committers.top · May 2026
Tap to view ↗
#16
Open Source Rank
Gitista · Sri Lanka · May 2026
Tap to view ↗
Skills
Tech Stack
Technologies I reach for to ship products.
Education
Academic Background
Formal degrees, competitive science, and continuous self-learning.
BEng (Hons) Software Engineering
IIT — University of Westminster (UK)
Jan 2023 – Present
Actively involved in IEEE student activities, participating in hackathons and building full-stack, mobile, and AI projects across every year of study.
Online Courses & Certifications
LinkedIn Learning · WSO2 · Various
2022 – Present
Continuously upskilling through LinkedIn Learning (Java, Spring Boot, Angular, Python, HTML/CSS, OOP) and 13 WSO2 platform certifications spanning Choreo, Asgardeo, Ballerina, and API Manager.
Advanced Level — Physical Science Stream
Taxila Central College, Horana
2017 – 2020
Studied Mathematics, Physics, and Chemistry. Participated in programming competitions and science exhibitions that sparked a path into software engineering.
G.C.E. Ordinary Level — General Curriculum
Kalutara Vidyalaya
2007 – 2017
Completed O/Levels with 9 A passes. Honoured multiple times at school prize givings. Represented school in All Island ICT Exams and zonal educational competitions. Active in football, chess, art competitions, and zonal academic contests.
Community
Writing & Community
Open source answers, technical writing, and community contributions.
Dileepa Peiris
stackoverflow.com/users/27321228
Reputation
—
People Reached
~5k
Published Article · 2024
Resolve Layout Overlap Issues After Upgrading to Android Target SDK 35
A deep-dive guide on fixing edge-to-edge layout conflicts introduced when targeting SDK 35 — required by Google Play from 2024. Covers WindowInsets handling, inset-aware padding, and common pitfalls in React Native and native Android projects.
Contact
Let's work together.
Open to opportunities, collaborations, and interesting projects.











