Julian is a full-stack developer with over a decade of commercial software development experience, including architectural design. He's extremely knowledgable about Java, Kotlin, and agile methodologies, plus he's a hard-working and fun addition to any team.
ExperienceJava - 15 yearsSpring - 11 yearsTest-driven Development (TDD) - 10 yearsREST APIs - 8 yearsGradle - 5 yearsBehavior-driven Development (BDD) - 5 yearsKotlin - 1 yearWebFlux - 1 year
The most amazing...
...project I've implemented is a secure voucher system used across Europe by a major media organization.
- Co-designed and implemented a non-blocking REST API using Spring Boot.
- Implemented a 2-way TLS security setup using Amazon ACM certificates.
- Ensured fault tolerance by integrating it with Amazon SQS.
Kotlin Security Developer
- Used lightweight Kotlin libraries such as Javalin and Koin.
- Implemented user security using OpenID Connect and JWT.
- Implemented continuous integration using GitHub and Semaphore CI.
- Used an existing KMIP client implementation and updated it to use TLS 1.2.
Senior Java Developer
- Migrated existing Java applications.
- Implemented extensive security overhauls and other requested changes on existing projects.
- Worked in an agile team consisting of three developers, two testers, and two Scada engineers.
- Migrated and updated crucial applications from Western Power to AEMO.
- Updated all applications to Java 8 and the latest Spring and Spring Boot.
- Implemented continuous integration using Bamboo.
- Integrated applications to authenticate with Active Directory using Spring Security and UnboundID LDAP.
- Delivered all projects on time and budget.
- Worked in agile teams consisting of a back-end developer, a front-end developer, a QA, a BA, and a product owner.
- Developed simple REST API Spring Boot 2 back-end applications using a combination of blocking and non-blocking (Reactive) endpoints.
- Designed and implemented a learning management system so that mistakes are recorded and ideally not made again by people working on similar projects.
- Co-developed a hopper system to record all of the information about hoppers and wells which is then analyzed using machine learning tools.
- Implemented Java Azure AD security libraries to help with OpenID Connect (JWT) protocol. This includes on behalf of access for BE to BE security integration.
- Utilized the Azure Graph API for AD queries.
- Migrated existing projects from Maven to Gradle and deployed to Azure using the Azure DevOps (VSTS) pipelines.
- Handled DevOps requests for Azure Portal and Azure DevOps (VSTS) infrastructure.
- 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.
- Gathered requirements, designed, and implemented a solution to store boiler metrics for all online customers.
- Coordinated 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.
- 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 two 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 cowrote 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.
Senior Java Developer
- 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.
- Codesigned and implemented Google AdSense into the Guardian site.
Java Team Leader
- 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
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 two 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.
Spring, Spring Security, Hibernate, JUnit, Mockito, Spring Boot, Spring MVC, KOIN, Javalin, Apache Velocity, Apache Struts, Spring 4, Spring 5, Spring Integration, Jakarta Server Pages (JSP), Hadoop, Phoenix, Swagger, Akka, Bulma, WebFlux
REST APIs, Quartz, Jackson, Joda-Time, HikariCP, AssertJ, jQuery, Autonomy IDOL Search, JDBC, JMS, TopLink, OpenID, QueryDSL, Guava, Apache POI, Selenium WebDriver, Mahout, JGroups, JAXB, JDBI, spray, RxJava, Retrofit, Vue
Gradle, Cucumber, Jenkins, Flyway, Jetty, Apache Tomcat, Shell, Amazon Simple Queue Service (SQS), Apache Maven, Bamboo, SemaphoreCI, REST Assured, WireMock, ScalaTest, Gatling, RPM, VirtualBox, Vagrant, Apache Ant
Microservices, Test-driven Development (TDD), Agile, Behavior-driven Development (BDD), Pair Programming, REST, Azure DevOps
Azure, Windows, Jakarta EE, Eclipse, Oracle, Windows XP, WebSphere, JBoss, Solaris, VMware Tanzu Application Service (TAS) (Pivotal Cloud Foundry (PCF)), Amazon Web Services (AWS), Linux, UnboundID, Oracle Database
Spring Data, MySQL/MariaDB, MySQL, Oracle9i, MariaDB, Spring Data JPA, Microsoft SQL Server, PostgreSQL, Azure Active Directory, Sybase, Memcached, HBase, H2
KMIP, Ant, Resin, Hamcrest, Unix Shell Scripting, WebLogic, Web Services, TIBCO, Business, Debian Packaging, Validation, AWS Certificate Manager, Boot, Project Lombok, LDAP, Logback, Identity Server, Ajax, Ehcache, Specs, OAuth, HATEOAS, Cloud Foundry, Axios, Enterprise Java Beans (EJB)
Bachelor's Degree in Computer and Mathematical Sciences
University of Western Australia - Perth, Australia