Lead Front-end Developer2015 - PRESENTMarkers, Inc. (via Toptal)
Technologies: React, Redux, Node.js, Gulp, ES6
- Built a complex front-end for end-users to consume content heavy interfaces. The app was done with React, with Redux as the data-flow manager.
- Built a custom module to generate redux actions (flux-like actions) automatically based on the back-end API blueprint.
- Used Material-UI as a UI Framework and extended it to match customization requirements.
- Connected multiple third party services such as Algolia, Auth0, and custom REST services to the front-end.
Front-end Developer2015 - 2015Wgcast.de (via Toptal)
Technologies: React, Flux, Redux, Webpack, Bootstrap, Express
- Created a React.js based, fully isomorphic front-end for a Django-based back-end.
- Used Redux as a flux architecture and immutable data structures.
- Supported dynamic rendering of forms though metadata endpoints in the API. (Using tcomb-form and a custom wrapper).
- Enabled isomorphic i18n functions through a custom library to support Django-i18n.
- Wrote the whole codebase with ES6, with experimental ES7 features such as decorators. (Supported by Babel).
Contractor/Lead Developer2015 - 2015Stefan's Head (via Toptal)
Technologies: React.js, Flux, Firebase, Twilio API, Node, Express
- Provided and architected real-time data needs and chat like functionality through SMS (supported by firebase) for a project to build a realtime CRM for customer interaction with Twilio, to sell limited-edition apparel.
- Built customer targeting/customer searching functionality with Elasticsearch. The front-end architecture was done with React.js/Flux to support efficient rendering of the UIs.
- Supported external systems (such as Stripe for payments and Apparel Manufacturers) through a custom REST API.
Consultant Developer2015 - 2015Any.tv
- Worked on a distributed, scalable video uploading tool to help YouTubers upload videos they own into multiple channels; used Node-streams and Amazon SQS.
- Developed a YouTube channel crawler and search engine on RabbitMQ and ElasticSearch to index millions of YouTube channels and aggregate statistics.
- Developed a Riot.js based music player that lets users search YouTube for music, and plays it on a Chrome extension. (Think Spotify, but the music is sourced from YouTube).
- Wrote an extensible data aggregator which interfaces with 3rd party MMO game APIs to aggregate statistics and display them on Twitch.tv, when a Twitch user livestreams playing a particular game.
- Was part of the team that developed a Chrome extension that modifies the UIs of YouTube, Twitch, Hitbox and Reuters to enable UI tweaks, functionality, widgets that help users experience these sites.
Senior Software Engineer2013 - 2014WSO2
- Developed for a digital asset management system for enterprise called WSO2 Enterprise Store.
- Worked on WSO2 User Engagement Server, which is a BI solution for the enterprise.
- Worked on a reusable widget architected with cross-component messaging and built on top of Angular.js.
Founder2012 - 2014Hirewire.lk
Technologies: MongoDB, Express.js, Angular.js, Node.js, MEAN Stack, Elasticsearch, Heroku
- Created an Elasticsearch-based search engine to match and rank candidates according to the job criteria of an employer.
- Developed an Angular.js based front-end that gamifies the user experience in filling out a CV.
- Built an Express.js-based RESTful API that runs on a Node.js cluster on Heroku to power the whole app.
- Developed third-party integrations with LinkedIn and Facebook Open Graph to collect user data and make it searchable using Elasticsearch.
- Worked on Integrating with Facebook Marketing APIs to serve advertisements to socially target candidates through Facebook.
- Bootstrapped the whole startup operation and eventually sold it.
Software Engineer2012 - 2013Pearson Education
Technologies: Node.js, Java, Angular.js, Dojo, C#, MongoDB, MS SQL
- Contributed to the ongoing development of a CMS specialized for authoring and distributing university course materials.
- Created a Mozilla OpenBadges-based implementation to gamify learning in third-party apps.
- Migrated a set of legacy apps to a custom deployment architecture at Pearson (on AWS) using Puppet.
- Developed an app to create a shared knowledge base across learning groups, with full-text search.
- Created an extension to analyze student sentiments throughout a course using NLP for an existing CMS.