Chris GunawardenaFull stack developer
+39 39 1700 1016
http://chris.gunawardena.id.au
https://www.linkedin.com/in/chrisgunawardena
Australian citizen, Italian resident
Work SummaryApril 2016 - June 2016 Florence, Italy
Toptal / Viralize (contract role)Full stack developer (Javascript, Mocha Unit tests, Webdriver.io e2e tests, Node, Gulp)
March 2015 - April 2016 Melbourne, Australia
Paddy power / Sportsbet (contract role)Full stack developer (Backbone.js, Node.js, Docker, DevOps, Mocha Unit tests, Selenium e2e tests) more…
August 2014 - October 2014 Melbourne, Australia
Accenture / Cricket Australia (contract role)UI Development lead (Angular.js) more…
June 2013 - August 2014 Melbourne, Australia
RMIT University (contract role)Full stack developer (Angular.js, DevOps, CI & CD) more…
October 2009 - June 2013 Melbourne, Australia
Salsa Digital Development lead (Angular.js, PHP, Drupal, iOS, Magneto) more…
July 2007 - October 2009 Melbourne, Australia
Click CreativeFull stack developer (Javascript , PHP, Perl, DevOps)
May 2006 - July 2007 Melbourne, Australia
SMART ITSoftware Developer (Javascript , PHP, .NET)
2005 – 2006 Melbourne, Australia
OxfamWeb Development Volunteer (Javascript, HTML/CSS)
November 2004 - January 2005 Dubai, UAE
Hewlett-PackardInternship
July 2002 - Jan 2003 Colombo, Sri Lanka
Microsoft Network (MSN) Technical Support Engineer
Skills & years of experienceJavascript
BackendFrontend
DevOps & CloudAngular
BackboneNode
CI & CD
0 2 4 6 8 10 12
Achievements and Certificates2016
Professional Scrum Masterscrum.org
2016
Tech all stars awardPaddy power / Sportsbet
2014
Delivery champion awardAccenture / Cricket Australia
2001
Microsoft Certified Professional.NET
Open source & communityhttp://stackoverflow.com/users/1602316/https://github.com/chris-gunawardenahttp://chris.gunawardena.id.au/
EducationMarch 2003 - March 2006 Melbourne, Australia
Bachelor of Computer Science Monash University, Australia
Past Projects
Sportsbet Mobile App
Worked in a cross functional agile team as a full-stack developer on on various applications including a Backbone mobile app, Java/Selenium UI automation, Node.js middleware, load testing, CMS, API automation etc. I’m a strong believer in removing development bottlenecks and instant feedback, so I worked a lot to improve development and delivery pipeline by reducing time and effort it took to build and deploy releases and automating everything possible.
Responsibilities:- Help design solutions and provide accurate estimates at sprint planning.- Be a part of a cross functional team and pick up iOS/services dev or testing when needed.- Share scrum master duties and run stand-up, backlog grooming, sprint planning and retro.
Tools & Technologies:- Backbone, Handlebars, lodash, require, Angular jQunit, Sinon, mocha, restify, bluebird- Istanbul, bamboo, stash, docker, vagrant, selenium
Achievements:- Awarded tech all star award three times.- Automating a 7 step manual deployment process.- Cutting down build & deployment time from 15 minutes to 3 minutes with CI & CD.- Reducing unit test run time by 75% by making them run in parallel.- Automating run-sheet and release note generation.- Developing a Node.js API test framework.- Creating a Docker image for UI integration tests.- Building a HipChat bot to display top code reviewers to promote more code reviews.- Integrating a Javascript code style formatter to the build process.- Architecting and implanting a location based content delivery platform in one sprint.- Added over 1000 unit tests and wrote automated tests for each new functionality created.
Cricket Australia Live Scores
Developed two desktop and mobile web apps to stream live matches, radio broadcasts, live scores with text commentary on any desktop or mobile browser.
Responsibilities:- Manage and mentor a team of 5 developers. - Develop Angular.js desktop and mobile apps.- Integrate Angular.js UI with backend JSON API- Present during showcases.- Create continuous integration builds
Tools & Technologies:- Angular.js- Bootstrap with LESS.- Ghostlab & BrowserStack- Azure cloud- Continuous Integration with Atlassian Bamboo- Yeoman for scaffolding.- npm & bower for package & dependency management.- grunt for build tasks.- Grunticon.- API REC
Achievements:- Won the Accenture / Cricket Australia delivery champion award, September 2014.- Completing two MVPs in two months.- Created a tool to record and playback live match API.
RMIT University student portal
myRMIT is an online portal for 60,000 students accessing course content, library, academic history, timetable, exams, email and announcements. I developed desktop and mobile portals using Angular to display JSON data delivered by the ESB.
Responsibilities:- Creating stories and estimating points.- Creating API specifications for the ESB team.- Develop desktop & mobile portals.- Provide automated testing recommendations.- Provide DevOps recommendations.
Tools & Technologies:- Angular.js- Foundation CSS- Huxley & selenium- Ghostlab & BrowserStack- Vagrant, Chef & Berkshelf- Amazon cloud
Achievements:- Completed the project within timeframe. - Driving an innovation story for a pure client side 4 digit PIN login instead of the full password.- Creating POC Chef recipes to build development environments.- Developing a responsive POC for rmit.com- Automating regression testing.
RMIT University - Responsive Website
My responsibility was to find the best way to deliver the vast amount of exiting content to desktop, tablet and mobile devices while maintaining a consistent experience across devices.
Responsibilities:- Creating a frontend development workflow using grunt.- Build responsive prototypes.- Implement continuous build and deployment of code via git similar to Heroku.- Visual regression testing of completed JIRA stories.- Create a CI environment complete with a build light.- Present at showcases and conduct retrospectives.
Tools & Technologies:- Bootstrap with Sass.- Yeoman for scaffolding.- npm & bower for package & dependency management.- PhantomJS & Jenkins for continuous integration.- JIRA API for test data management.- T4 Site Manager CMS.
Achievements:- The responsive prototypes convinced business to go responsive.- First implementation of continuous integration for a website in RMIT.- Introducing the git deployment of website assets to servers.
Tabcorp / RSL - Member management systemDesigned and led the development of a member management system for RSL and Tabcorp which integrated with an 3rd party API from IGT systems using SOAP for its backend functions.
Responsibilities:- Provide estimates after reviewing the API.- Liaison with Tabcorp for requirement clarifications.- Troubleshoot API issues with IGT systems.
Tools & Technologies:- Angular.js & Angular UI- Bootstrap CSS- PHP & SOAP, SOAP UI
Achievements:- Completed the project under budget and within timeframe.- Using a thin PHP client to pass data between Angular and the API, resulted in easily maintainable code.
Targa rally - iPhone/Android appCreated an Android/iPhone app for Targa Australia to publish race results/timing, news, road closure information and it's live twitter feed.
Responsibilities:- Provide estimates and timelines.- Create wireframes.- Develop the iPhone & Android app.- Combine and cache race results xml feeds.- Submit to Google play store & iTunes.
Tools & Technologies:- Sencha touch.- Phone gap.
Achievements:- Successful launch of the app on both platforms in time for the Targa rally.- Ability to manage app content without having to go through store approval process every time.
Vision Super Industry Fund - Member super management portalVision Super is Victoria's oldest super find with over 100,000 members and $4 billion in assets. The existing Sapiens system had the front end and the backend code mixed up and was becoming harder to maintain. A SOAP API was used to separate the two.
Responsibilities:- Provide estimates and time lines.- Conduct requirement workshops.- Produce wireframes.- Create a API specification for Hansen to drive the API development.- Develop the front end components to integrate with the API.- Attending UAT sessions and collecting feedback- Produce weekly status reports and maintain an API issues register.
Tools & Technologies:- Shared Google docs for issues register, UAT feedback and status report- Balsamiq mockups- PHP, SOAP, Java- Selenium, SOAP UI
Industry Funds Management – Member portalImplemented a member portal for investors with group based privileges using SilverStripe CMS.
Responsibilities:- Develop a members area for secure documents with group based privileges.- Migrate all members- Email existing members with new passwords.
Tools & Technologies:- Silverstripe CMS
Playdays – Rewards cardDesigned and developed a loyalty rewards card system for a childrens play centre. A barcode reader was used as a input device to scan membership cards and register websites via a web page.
Responsibilities:- Designed and develop a virtual rewards card.- Create a system to read the bar done on to the website.- Create a shopping area to redeem points.
Tools & Technologies:- Laser barcode scanner that works as a keyboard input.- Javascript (mootools) to submit the form with the bar code.- Javascript (mootools) drag and drop shopping cart. Achievement:
- System still in use after 7 years.
Tools & Frameworks
JAVASCRIPTFrameworks: Angular, Backbone, Restify, Express, Node, Sencha Touch, Appcelerator, Underscore, socket.io, Mongodb, three.js, Chrome plugins, webdriver.io, babel, ES6, Mocha, JasminTools: Bower, Grunt, Gulp, PhantomJS, npm, swagger, webpack
PHP / HTML / CSSFrameworks: Yii, CodeIgniter, Laravel, Silverstripe, Bootstrap, FoundationContent management systems: Drupal, Wordpress, Joomla, Magento, Open cartTools: xDebug, Selenium, SOAP UI, Jade, yeoman, LESS, Sass, PhantomCSS
MySQLSkills: DB Replication, Clustering, Performance tuning & benchmarkingTools: Percona toolkit, Continuent Tungsten
DevOps & CloudSkills: Shell scripting, Automated deployment & provisioning Tools: Vagrant, Ansible, Chef, Docker, dokku, Amazon AWS, Azure cloud, Digitalocean, Rackspace, Heroku, Elastic Search, Solr, Nutch,
Continuous Integration and TestingSkills: Automating visual regression testing, Build & deployments on commit, Tools: Selenium, webdriver.io, Phantom, Jenkins, Bamboo, Travis, Mocha, Jasmin
Other- Visual Basic - C / C++ / Obj-c (cocoa) / Swift- Photoshop- MIPS / Assembly / Arduino
References
References on request