short resume

11
Chris Gunawardena Full stack developer +39 39 1700 1016 [email protected] http://chris.gunawardena.id.au https://www.linkedin.com/in/ chrisgunawardena Australian citizen, Italian resident Work Summary April 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 Skills & years of experience Javascript Frontend Angular Node 0 2 4 6 8 10 12 Achievements and Certificates 2016 Professional Scrum Master scrum.org 2016 Tech all stars award Paddy power / Sportsbet 2014 Delivery champion award Accenture / Cricket Australia 2001 Microsoft Certified Professional .NET Open source & community http://stackoverflow.com/users/ 1602316/ https://github.com/chris-

Upload: chris-gunawardena

Post on 05-Jan-2017

82 views

Category:

Documents


13 download

TRANSCRIPT

Page 1: short resume

Chris GunawardenaFull stack developer

+39 39 1700 1016

[email protected]

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

Page 2: short resume

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.

Page 3: short resume

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.

Page 4: short resume

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.

Page 5: short resume

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.

Page 6: short resume

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.

Page 7: short resume

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

Page 8: short resume

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