2014 - 2016
- Designed and implemented a voucher management system for the UK which will soon be rolled out across Europe.
- Worked within a team to implement high concurrency microservices for our purchasing and billing applications.
- Ensured that the deployments were made with ease using Jenkins and Cloud Foundry.
- Implemented a working prototype of a JavaRX and a Retrofit application.
Technologies: Java, Scala, Gradle, Cloud Foundry, Spring 4, Spring Boot, Spray, Akka, Spring Security, Hateoas, OAuth 1, Active Directory, MariaDB, Flyway, UnboundID, Quartz, Swagger, JavaRX, Retrofit, Specs 2, Cucumber, REST Assured, WireMock, ScalaTest
2013 - 2013
- Gathered requirements, designed, and implemented a solution to store boiler metrics for all online customers.
- Co-ordinated with a third party to implement a Rest API solution using JSON.
- Stored all boiler metrics in HBase using a JDBC interface (Phoenix), ready for analytics.
Technologies: Java, Groovy, Gradle, Debian Packages, Spring 3.2, Joda, Jackson, HBase, Phoenix HBase Client, Spring Security, Tomcat JDBC, Hibernate Validation, JDBI, DBDeploy, Jenkins, Vagrant, VirtualBox, Gatling, Fest, JUnit, Mockito, Cucumber
Contract Software Consultant
2009 - 2013
- Added an API to the Sky search engine to allow all Sky departments to index their content for retrieval by any team.
- Wrote the new Query API to allow other Sky teams to access content via Atom or RSS feeds (using Rome).
- Implemented Spring security on all existing projects.
- Added HTML editorial layers into our search views based on keyword matching.
- Added improved technologies to the existing project; such as Quartz, JAXB, Hibernate with annotations, Rome, and Mockito.
- Crafted the architectural design and implementation for the new guided search project.
- Implemented a distributed caching system using EhCache, JGroups, and Spring.
- Developed 2 different prototype content recommendations engine from scratch and a user recommendation engine using Mahout.
- Worked with a team to implement the metadata repository for all Sky content.
- Designed and co-wrote a real-time image scaling service for Sky users.
- Rewrote the back-end auto-suggest service.
- Designed and implemented a stateless security system for our Rest APIs using Spring Security.
- Implemented an automatic data archiving solution using Quartz and MySQL list partition tables.
Technologies: Java, J2EE, Spring 3.1, Spring MVC, Spring Security, REST, Quartz, Hibernate, JAXB, Rome, EhCache, JGroups, Memcached, Hadoop, Mahout, Jetty, Tomcat, JSP, jQuery, DisplayTag, Autonomy Idol, Eclipse, Oracle, MySQL, Linux, Shell Scripts, Ant, Mockito
Contract Senior Java developer
2008 - 2009
- Worked as a software developer in a team of approximately 50 on a fully agile project.
- Worked in the continuous improvement team which sought to improve the reliability and speed of the web site.
- Implemented with a team the blog pages.
- Co-designed and implemented Google AdSense into the Guardian site.
Contract Java Team Leader
2006 - 2007
- Designed and implemented a risk management (compliance) system. It aggregated all global share positions from all the different divisions and locations in Macquarie.
- Designed the database schema, application project, and Java architecture. This application had a high volume of transactions so we went with a combination of Hibernate and stored procedures for the batch processes.
- Communicated with the business users to gather the project requirements.
- Acted as the technical lead in a team of 4 developers.
- Suggested a redesign for the Macquarie leasing system, including remote/web services.
Senior Java Analyst/Developer
2004 - 2006
MBF (Bupa Australia)
- Delivered technology services to MBF in support of strategic initiatives. This includes architecture designs and requirements gathering on new and existing projects.
- Designed and implemented a wide array of applications for over 2 years.
- Converted applications and data from a legacy mainframe system to a new J2EE environment.
- Used a wide selection of complementary technologies - such as Tibco messaging (EMS/JMS), BusinessWorks, Optra Forms, Oracle 9i Java functions (running within Oracle), Crystal Reports, and TopLink.
- Developed a retail management system used by all MBF branches around Australia.
- Built a real-time report printing to any branch in Australia.
- Created a new J2EE-based application to replace the front and back ends of the existing health insurance software.