Simon Wade

Simon Wade

Melbourne, Australia
Hire Simon
Scroll To View More
Simon Wade

Simon Wade

Melbourne, Australia
Member since October 1, 2013
Simon is an experienced architect and tech lead having run software development teams for over 4 years. He is passionate about agile software development, good communication, and team dynamics to produce good software architecture, good design, and clean development.
Simon is now available for hire
Portfolio
Experience
  • JavaScript, 8 years
  • Java, 8 years
  • PHP, 8 years
  • CSS, 8 years
  • Ember.js, 3 years
  • jQuery, 5 years
  • Node.js, 2 years
  • Agile Software Development, 5 years
Melbourne, Australia
Availability
Part-time
Preferred Environment
Mac OS, WebStorm, Eclipse
The most amazing...
...thing I've coded is an Ember.js app for EA Auctions that provides awesome real-time auctions.
Employment
  • Chief Code Whisperer
    Franq
    2014 - PRESENT
    • Created a general-purpose, minimal solution for offline-first data access.
    • Contributed to the development of ember-cli in its early development.
    • Developed a number of the first ember-cli addons, including ember-cli-sass, ember-cli-jstransform, and ember-select-transformer.
    • Wrote a fixture factory module for Node.js called factory-girl.
    • Wrote a simple logging module for Node.js called lugg.
    • Led the solution architecture both on the front-end and back-end.
    • Led the implementation of the agile development methodology within the team.
    Technologies: Node.js, Ember.js, PostgreSQL, SASS
  • Software Consultant
    Arcitecta PTY LTD
    2013 - 2013
    • Added a new ‘Search Layers’ capability to the existing Asset Map application in Mediaflux Desktop. This new functionality provides the ability for users to perform queries on very large datasets (multiple TBs) of metadata based on the geospatial shape of assets (e.g country borders, mapping information, the outline of facilities, planned routes, etc).
    • Developed a pure-Java Styling API that provides similar capabilities to SASS, but using a pure-Java API. This allowed us to achieve separation of presentation and structure/content in the widget-based environment of GWT, and to avoid using inline styles to control visual presentation.
    • Introduced a Futures-based asynchronous programming model, to replace the traditional callback/listener-based model used throughout the codebase.
    • Introduced a generic EventEmitter approach to simplify Event Oriented Programming in Java, to replace the traditional listener-based model used throughout the codebase.
    • Created a document authoring solution inside the Mediaflux Desktop environment (think Google Docs). This was implemented entirely in Java GWT, without using any of the many existing JavaScript libraries.
    • Developed a general-purpose asset management system called Workspaces that provides workflows for the creation, management and export of assets. This was developed to provide a task management solution for DIGO (Defence Imagery and Geospatial Organisation), but also provides a foundational application within the Mediaflux Desktop that can be used for a wide vast array of different uses.
    Technologies: Java
  • Owner, Architect, Tech Lead
    Dimension27
    2008 - 2012
    • Provided consultancy and development services to a number of clients including BASF Australia, Health Super (now First State Super), and QBE Insurance.
    • Developed www.eaauctions.com.au using Ember.js, Node.js, Redis, Rails, SASS, with a legacy back-end in PHP.
    • Developed 5 websites for BASF Australia over several years, all of which are all run off a single content management system installation using SilverStripe.
    • Developed a software development framework called IrisPHP, which was used for the v2 iteration of the EA Auctions website, among others.
    • Responsible for extensive architecture and software design.
    Technologies: PHP, JavaScript, Bash, Apache, MySQL
  • Architect, Tech Lead, Consultant
    Inlink International
    2003 - 2012
    • Created initial architecture and development of the Software Requirements Specification document for Inlink's media distribution network.
    • Developed the software for delivering content to media screens in elevators.
    • Responsible for further development of the software platform over the intervening 10+ years.
    • The system has now grown to a very large distributed system based on a scalable architecture, continuously distributing content to over 1,600 client machines in 700 locations around Australia.
    • Provided change management and deployment infrastructure for a large, geographically distributed network.
    Technologies: PHP, XML, Perl, Bash, Apache, MySQL
Experience
  • ember-cli-sass (Development)
    https://www.npmjs.com/package/ember-cli-sass

    Use node-sass to preprocess your ember-cli app's files, with support for sourceMaps and include paths. This is one of my more popular modules.

  • ember-notify (Development)
    https://www.npmjs.com/package/ember-notify

    Displays wee little notification messages down the bottom of your Ember.js app.

  • factory-girl (Development)
    https://www.npmjs.com/package/factory-girl

    A factory library for Node.js and JavaScript inspired by factory_girl.

  • ember-devtools (Other amazing things)
    https://github.com/aexmachina/ember-devtools

    ember-devtools is a collection of useful Ember.js debugging functions.

  • EA Auctions (Development)
    https://www.eaauctions.com.au/

    The EA Auctions website is a single-page app developed in Ember.js with a Node.js backend that uses a Redis server to provide JSON data and the real-time functionality. The site provides an online auction platform that allows users to bid against each other in real-time, as well as providing 'simulcast auction' functionality in which an audio stream of the auctioneer is broadcast to online bidders, who can bid against floor bidders in the auction room in real-time.

    The site is fully responsive and has layout variations for desktop, tablet and phone. Try resizing your browser window to see this in action.

    This is the 2.0 version of an online auction platform that was originally developed in 2008. The original site was developed using a PHP framework written by me called IrisPHP. The new site uses the existing back-end and admin functionality written in PHP, and uses Redis, Node.js, Socket.io and Ember.js to deliver an industry-leading realtime auction experience to both desktop and mobile clients.

    The stack:

    - MySQL database and PHP admin back-end
    - Redis for JSON and real-time ‘pub-sub’
    - CoffeeScript and SASS rendered using Rails asset pipeline
    - Node.js provides the RESTful API and websocket server for the client app
    - Ember.js is used for the whole front end client app, and Socket.io for real-time communication
    - PhantomJS to create the HTML for SEO
    - Nginx web server

  • Tabcordion (Development)
    http://aexmachina.github.io/tabcordion/

    A simple jQuery plugin that transforms a set of Bootstrap tabs into a Bootstrap accordion. It can be configured to perform this transformation based on the size of the container or viewport to provide responsive awesomeness to your buzzword-rich UI.

  • jQuery Bonsai and friends (Development)
    http://aexmachina.github.io/jquery-bonsai/

    jQuery Bonsai is a super lightweight jQuery tree plugin that I wrote because all the other plugins that I found were far too heavyweight and cumbersome. Bonsai aims to be minimal and easy to style. I like to keep my open source projects very tight, so rather than adding to Bonsia, I developed these 3 other separate projects to provide add-on functionality:

    1) jquery-qubit provides the semantics for a nested list of tri-state checkboxes, using the HTML5 "indeterminate" property (https://github.com/aexmachina/jquery-qubit).

    2) jquery-json-list is a simple plugin to create a nested list from a JSON document (https://github.com/aexmachina/jquery-json-list).

    3) list-filter.js filters a list of items based on an input field (https://github.com/aexmachina/list-filter.js).

  • REA Group's famous robot coding test (Development)
    https://github.com/aexmachina/robot-test

    An elegant little solution to a coding exercise in Ruby.

  • Other open source goodness (Development)
    https://github.com/aexmachina/

    https://github.com/aexmachina/jquery-hover-zoom
    https://github.com/aexmachina/jquery-equal-height
    https://github.com/aexmachina/switch-image.js
    https://github.com/aexmachina/ajax-inputs.js
    https://github.com/aexmachina/form-unload.js

  • ember-cli-jstransform (Development)
    https://www.npmjs.com/package/ember-cli-jstransform

    Use jstransform to preprocess your ember-cli app's files.

  • lugg (Development)
    https://www.npmjs.com/package/lugg

    A simple logging module that uses bunyan and draws inspiration from TJ Hollowaychuk's debug.

  • Simon is a mentor in the Toptal Global Mentor’s Program. This program is a partnership between Toptal and General Assembly to provide high quality mentorship for students from minority and low income backgrounds who are looking to begin their careers as professional software engineers. Simon shows commitment to diversity in tech by mentoring a General Assembly student every week for a year, covering everything from coding tips and tricks to advice on making it in the industry.
Skills
  • Languages
    SASS, JavaScript, Java, PHP, CSS, Bash, CoffeeScript, Ruby, XML/XSLT, Scala
  • Frameworks
    Express, Ember.js, AngularJS, Ruby on Rails, CakePHP, Symfony
  • Libraries/APIs
    Node.js, jQuery, Backbone.js
  • Tools
    Sublime Text, GitHub, GitHub Pages, Git flow, Yeoman, Git, Trello, Eclipse, JIRA, Adobe Photoshop, Grunt
  • Paradigms
    Service-oriented Architecture (SOA), XP, Agile Software Development, REST
  • Platforms
    Linux, Mac OS X, Unix, Android, iOS
  • Storage
    CouchDB, MySQL, PostgreSQL, SQL Server, MongoDB, Redis
  • Misc
    User Experience (UX)
Education
  • Bachelor of Multimedia Technology/Multimedia Software Development degree in Software Development
    Swinburne University of Technology - Melbourne, Australia
    1998 - 2002
I really like this profile
Share it with others