{"$schema":"https://schema.org/Person","generatedAt":"2026-09-23T13:35:41.935Z","person":{"name":"Dewmina Udayashan","legalName":"Benthotage Dewmina Udayashan","title":"Senior Software Engineer, Mobile Architecture & Backend","headline":"I architect and ship mobile products, and the backends, pipelines and release systems that keep them shipping.","summary":"Software engineer with 5+ years building and leading production mobile and backend systems. I lead mobile delivery end to end: architecture, code review, CI/CD, store releases and the performance work that keeps apps at 60/120fps on hardware people actually own. Flutter and Dart at depth, NestJS and PostgreSQL behind them, and a set of release-engineering opinions earned the hard way. I work with AI agents daily, and I write the instructions and limits that make their output safe to merge.","location":"Galle, Sri Lanka","timezone":"Asia/Colombo (GMT+5:30)","email":"hello@dewmina.dev","website":"https://dewmina.dev","resume":"https://dewmina.dev/dewmina-udayashan-software-engineer-resume.pdf","languages":["English","Sinhala"],"yearsOfExperience":5,"availability":{"status":"open","note":"Open to senior, staff and mobile-architect roles: remote, contract or full-time.","arrangements":["remote","contract","full-time"],"regions":["United States","Australia","United Kingdom","Europe","Canada"]},"profiles":[{"name":"GitHub","handle":"DewminaUdayashan","url":"https://github.com/DewminaUdayashan"},{"name":"LinkedIn","handle":"dewmina-udayashan","url":"https://www.linkedin.com/in/dewmina-udayashan/"},{"name":"X","handle":"DewwUday","url":"https://x.com/DewwUday"},{"name":"pub.dev","handle":"infoowly.com","url":"https://pub.dev/publishers/infoowly.com/packages"},{"name":"App Store","handle":"Apple Developer","url":"https://apple.co/4qFf6ud"},{"name":"Google Play","handle":"Play Developer","url":"https://play.google.com/store/apps/dev?id=7136804102130837612"}]},"highlights":{"totals":[{"value":"15","label":"Apps shipped to production","detail":"Employer products and my own, on both stores"},{"value":"1M+","label":"Downloads across all of them","detail":"Five years of shipping, App Store and Google Play"}],"byScope":{"founder":{"note":"Products I own end to end: idea, architecture, backend, store listing and revenue.","stats":[{"value":"6","label":"Products founded and shipped under my own developer accounts"},{"value":"300k+","label":"Organic installs on one of them, with zero paid acquisition"}]},"employment":{"note":"Products I delivered and led inside companies, from associate engineer to mobile lead.","stats":[{"value":"4","label":"Companies across 5+ years, in Sri Lanka and Australia"},{"value":"10k+","label":"Active users on the apps I led at IXD Labs"}]}}},"experience":[{"role":"Senior Software Engineer","company":"IXD Labs","location":"Piliyandala, Sri Lanka","start":"2024-06","end":null,"current":true,"scope":"Lead mobile delivery across the company's health and fitness portfolio, covering architecture, review, CI/CD and store release ownership for two live products.","highlights":["Directed end-to-end delivery of 5 production mobile apps across health, fitness and enterprise domains, scaling to support 10,000+ active users.","Led and mentored a mobile team of 4 engineers: set the architecture, enforced the bar through PR review, and wrote the standards the team ships against.","Cut deployment cycle time ~40% by rebuilding the CI/CD pipelines on Codemagic and introducing Shorebird for zero-downtime over-the-air Dart patches.","Diagnosed and fixed severe UI jank, memory leaks and rendering bottlenecks with Flutter/React Native DevTools and Xcode Instruments, reaching a consistent 60/120fps and ~15% lower battery draw on legacy devices.","Caught a platform-policy breach in a planned third-party payment gateway before development started, then delivered the in-app subscription stack and proposed RevenueCat, now the platform standard for entitlements."],"stack":["Flutter","Dart","React Native","Django","Firebase","Codemagic","RevenueCat","PostHog"]},{"role":"Software Engineer · Lead Mobile Developer","company":"NinjaPipe Pty Ltd","location":"Melbourne, Australia (Remote)","start":"2023-04","end":"2025-01","current":false,"scope":"Owned the cross-platform mobile CRM for an AI sales-automation platform, working async with an Australian team from Sri Lanka.","highlights":["Took an AI-driven B2B mobile CRM from concept to production in Flutter, accelerating lead capture and sales workflows for 1,500+ active users.","Built pixel-accurate responsive UI from Figma and integrated LLM models to power automated appointment scheduling and marketing workflows, lifting engagement metrics ~25%.","Coordinated technical milestones and mentored a cross-functional team of 3, delivering every major feature release on time.","Worked directly with stakeholders, designers and backend engineers to translate business requirements into mobile architecture that survived the roadmap."],"stack":["Flutter","Dart","REST APIs","Figma","Firebase"]},{"role":"Associate Software Engineer · Mobile POS","company":"myPOS Software Solutions","location":"Nugegoda, Sri Lanka","start":"2022-05","end":"2022-11","current":false,"scope":"Core feature work on a high-traffic Flutter point-of-sale system handling live retail transactions, with an ASP.NET and MySQL backend behind it.","highlights":["Reduced production defect rate ~30% through proactive debugging and sustained maintenance of the transaction codebase.","Engineered full-stack features on ASP.NET and MySQL, holding the line on secure and reliable transaction processing in a fast-moving production environment.","Gathered requirements directly from clients and turned them into shippable, business-driven changes."],"stack":["Flutter","Dart",".NET","MySQL","REST APIs"]},{"role":"Associate Software Engineer · Full-Stack","company":"Youth Services Pvt Ltd","location":"Maharagama, Sri Lanka","start":"2020-05","end":"2021-03","current":false,"scope":"First professional role, as sole developer on a government-facing mobile application, concept through production.","highlights":["Led end-to-end development and deployment of the mobile app for the Youth Service Council of Sri Lanka.","Contributed across the full stack: interface, application logic and backend integration.","Managed the whole application lifecycle and delivered against the project's requirements."],"stack":["Flutter","REST APIs","Backend integration"]}],"skills":{"Mobile":["Flutter","Dart","React Native","Riverpod","BLoC","Clean Architecture","go_router","Swift","Kotlin","Screen Time / Family Controls"],"Backend & data":["NestJS","Node.js","TypeScript","PostgreSQL","Prisma","Supabase","MySQL","SQLite","REST APIs","WebSockets","Django",".NET"],"Cloud & infrastructure":["AWS","Google Cloud","Hetzner","Firebase","Docker","NGINX","Cloudflare","Vercel"],"Release & DevOps":["Codemagic","GitHub Actions","Shorebird","FVM","Code signing","App Store Connect","Google Play Console","Git"],"Product & growth":["RevenueCat","PostHog","Firebase Analytics","Remote Config","A/B testing","Feature flags","ASO"],"Web":["Next.js","React","Tailwind CSS","TypeScript"],"Working with AI agents":["Claude Code","Agent instruction files","Invariant tests","Google Gemini","Structured model output","Git worktrees"]},"education":[{"qualification":"BEng (Hons) Software Engineering","institution":"London Metropolitan University","detail":"First Class Honours"},{"qualification":"Diploma in Information & Communication Technology","institution":"Vocational Training Authority, Sri Lanka","detail":null}],"clientProducts":[{"name":"Fitconnect","company":"IXD Labs","role":"Lead mobile developer, member and coach apps","period":"2024 – Present","description":"An all-in-one gym platform covering every touchpoint from door entry to session tracking. I lead mobile delivery across both apps: architecture, code review, CI/CD and final production submission to both stores.","links":[{"label":"fitconnect.lk","url":"https://fitconnect.lk"}]},{"name":"Fitsmiles","company":"IXD Labs","role":"Mobile developer across iOS, Android and the watchOS companion","period":"2024 – 2025","description":"A wellness rewards platform that turns physical activity into redeemable perks, with wearable data tracking and geolocation-based rewards.","links":[{"label":"fitsmiles.com","url":"https://fitsmiles.com"}]},{"name":"NinjaPipe","company":"NinjaPipe Pty Ltd","role":"Lead mobile developer, concept to production","period":"2023 – 2025","description":"The mobile CRM for an AI sales-automation platform: lead capture, automated appointment scheduling and email/SMS marketing workflows, serving 1,500+ active users.","links":[{"label":"ninjapipe.com","url":"https://ninjapipe.com"}]},{"name":"NYSC","company":"Youth Services Pvt Ltd","role":"Sole developer, concept to production","period":"2020 – 2021","description":"The mobile app for the National Youth Services Council of Sri Lanka, digitising branch discovery, course browsing and student enrolment.","links":[{"label":"Google Play","url":"https://play.google.com/store/apps/details?id=lk.nysc.app"}]},{"name":"VTA Sri Lanka","company":"Youth Services Pvt Ltd","role":"Full-stack developer","period":"2020 – 2021","description":"The Vocational Training Authority's mobile app, covering the same enrolment and course-discovery journey for its training network.","links":[{"label":"Google Play","url":"https://play.google.com/store/apps/details?id=com.vta.lk"}]},{"name":"Mobile point-of-sale","company":"myPOS Software Solutions","role":"Associate engineer on core transaction features","period":"2022","description":"A high-traffic retail POS system. Core feature work and sustained maintenance on the transaction path, cutting the production defect rate by ~30%.","links":[]}],"founderProjects":[{"name":"Acrea","slug":"acrea","year":"2026","kind":"PRODUCTION","status":"Live on the App Store and Google Play · v1.3.1","role":"Founder and sole engineer: Flutter app, Postgres backend, marketing site and the CI/CD between them","summary":"A land measurement and surveying toolkit for surveyors, farmers and real-estate professionals. Measure area and distance on a map or on foot, run COGO traverses, generate metes-and-bounds descriptions, and work offline in the field, backed by a Postgres sync engine, team workspaces and a tag-triggered release pipeline.","caseStudy":"https://dewmina.dev/projects/acrea","links":[{"label":"App Store","url":"https://apps.apple.com/app/acrea-gps-land-area-measure/id6775723115"},{"label":"Google Play","url":"https://play.google.com/store/apps/details?id=com.acrea.app"}],"stack":["Flutter","Dart","Riverpod","Supabase","PostgreSQL","SQLite","Google Maps","Mapbox","RevenueCat","Firebase","Codemagic","Shorebird","Next.js","Vercel"],"architecture":[{"layer":"Map engine","detail":"One interface, two implementations (Google Maps free / Mapbox Pro); the entitlement layer selects, offline regions ride on Mapbox"},{"layer":"Geometry kernel","detail":"Pure Dart geodesic area, distance, bearing and COGO traverse maths with no SDK dependency, unit-testable in isolation"},{"layer":"Local persistence","detail":"sqflite, 17 forward-only migrations; the device works fully without a network or an account"},{"layer":"Sync engine","detail":"Push/pull scheduler, wire codec and status surface over Supabase Postgres, mirroring the local schema column-for-column"},{"layer":"Teams & access","detail":"Organisations, membership, invites and scope switching enforced in Postgres row-level security, not in the client"},{"layer":"Share links","detail":"An Edge Function mints a frozen, self-contained snapshot; the website renders it by token only, so links can never be enumerated"},{"layer":"Release pipeline","detail":"Tag-triggered Codemagic builds for both stores, Shorebird OTA for Dart-only patches, release notes generated from the changelog"}],"metrics":[{"value":"17","label":"Schema versions migrated forward without data loss"},{"value":"12","label":"Locales shipped, enforced by a CI translation check"},{"value":"2","label":"Map engines behind a single interface"},{"value":"4","label":"Codebases in one monorepo, on independent release cadences"}]},{"name":"FitScanned","slug":"fitscanned","year":"2026","kind":"PRODUCTION","status":"Live on the App Store, Google Play and fitscanned.com","role":"Founder and sole engineer across four codebases and the infrastructure under them","summary":"An AI calorie and nutrition tracker: photograph a meal, get macros. Four codebases behind one product: a Flutter app, a NestJS + Prisma API, a Next.js admin console and a Dockerised deployment I moved off AWS onto a self-managed Hetzner box when the managed bill stopped paying for itself.","caseStudy":"https://dewmina.dev/projects/fitscanned","links":[{"label":"App Store","url":"https://apps.apple.com/app/ai-calorie-tracker-fitscanned/id6756354491"},{"label":"Google Play","url":"https://play.google.com/store/apps/details?id=com.fitscanned.app"},{"label":"Visit site","url":"https://fitscanned.com"}],"stack":["Flutter","Dart","Riverpod","NestJS","TypeScript","Prisma","PostgreSQL","Docker","NGINX","Hetzner","AWS","Google Gemini","RevenueCat","PostHog","Sentry","Firebase","Next.js"],"architecture":[{"layer":"Flutter client","detail":"Feature-first modules, Riverpod + hooks, go_router, Dio, freezed models, dev/prod flavours with separate Firebase projects"},{"layer":"Offline & platform services","detail":"Request queue, connectivity watcher, Apple HealthKit and Google Fit behind one interface, FCM push, Shorebird OTA"},{"layer":"NestJS API","detail":"18 feature modules over Prisma; typed DTOs, an error-code taxonomy, a global exception filter, throttling and Helmet"},{"layer":"AI pipeline","detail":"Sharp image compression, S3 with intelligent tiering and presigned URLs, Gemini structured-schema inference across two model tiers"},{"layer":"Admin console","detail":"Next.js App Router dashboard with bearer auth via an Axios interceptor, Recharts analytics, content and user management"},{"layer":"Messaging surfaces","detail":"WhatsApp and Telegram bot integrations plus an MCP server, so logging is not confined to the app"},{"layer":"Infrastructure","detail":"Docker Compose behind NGINX across three subdomains, migrated from AWS EC2 to a self-managed Hetzner box"},{"layer":"Observability & revenue","detail":"Sentry error tracking, a structured audit log, PostHog product analytics, RevenueCat entitlements and subscription webhooks"}],"metrics":[{"value":"4","label":"Codebases: app, API, admin, landing"},{"value":"18","label":"Feature modules in the NestJS API"},{"value":"3","label":"Subdomains served from one orchestrated host"},{"value":"2","label":"Health platforms integrated behind one interface"}]},{"name":"Banny","slug":"banny","year":"2026","kind":"PRODUCTION","status":"Live on the App Store (iOS only) · v1.1","role":"Founder and sole engineer: Flutter app, native iOS extensions, Supabase backend and the Next.js platform","summary":"A behavioural health recovery platform built around a scored assessment that produces a personalised programme rather than a fixed one. The interesting engineering is not the Flutter app: it is the three native iOS app extensions built on Apple's Screen Time and Family Controls stack, which let the product block content at the operating-system level and lift the block on a timer the app never has to be running for.","caseStudy":"https://dewmina.dev/projects/banny","links":[{"label":"App Store","url":"https://apps.apple.com/app/banny-fix-death-grip-syndrome/id6767984500"},{"label":"Visit site","url":"https://banny-web.vercel.app"}],"stack":["Flutter","Dart","Swift","Riverpod","Supabase","PostgreSQL","SQLite","Next.js","TypeScript","Tailwind CSS","RevenueCat","PostHog","Firebase"],"architecture":[{"layer":"Assessment engine","detail":"Branching questionnaire across four axes feeding a scorer that computes a 14 to 60 day programme from a 21-day baseline"},{"layer":"Flutter client","detail":"Clean Architecture feature modules, generated Riverpod, go_router, Dio, freezed models and a Neo-Brutalist design system"},{"layer":"Native iOS extensions","detail":"DeviceActivityMonitor, ShieldConfiguration and ShieldAction in Swift, coordinating with the app through a shared App Group"},{"layer":"Local persistence","detail":"sqflite plus shared_preferences, with scheduled local notifications driving the daily programme"},{"layer":"Backend","detail":"Supabase Postgres with auth and row-level security, serving both the app and the web platform"},{"layer":"Web platform","detail":"Next.js 16 App Router marketing site, content hub and admin dashboard over the same Supabase project"},{"layer":"Revenue and measurement","detail":"RevenueCat subscriptions with a paywall UI, PostHog product analytics, Firebase Analytics and Crashlytics"}],"metrics":[{"value":"3","label":"Native iOS extensions bridged to a Flutter app"},{"value":"4","label":"Assessment axes feeding one scoring model"},{"value":"3","label":"Locales shipped at launch"}]},{"name":"CoordKit","slug":"coordkit","year":"2026","kind":"PRODUCTION","status":"Live on the App Store · v1.0","role":"Founder and sole engineer: product, app, design system and release","summary":"A field-grade coordinate instrument with six formats, offline measurement and a stamped camera, built around a map you aim rather than poke. Its most interesting code is the test suite: the platform rules that cost me a debugging session each are encoded as invariant tests that fail the build.","caseStudy":"https://dewmina.dev/projects/coordkit","links":[{"label":"App Store","url":"https://apps.apple.com/app/coordkit-mgrs-utm-map-gps/id6810684377"}],"stack":["Flutter","Dart","Riverpod","Google Maps","RevenueCat","Firebase","SQLite"],"architecture":[{"layer":"Sensing","detail":"GNSS stream, magnetometer with interference detection, barometer and a terrain-dataset elevation source with named provenance"},{"layer":"Coordinate kernel","detail":"Decimal degrees · DMS · DD N/S/E/W · UTM · MGRS · Plus Codes, with smart detection on paste in either direction"},{"layer":"Measurement","detail":"Spherical-model distance and area, live from the framed point rather than from tapped pins"},{"layer":"Field recorder","detail":"Coordinate-stamped capture burned into the image and its EXIF, plus GPX, KML and CSV in both directions"},{"layer":"Invariant test suite","detail":"Build-failing tests for banned APIs, controller disposal, sheet safe-area and permission-level/usage-string agreement"}],"metrics":[{"value":"6","label":"Coordinate formats, with smart detection on input"},{"value":"0","label":"Advertising SDKs: the framework was removed, not configured off"},{"value":"5","label":"Instrument modes sharing one panel and one map"}]},{"name":"Latitude Longitude Finder","slug":"latitude-longitude-finder","year":"2020","kind":"PRODUCTION","status":"Live on Google Play and the App Store · v9.8","role":"Founder and sole engineer: product, growth and nine major versions since 2020","summary":"A precision geopositioning tool with 300k+ organic installs and nine major versions behind it. The engineering is a GPS and mapping app; the interesting part is the other half: App Store Optimisation, paywall experiments and AdMob mediation run as a measured feedback loop rather than a guess.","caseStudy":"https://dewmina.dev/projects/latitude-longitude-finder","links":[{"label":"App Store","url":"https://apps.apple.com/lk/app/latitude-longitude-finder/id6758548238"},{"label":"Google Play","url":"https://play.google.com/store/apps/details?id=com.dewdev.lat_long_finder_full_final"}],"stack":["Flutter","Dart","Google Maps","Google Cloud","RevenueCat","Google AdMob","Firebase","ASO"],"architecture":[{"layer":"Sensing","detail":"Location service streams with accuracy reporting, magnetometer compass and altitude"},{"layer":"Coordinate core","detail":"Decimal degrees, DMS, UTM and MGRS with smart detection on input"},{"layer":"Mapping","detail":"Google Maps with cached tiles for degraded connectivity"},{"layer":"Monetisation","detail":"RevenueCat subscription entitlements alongside AdMob mediation, with the paywall under continuous experiment"},{"layer":"Measurement","detail":"Firebase Analytics events feeding the ASO and conversion-rate loop"}],"metrics":[{"value":"300k+","label":"Organic installs, zero paid acquisition"},{"value":"9","label":"Major versions shipped since 2020"},{"value":"2","label":"Platforms from one Flutter codebase"}]},{"name":"SocialTimetable","slug":"social-timetable","year":"2024","kind":"PRODUCTION","status":"Live at socialtimetable.com","role":"Founder and sole engineer: data pipeline, inference and the site around it","summary":"A data-driven tool that tells content creators the best local time to post when their audience is in another country. Built on 17,000+ engagement data points across 8 platforms, with Google Gemini collapsing the dataset into a single recommendation per country-and-platform query.","caseStudy":"https://dewmina.dev/projects/social-timetable","links":[{"label":"Visit site","url":"https://www.socialtimetable.com/"}],"stack":["Next.js","TypeScript","Tailwind CSS","Google Gemini","Vercel"],"architecture":[{"layer":"Dataset","detail":"17,000+ normalised engagement observations across 8 platforms"},{"layer":"Inference","detail":"Gemini used as a structured reducer over the dataset, not as the data source"},{"layer":"Time engine","detail":"Target-country peak to creator-local clock, DST-correct on both ends"},{"layer":"Delivery","detail":"Next.js on Vercel, statically rendered where the answer is stable"}],"metrics":[{"value":"17k+","label":"Engagement data points aggregated"},{"value":"8","label":"Social platforms covered"}]},{"name":"image_cropper_widget","slug":"image-cropper-widget","year":"2025","kind":"OPEN SOURCE","status":"Published on pub.dev","role":"Author and maintainer","summary":"A pure Dart image cropping package for Flutter. No platform-native dependency means no method channel, no per-platform divergence and no added binary weight, with flip, rotate and aspect-ratio locking implemented as widget-tree transformations.","caseStudy":"https://dewmina.dev/projects/image-cropper-widget","links":[{"label":"pub.dev","url":"https://pub.dev/packages/image_cropper_widget"},{"label":"Source","url":"https://github.com/DewminaUdayashan/image_cropper_view"}],"stack":["Flutter","Dart"],"architecture":[{"layer":"Gesture layer","detail":"Pan, pinch and handle drags resolved against the current transformation"},{"layer":"Transform core","detail":"Composed flip, rotate and aspect-lock matrices keeping the crop rect valid"},{"layer":"Overlay","detail":"Injectable handle, grid and mask widgets for host-app styling"}],"metrics":[]},{"name":"flutter_auto_localizations","slug":"flutter-auto-localizations","year":"2024","kind":"OPEN SOURCE","status":"Published on pub.dev","role":"Author and maintainer","summary":"A Dart CLI tool that automates Flutter localization end to end. It parses ARB files, preserves ICU plural and select structure through machine translation, and generates the delegates and accessors, turning a multi-day chore into a command.","caseStudy":"https://dewmina.dev/projects/flutter-auto-localizations","links":[{"label":"pub.dev","url":"https://pub.dev/packages/flutter_auto_localizations"},{"label":"Source","url":"https://github.com/DewminaUdayashan/flutter_auto_localizations"}],"stack":["Dart","CLI","Google Translate"],"architecture":[{"layer":"ARB parser","detail":"Key extraction with ICU plural and select structure held separately from prose"},{"layer":"Translation stage","detail":"Prose-only calls to the translation API, with placeholders masked"},{"layer":"Code generation","detail":"Delegates and typed accessors matching the standard Flutter localization surface"}],"metrics":[]},{"name":"Adytum","slug":"adytum","year":"2024","kind":"SYSTEMS RESEARCH","status":"Open source · research prototype","role":"Sole architect and engineer on an independent research project","summary":"A self-hosted orchestration runtime built to explore four distributed-systems problems: tiered task delegation without recursion failure, a dual-layer persistence model over SQLite and FTS5, a hot-reloading plugin architecture, and process lifecycle management on a fixed local compute budget.","caseStudy":"https://dewmina.dev/projects/adytum","links":[{"label":"Source","url":"https://github.com/DewminaUdayashan/adytum"}],"stack":["TypeScript","Node.js","Fastify","SQLite","Next.js","Socket.io"],"architecture":[{"layer":"Orchestration tier","detail":"Deterministic planning layer that emits delegation plans and is barred from tool execution"},{"layer":"Worker tiers","detail":"Managers fan out parallel batches; ephemeral executors run one task and report back"},{"layer":"Persistence","detail":"SQLite episodic log with FTS5 and vector retrieval, plus a separate entity-relationship fact graph"},{"layer":"Plugin loader","detail":"Manifest discovery, filesystem-watched hot reload, and dependency guards on OS binaries and secrets"},{"layer":"Lifecycle manager","detail":"Serialise-and-evict for idle processes, append-only history for completed ones"},{"layer":"Event backbone","detail":"Scheduled heartbeats, idle-time consolidation passes and filesystem sensors driving work without a request"},{"layer":"Observability","detail":"Next.js control surface over Socket.io, streaming live runtime metrics"}],"metrics":[{"value":"3","label":"Execution tiers with enforced separation"},{"value":"2","label":"Persistence layers with distinct query shapes"}]}],"recommendations":[{"author":"Dinuka Jay","title":"Founder, NinjaPipe CRM & Sales Platform","company":"NinjaPipe Pty Ltd","relationship":"Managed Dewmina directly","date":"May 2024","quote":"I had the pleasure of working with Dewmina, who served as an exceptional Flutter mobile developer at NinjaPipe. Dewmina's expertise in building and scaling mobile apps was crucial to the success of our projects.\n\nDewmina possesses a deep understanding of the Flutter framework and mobile app development best practices. His ability to design and implement high-quality, user-friendly mobile applications set a new standard for our team. Dewmina's approach and attention to detail ensured that our apps were not only functional but also visually appealing and performant.\n\nHis contributions went beyond just development; Dewmina played a key role in scaling our mobile apps to meet growing user demands. His problem-solving skills and ability to optimize code for performance were invaluable in ensuring our apps remained robust and reliable.\n\nDewmina is also a great team player, always willing to share his knowledge and mentor others. His collaborative spirit and dedication to continuous learning made him an indispensable part of our team.\n\nI highly recommend Dewmina for any role that requires an exceptional Flutter mobile developer. His technical skills, creativity, and commitment to excellence would make him a tremendous asset to any organization.","profileUrl":null,"source":"LinkedIn"},{"author":"Harsha Amarasinghe","title":"Full Stack Developer","company":"IXD Labs","relationship":"Reported to Dewmina directly","date":"February 2026","quote":"I had the chance to work under Dewmina at IXD Labs in mobile app development (Flutter), and it was truly a privilege. His knowledge and skills are on another level. I was genuinely amazed by the way he thinks, makes decisions, and approaches problems.\n\nHe has strong expertise across all levels — from development and PR reviews to architecture-level discussions. He always focuses on writing clean, scalable, and well-structured code, while considering long-term maintainability and overall system quality.\n\nBeyond his technical skills, he is very supportive and always willing to guide others. His guidance and technical insights played a major role in my growth as a software engineer. I highly recommend him to any team looking for a highly skilled and reliable professional.","profileUrl":null,"source":"LinkedIn"},{"author":"Dilki Ranepura","title":"Software Engineer","company":null,"relationship":"Dewmina was senior to Dilki","date":"February 2026","quote":"I've had the pleasure of working with Dewmina Udayashan, and I can confidently say he is one of the most passionate and self-driven individuals I've met in the tech field. He is always eager to learn new technologies and challenge himself by working on personal projects, which truly reflects his dedication to growth.\n\nHe has strong knowledge of software architecture and a deep understanding of mobile development. What stands out most is his analytical thinking and ability to approach problems with clarity and smart solutions.\n\nApart from his technical strengths, Dewmina is friendly, approachable, and always ready to guide and support others. He creates a positive working environment and motivates those around him to improve. I'm grateful for the guidance and knowledge he has shared with me.\n\nI highly recommend him to any team looking for a skilled and dependable software professional.","profileUrl":null,"source":"LinkedIn"},{"author":"Lahiru Prabodha","title":"Senior Software Engineer & System Architect","company":null,"relationship":"Worked with Dewmina at a different company","date":"February 2026","quote":"I've had the pleasure of knowing Dewmina as a very talented Flutter developer with solid experience in React Native, Next.js, and NestJS. He has a strong technical background, but what really stands out is how efficiently he delivers high-quality work.\n\nDewmina remains calm under pressure and always focuses on practical solutions. He doesn't just complete tasks - he takes real ownership of his work. I have seen him confidently lead teams, support others, and deliver projects on time without compromising on quality.\n\nHe brings both technical expertise and leadership to the table, which makes him a great asset to any team. I am confident that he will continue to grow and achieve even greater success in his career. I highly recommend him as a reliable and talented developer.\n\nHe is always eager to learn new technologies and challenge himself by working on personal projects, which truly reflects his commitment to growth. He has a strong knowledge of software architecture and a deep understanding of mobile development. What stands out the most is his analytical thinking and ability to approach problems with clarity and intelligent solutions.\n\nDewmina's combination of technical skills, leadership and dedication makes him not only a valuable developer, but also a reliable team player who consistently contributes to the success of any project he is involved in.","profileUrl":null,"source":"LinkedIn"},{"author":"Omer Sharizan","title":"Executive, Digital Support Specialist","company":"MAS Holdings","relationship":"Worked with Dewmina on the same team","date":"February 2026","quote":"Dewmina is an excellent Flutter specialist with strong experience in React Native, Next.js, and NestJS. His technical skills are impressive, but what truly stands out is his ability to deliver quality work quickly and efficiently.\n\nHe handles pressure very well and always stays focused on finding solutions. What truly sets Dewmina apart is his ability to confidently lead a team, guide others, and make sure projects are completed on time. He takes ownership of his work and consistently adds value to any team he is part of.\n\nHe is definitely a valuable asset to any organization, and I'm confident he will continue to achieve great things in his career. I highly recommend Dewmina as a talented and reliable developer.","profileUrl":null,"source":"LinkedIn"}],"faq":[{"question":"Is Dewmina Udayashan available for remote roles in the US or Australia?","answer":"Yes. He is based in Sri Lanka (GMT+5:30) and is open to senior, staff and mobile-architect roles on a remote, contract or full-time basis with teams in the United States, Australia, the United Kingdom, Europe and Canada. He worked remotely with a Melbourne-based company for nearly two years, so async collaboration across a large time difference is established practice rather than an experiment."},{"question":"What is Dewmina Udayashan's core technical stack?","answer":"Flutter and Dart for mobile, at architecture depth: Riverpod and BLoC state management, Clean Architecture module boundaries, offline-first SQLite persistence and go_router navigation. Behind it: NestJS, Node.js and TypeScript services over PostgreSQL with Prisma, plus Supabase where row-level security fits better than a service layer. Infrastructure on AWS, Google Cloud, Hetzner and Firebase, containerised with Docker behind NGINX. Release engineering on Codemagic, GitHub Actions and Shorebird."},{"question":"How many years of experience does Dewmina Udayashan have?","answer":"Over five years of professional software engineering experience, starting in 2020. He has spent the last two of those leading mobile delivery (architecture, code review, CI/CD and store release ownership) for teams of three to four engineers in Sri Lanka and Australia."},{"question":"Has Dewmina Udayashan led a team?","answer":"Yes. At IXD Labs he leads a mobile team of four engineers: setting architecture, running code review, writing the engineering standards the team ships against, and owning final production submission to the App Store and Google Play. At NinjaPipe he coordinated technical milestones and mentored a cross-functional team of three."},{"question":"What has Dewmina Udayashan actually shipped?","answer":"Around 15 apps to production over five years, with more than a million downloads between them. Six of those he founded and self-published under his own developer accounts: Acrea, a land-measurement and surveying toolkit with COGO traverse, offline Mapbox regions and survey-grade export; FitScanned, an AI calorie tracker with a NestJS backend, Flutter app, Next.js admin console and self-hosted infrastructure; CoordKit, a field-grade coordinate instrument; Latitude Longitude Finder, a geolocation utility with 300k+ organic installs on its own; Banny, a health recovery app built on three native iOS Screen Time extensions bridged to Flutter; plus SocialTimetable and open-source Flutter packages on pub.dev. The rest he built inside companies: Fitconnect and Fitsmiles at IXD Labs, the NinjaPipe sales CRM in Australia, and government-facing apps for Sri Lanka's National Youth Services Council and Vocational Training Authority."},{"question":"Is Dewmina Udayashan a founder as well as an employee?","answer":"Yes. Alongside his employed work he founds, builds and self-publishes his own products under his own App Store and Google Play developer accounts, six of them so far. On those he owns every layer: the product decision, the architecture, the backend, the release pipeline, the store listing and the revenue. Acrea, FitScanned, CoordKit and Banny are all live and commercially monetised through RevenueCat subscriptions; Latitude Longitude Finder reached 300k+ organic installs with no paid acquisition at all."},{"question":"Does Dewmina Udayashan do backend and infrastructure work, or mobile only?","answer":"Both. FitScanned is the clearest example: he built the NestJS/Prisma/PostgreSQL API, the Next.js admin dashboard and the Docker Compose and NGINX deployment that runs them, migrating the whole stack from AWS to a self-managed Hetzner box. Acrea's backend is Supabase, with a Postgres schema, row-level security policies, Edge Functions and a bidirectional sync engine mirroring the app's local SQLite schema."},{"question":"How does Dewmina Udayashan work with AI coding agents?","answer":"The way he works with any contributor: with the standards written down first and the limits set explicitly. Every codebase he owns carries an engineering guide covering that project's conventions, the contracts between its modules, and a blunt list of the traps with the reason each one exists, so an agent produces work that fits the codebase instead of generic patterns. CoordKit's guide is the clearest example: the Riverpod retry behaviour that makes one API unusable, the controller disposal that throws a frame later on a device and never in a build log, the iOS permission mismatch that terminates the process rather than raising an error. Each of those is also a test that fails the build, so the knowledge outlives whoever learned it. Generated work is reviewed like any other contribution, on its own branch, and merged by a person. Release authority is deliberately withheld: the guides state that pushes, tags and merges are not an agent's to make, because a version tag starts a store release and an over-the-air patch reaches real devices. He is equally clear on what not to delegate at all, which is schema design, security boundaries, and anything whose failure mode is silent."},{"question":"Is Dewmina Udayashan comfortable working on AI-powered products?","answer":"Yes, as a builder rather than a spectator. FitScanned is an AI product end to end: a vision model called with an explicit JSON schema across two model tiers, feeding a typed DTO, so the failure mode is a caught validation error rather than a plausible-looking wrong number on a nutrition label. SocialTimetable uses Gemini as a reducer over a 17,000-point dataset rather than as the source of the numbers. At NinjaPipe he integrated LLM models into appointment scheduling and marketing workflows. The consistent principle is that the model is one component with a contract, not a black box the product is built around."},{"question":"How can someone contact Dewmina Udayashan?","answer":"By email at hello@dewmina.dev, or on LinkedIn at linkedin.com/in/dewmina-udayashan. His CV is downloadable from dewmina.dev as a PDF."}]}