Below is a selction of projects that Ihave worked on over the past 5 years. This is not an exhaustive list of my work, however it is certainly contains my proudest acheivements
To create a bespoke educational tablet solution for OLPC to sell in the competitive childrens tablet market, in the Americas and Europe.
The visual design of the interface was done by a 3rd party contractor. Morphoss was engaged to develop the nessesary changes to the
Android operating system and to implement the given design. Key goals of the project included:
Allow parents to control access to specific applications for each child that uses the device
Allow parents to control internet access for each child that usses the device
Allow parents to monitor how their children interacts with the device, including time tracking the use of diefferent applications
Create an image build system that would allow tablets sold in different markets to have customised software, e-book, media and encyclopedic collections
Build a Web based CMS for managing content for different target markets
Develop a set of Android Applications to support the above goals, including a custom home screen, lockscreen, system and application updater, anti-theft software and others
Skills Used:
As the lead developer on this project, I had to utilise a wide array of differnt skills, including but not limited to:
Team Leadership
Project planing and management
Requirements collection and customer relationship managemenr
System administration: Virtual Machine Management, Webserver setup and maintenence
Outcomes Acheived:
The project was very successful, with 8 different targets, containing a combined 300 User Applications, 12 System Applications, Hundreds of hours of video, hundreds of books and dozens of encyclopedia
articles.
Over 150,000 units were sold in at least 6 different contries in Europe and the Americas.
Maintain and update existing Rails Application for New Zealands largest consumer organisation. Tasks included:
Responding to Change Requests and bug reports
Update and enhance functionality of CMS
Assist in project adminstration, including design and implementation decisions
Skills Used:
This project used skills typical of any Rails Application. Because of my experience with server infrastructure
I had additional duties around server maintenance. Key Skills:
Ruby on Rails, HTML, CSS and Javascript development
Linux web server maintenance
Implementation of recomendations from security intrusion testing
Safely testing and applying approriate security updates
Outcomes Acheived:
My work helped improve the security and robustness of one of New Zealands busiest web sites, as well as
improving the cosmetic appearence and enhanced functionality of the CMS
My role with Powerswitch was to maintain the existing database and business logic to keep the information delivered by the site accurate and up to date. I also assisted with changes to the design of the site that were rolled out a the end of 2013. Finally, my knowledge of Linux servers allowed me to assist in server maintenance
Skills Used:
This project relied heavily on maintaining and updating both underlying data sets and business logic used to calculate consumers annual power costs with a range if different companies. This was particularly challening due to the fact the different power companies had very different pricing models as well as the fact that the underlying data was continuously changing.
Maintaining accurate data and business logic in a high risk, deadline cirtical environment
Assting with the design and development of substantial upgrades to the calculation system
Ensuring changes to the system and data were consistent with API rules defined to allow external parties to access and use the calculation system
Maintenance of web servers
Outcomes Acheived:
During my time on this project, Powerswitch continued to provide accurate, useful information to the public.
My input into the design and development of the planned upgrades improved the quality of service delivered.
Tellme, like powerswitch provides consumer information about telecommunications providors. In particular, it is able to work out the most cost effetive solution for a consumer based on a wide variety of metrics. My role with this project was to maintain, and update as required, datasets and business logic used to provide this service.
In particular, writing business logic at a range of programming levels (Database Functions, Rails Controller logic and Javascript) To provide accurate information in a time and resource efficient manner
Maintain/Update business logic in an apprpriate way to provide accurate information to the user
Unlike powerswitch, efficiency is critical in this project due to the vast search space
Ensure reliability of the site by maintaining web servers and updating underlying data
Skills Used:
As the DBA on this project, my primary role was to ensure the DB Schema and Data were up to date and efficient at all times. Mission critial aspects included:
Ensuring that the search algorithm provided answers within a defined time frame
Updating DB Level functions and extentions to provide an efficient and functional search interface for the overarching applications using the DB
Maintaing the DB environment, including Servers, Slave Servers, Rolling Backups and Data migrations
Maintain Ruby on Rails Front end, as well as associated HTML, CSS and Javascript
Ensure the different componants of this application work together reliably and efficiently
Outcomes Acheived:
Addition of new metrics, new Telco's and Updated business logic rules allowed for ongoing operation of the service.
Improved DB Level logic increased efficiency, and allowed for a wider range of complex business logic.
To create a bespoke tablet solution for use in hotels, to provide up to date information to guests and easy access to hotel services
Theme engine to allow hotel-specific branding
Booking system integration for a personalised experience
CMS for managing and updating information
Custom applications for hotel services, including room service, laundy service, taxi ordering and more
Security features to prevent loss/theft or misappropriation.
Remote management to clear user history and update applications
Skills Used:
As the lead developer on this project from its inception to its pilot, I had a range of important responsibilities that were critical to the success of the project:
Cost effective design and development of early prototypes
High level communication of technical requirements and limitations to key stakeholders
Documentation and process design
Development in: RoR, PHP, Java(Dalvik), and SQL
Provisioning of web and database servers
Desigin and implementation of appropriate testing and back up systems
Outcomes Acheived:
The product has been trialed successfully in a number of hotels with positive feedback
The system has matured to a level that will allow the product owners to develop and expand their business without the need to meet ongoing development costs
The development of the first reliable and efficient true long polling system for PHP
The goal of this project was to develop an Open Source calendar client that supports the protocols used by
Davical Calendar servers. Some key features of the app include:
Compatibility with a range of different calender servers
Ability to create, add and delete calendars
Asynchronous, battery efficient comunication with the server
Ability to add, edit, remove both single and recuring events
Ability set alarms
Home screen widget
Easily view events on multiple shared calendars, with day, month and year views
Complient with a range of RFC and ISO standards relating to Davical and Timezones
Skills Used:
As the primary developer on this project i used the following skills:
Android Development (Using ADT Eclipse and the Android SDK)
Application design and planning
Testing
Outcomes Acheived:
Succesful delivery of the application to the market on time
To redevelop an existing site from scratch, in a 'clean room' to release the owners from a prohibitively expensive and outdated CMS.
Using a free PHP MVC framework, develop a new site for iPredict
The site should look and feel exactly like the original
Time and cost permitting, add a 'wishlist' of new functionality
Skills Used:
As the primary front-end developer on this project, I had the responsibility of designing and implementing a CMS from scratch to replicate the behaviour of an existing site. Because of potential legal ramifications, I was not allowed assistance from any of the companies existing technical team. A small amount of Open Source base code, and all visual design elements were provided.
PHP, HTML, CSS and Javascript
My first commecial project using the MVC approach
Documentation, testing and deployment
Understanding and implementation of Stock-Exchange functionality (Supported by an existing trading engine)
Outcomes Acheived:
Successfully delivered the replacement website on time and on budget
Enhanced functionality improved the customer experience
New and improved functionality on the CMS allowed for more efficient business operation and easier expansion