Nipun Theekshanaනිපුන් තීක්ෂණ

Co-founder & CTO, PerfectUs · Founder, Prabhava Labs

Building open infrastructure for Sri Lanka, one useful tool at a time.

Ten years of shipping software. I co-founded PerfectUs, a blockchain studio where I’ve built a team of 50+ engineers and delivered 1,000+ smart contracts, and I runPrabhava Labs, a non-profit for open-source civic data, on-device ML and embedded tools.

CurrentlyLeading engineering at PerfectUsShipping Lanka PriceLensMapping Colombo in 3DDesigning tiny-screen hardwareGrowing Prabhava Labs
10+
Years shipping software
50+
Engineers led
1,000+
Smart contracts delivered
20
Open-source projects

2026 is 74% done

01 Hello

I like problems where the data is messy, the users are real and the constraints are local. Most of what I build starts with a question nobody had an API for — how many people live near this point? what does rice cost in Dambulla today? — and ends up as open infrastructure that anyone in Sri Lanka can use.

02 Selected work

Things I’ve built

Open source, built in public. Most of it is about making Sri Lankan data, money and places easier to work with — and a few things exist purely because they were fun.

Sri Lanka rendered as a population density heatmap with district boundaries
Data & geoactive

Lanka Data Layer

Sri Lanka’s open geo-data API

Reverse geocoding, universal search, postal codes, population and election results for every GN division, DS division, district and province. All spatial work is precomputed offline, so every request is one indexed SQLite read. Free, no API keys.

  • TypeScript
  • Bun
  • SQLite
  • Vite
A small round-cornered AMOLED display on a desk showing usage cards
Hardwareactive

AgentMeter

A desk display for live usage windows

  • C++
  • ESP32-S3
  • Swift
A glowing particle terrain rising into a bright peak
Data & geoactive

GeoPop

Who lives near this coordinate, in milliseconds

175 million 1 km population cells in PostGIS behind a Rust server. The grid is regular, so a coordinate maps straight to an integer cell id and a B-tree lookup — about 2 ms instead of a spatial query.

  • Rust
  • PostGIS
  • WorldPop

03 How I think

A few things I believe

Not rules, just the defaults I reach for when a design gets hard. They came out of shipping things, not the other way round.

  1. 01

    Publish the reasoning, not just the code

    A README says what a tool does. The dead ends, the rejected designs and the trade-offs are what the next engineer actually needs, so they ship alongside the code.

  2. 02

    Precompute everything that fits

    Sri Lanka is ~70K populated square kilometres and 14K GN divisions. That fits in one SQLite file. Do the spatial work once, offline, and every request becomes an indexed read.

  3. 03

    Private by default, local when possible

    A bank SMS carries balances, card digits and merchants. The classifier should come to the phone, not the other way around.

  4. 04

    Build for here

    Trilingual from day one — English, සිංහල, தமிழ். Real bank formats, real bus routes, real power cuts. Global tools rarely know what a DS division is.

  5. 05

    Cheap to run, easy to own

    If a tuition teacher cannot self-host it on a small VPS, or it needs a tile server to show a map, the design is not finished yet.

  6. 06

    Say where it stands

    “Incubating” means incubating. Synthetic benchmarks are labelled synthetic. Honest status is a feature, and it is how trust compounds.

04 Journey

Ten years, one direction

From an Android trainee in 2016 to co-founding a blockchain studio and a non-profit open-source lab.

Full CV
  1. Dec 2021 — Present

    Co-founder & Chief Technology Officer at PerfectUs Technologies

    A blockchain development studio bridging Web 2.0 and Web3: smart contracts and audits, DeFi, dApps, NFT and GameFi platforms, crypto integration, and AI and bot development.

    • Solidity
    • EVM
    • TypeScript
    • Go
    • Hyperledger Fabric
  2. Jan 2026 — Present

    Founder (non-profit) at Prabhava Labs

    A non-profit supporting independent open-source initiatives: 8 active and 5 incubating projects across civic data, fintech, geospatial, AI and embedded systems.

    • TypeScript
    • Go
    • Rust
    • Dart
    • PostGIS
    • ESP32-S3
  3. Sep 2019 — Oct 2021

    Tech Lead at KeenEye Solutions

    Custom software and team augmentation for European and international clients in medtech, IoT, logistics and m-commerce.

    • IoT
    • Mobile
    • Web
    • Java
    • TypeScript
  4. Jan 2019 — Jul 2019

    Tech Lead at Parallax Technologies

    Led delivery teams through the full software development lifecycle, owning planning, code review and releases.

    • PHP
    • Laravel
    • Vue.js
    • MySQL
    • Docker
    • Jenkins
  5. Jan 2017 — Jan 2019

    Freelance Software Engineer at Self-employed

    Products for clients in Sri Lanka and Sweden.

    • Node.js
    • MongoDB
    • Elasticsearch
    • Kafka
    • Spark
    • MQTT
    • AWS
  6. Aug 2016 — Jan 2017

    Software Trainee at Crowderia AB

    Built Coqeep, an Android app for online service booking that connects service providers and customers.

    • Java
    • Android
  7. 2014 — 2017

    BSc in Computer Science at University of Ruhuna

    Matara, Sri Lanka

06 Away from the keyboard

Life, offline

The things that reset my head between commits.

  • Music

    The soundtrack behind most of the code.

  • Photography

    Noticing light and framing places.

  • Cycling

    Distance, wind and a clear head.

  • Swimming

    An hour with no screens at all.

  • Bowling

    Friends, lanes and friendly rivalry.

  • Hardware

    ESP32 boards, AMOLED panels and a soldering iron on the desk.