Full-stack Developer2018 - PRESENTING Bank
Technologies: Polymer, React, Redux, Angular, Java
- Built a portal to serve customers.
Technical Lead2016 - 2018IBM
Technologies: Android, Android wear, Bluetooth, BLE, Beacons, Java
- Developed the Android native eCommerce app for 2the second largest supermarket chain in the Netherlands. Also designed and created an Android wear platform to help the blind navigate in swimming pools. Mentored and assisted junior and senior developers in Android. Node.js, and Angular.
Senior Developer2015 - 2016Sportsbet
Technologies: Backbone, Node, AngularJS, Java, Bootstrap, Sass, Load Runner, BDD, TDD, CI, Selenium, QUnit, REST, Agile
- Developed multiple successful features from inception to release, delivering full-stack turnkey solutions.
- Achieved 100% unit test code coverage and 100% automated end-to-end test coverage for critical paths.
UI Development Lead2014 - 2014Accenture
- Awarded "delivery champion of the month" for September, 2014.
- Completed two MVPs in two months.
- Created a tool to record and playback live matches from the API level.
- Implemented a daily happiness rating (Agile).
Developer/Solutions Architect2013 - 2014RMIT University
Technologies: AngularJS, Bootstrap, Foundation, Sass, Jenkins, T4 CMS, Jira, CI, Agile
- Created the new RMIT University responsive website.
- Developed the RMIT student portal for mobile and desktop.
- Composed a front-end development workflow using Grunt.
- Implemented Heroku-style code deployment to the server via Git push.
- Built responsive prototypes.
Lead Developer2009 - 2013Salsa Digital
Technologies: AngularJS, Angular UI, Bootstrap, CSS, PHP, SOAP, SOAP UI, Selenium, SilverStripe
- Designed and led the development of a member management system for RSL and Tabcorp.
- Created an Android/iPhone app for Targa Australia to publish race results/timing, news, road closure information, and its live Twitter feed.
- Built a back-end for Vision Super Industry Fund members to manage their super.
- Designed and developed a "scratch and win" promotion for Office Choice, a stationary franchise with hundreds of stores all over Australia. Customers checked the scratchy numbers through the website.
Senior Software Developer2007 - 2009Click Creative
Technologies: SilverStripe, PHP, Magento, WordPress
- Designed and developed a loyalty rewards card system called Playdays for a children's play center. A barcode reader was used as an input device to scan membership cards and register websites via a web page.
- Implemented an industry funds management member portal for investors with group-based privileges using SilverStripe CMS.
Software Developer2006 - 2007SMART IT
Technologies: .NET, PHP, Flash, MySQL, Apache
- Developed Centsable personal finance software to help plan, budget, track, and achieve financial goals. .NET back-end with a Flash UI.
- Created a system for delivery company Aussie Farmers to check if a customer address is serviced by the Aussie Farmers delivery team using Google Maps. Longitude/latitude returned by Google Maps geocoder were transformed to pixel coordinates in another map where serviced suburbs were encoded with colored pixels.
Web Development Team Volunteer2005 - 2006Oxfam Australia
- Collaborated with the Oxfam media team to publish news and articles on the Oxfam website.
Intern2004 - 2005Hewlett-Packard
Technologies: Windows Macros, AutoHotkey
- Used macro scripting to automate importing of CSV contacts from Excel to Siebel CRM.
Technical Support Engineer2002 - 2003Microsoft Service Network (MSN)
Technologies: Technical Support
- Worked as an online technical support engineer for MSN, supporting users of Hotmail and MSN browser.
- Sportsbet (Development)http://m.sportsbet.com.au/
Full-stack development on a cutting-edge web application that caters to a business model with huge volumes, spikes that go from zero to 100,000 transactions in seconds while remaining 100% always-on.
- Cricket Australia Live Scores (Development)http://live.cricket.com.au/#/fixture
UI development lead on mobile and desktop web apps offering live cricket coverage, live streaming, live scores, news, and expert opinions.
- RMIT Student Mobile Student Portal (Development)
Lead developer for an AngularJS-based student portal with access to RMIT email, announcements, news, learning resources, program and course guides, class timetables, and library accounts.
- Remunerator Apps (Development)http://www.remunerator.com.au/app
Developed to make keeping track of salary package easier, for those of you always on the go, the app incorporates many of the key functions from the website in the palm of your hand.
- Stack Overflow Profile (Other amazing things)http://stackoverflow.com/users/1602316/chris-gunawardena
Top 5% this year with over 70 questions answered.
- IBM - Jumbo Supermarkten (Development)https://play.google.com/store/apps/details?id=com.icemobile.jumboclient&hl=en
Mentoring and assisting junior and senior developers in Android, Node js, and Angular.
- IBM - Buddy for the Blind (Development)https://www-03.ibm.com/security/assets/pdf/BuddyForBlind-Infographic.pdf
Every day, blind kids are struggling with mobility and they are dreaming about being able to move around independently. Many sports are impossible to practice for them, but swimming is not one of them. However, their experience in the swimming pool is not ideal. The kids fear hitting the wall with their heads while swimming—a fear that is even bigger when they swim on their backs. They rely heavily on external people to warn them before that happens. The result is that these kids need constant coaching to be able to enjoy swimming. Some dare not even swim on their backs.
The swimmer will wear a waterproof smartwatch with an IBM developed app installed. Using Bluetooth beacons installed around the swimming pool, this app is able to use a mathematical model to calculate the swimmer's relative position inside a swim lane. We will send all beacon data to IBM Bluemix using Watson IoT Foundation for further analysis. By providing the blind swimmer with a smartwatch, we are able to warn the swimmer with the watch’ buzzer that they are approaching a wall. This warning will make sure the swimmer can stop in time so they do not bump their head against the swimming pool wall.
FrameworksAngular, Espresso Testing Framework, Express.js, Bootstrap, AngularJS, Compass, ZURB Foundation, Selenium, Yii, QUnit, Hadoop, Express.io, SilverStripe, CodeIgniter, Sencha Touch, Laravel, Redux
Libraries/APIsBackbone.js, Node.js, PhantomJS, Socket.IO, Sinon.JS, Chai, Zepto, jQuery, AngularUI, WebGL, Passport.js, Restify, React
ToolsGoogle Assistant, Autodesk Fusion 360, Docker Compose, MQTT, Adobe Photoshop, Apache, Shell, Jenkins, Jira, GitHub, Stash, Ansible, Vagrant, Xdebug, Yeoman, Grunt, Bower, Appcelerator Titanium, PCB Layout, Composer, Cloudera, LoadRunner, Nginx, Appcelerator Cloud Services, Bamboo, Travis CI, Logstash, Chef, SoapUI
ParadigmsMEAN Stack, Agile Software Development, Test Automation, DevOps, REST, Kanban, Scrum
PlatformsDocker, Firebase, LAMP, Android, WordPress, Rackspace, AWS EC2, Ubuntu, DigitalOcean, Arduino, Amazon Web Services (AWS), OpenStack, OpenShift, Drupal, Heroku
StorageMongoDB, AWS S3, MySQL, Elasticsearch, Database Performance
OtherInternet of Things (IoT), Bluetooth, Infrastructure as Code, Containers, Chatbots, ESP8266, Technical Leadership, Architecture, Front-end, Unix Shell Scripting, PCB Design, Load Balancers, Big Data, Rendering Performance
- Bachelor's degree in Computer Science2003 - 2006Monash University - Melbourne, Australia