I've both a front-end skill set (both modern and traditional web), and an event driven back-end skill set that I'm quite proud of, all driven by my TDD'd / Behaviourally Driven Developed code of course. This is complemented by my past-experience building and architecting back-end applications; predominantly CRUD based APIs for mobile apps.
I work very well with my colleagues, both using a consistent feedback loop, and occasionally pair-programming. Also, I can and do work well alone frequently, but I appreciate having someone keep me accountable for my work in this scenario. Mentoring juniors and associates is a unique skill I enjoy using as well, and something I have done much more of in recent times. The feedback I have received on this is very encouraging.
Outside of my life as a developer, I dance Salsa almost daily (socials, classes, and rehearsals). I also cycle, occasionally take amateur photos , and tinker with gadgets like my RetroPie console and DIY NAS, when I'm not dancing.
Senior Software Engineer• February 2021 - Present (Remote)
Continuing on from my time as a software engineer; I was recognised as a senior engineer in 2021. Although I still actively code, I've spent significantly more time and energy planning, architecting, and leading new product development opportunities, alongside onboarding and mentoring new starters
Software Engineer• April 2017 - February 2021 (Remote/Melbourne/Sydney)
Freelance Developer• April 2016 - December 2017 (Remote)
I picked up a couple of smaller side projects alongside my fulltime job, mainly for friends who also freelanced and needed back-end skills. This included some minor tweaks to a PhoneGap based mobile app, preliminary work on a job board style web-app, and integrating the SecurePay payment gateway into a chauffeured car/limousine service's booking app. I didn't continue freelancing as it made maintaining a healthy work/life balance quite difficult.
Development Lead• December 2014 - March 2017 (Sydney, Australia)
My primary responsibilities at Mobiddiction; a Sydney-based startup specialising in CRUD driven mobile apps, were architecting solutions for our clients, managing, mentoring and overseeing the back-end/technical team, and also contributing to the development and maintenance of our API Management product - Mobiconnect, Web APIs and overall back-end systems for our clients. I was also tasked with the coordination of “DevOps” tasks and maintenance of back-end hosting - all running on AWS. I also had the opportunity to build my web front-end skill-set having built two small web-app projects from the ground up with HTML5 and Sass/SCSS in 2015 and 2016. The back-end software built and maintained at Mobiddiction is primarily built using the Grails Web Framework, written in Groovy. and driven by integrated Java frameworks including Spring, Spring Security and Hibernate. Their back-end solutions are designed to serve RESTful APIs for our mobile apps to consume, alongside web-based applications.
Software Engineer• July 2011 - November 2014 (Sydney, Australia)
Formerly known as InterAcct Solutions; here I was employed as a junior developer, working on the SOAP services, the #100# USSD service, and pre-paid mobile reporting platform for Telstra Corp Ltd. I was also a developer of the EZYrecharge mobile recharge service, and SendTalk (an international mobile credit gifting service). I gained a great deal of experience here as someone new to the industry, working with a diverse Java codebase made up of legacy procedural elements, alongside object-oriented code driven by modern OOP principles that were gradually replacing legacy code. I also gained a lot of experience maintaining a database for reporting purposes (Oracle) and handling large amounts of transaction and usage data for Telstra. I was infamously known as the "Script Guy" at InterAcct, and had been responsible for implementing (and re-implementing) our testing tools, and many utilities in Bash, as part of a major Linux migration project for Telstra.
Before my career as a developer, I worked in hospitality and retail during my time travelling, and studying.
Front of House Manager and Waiter• Lebanon and Beyond Ltd
October 2009 - November 2011 (Sydney, Australia)
Waiter• Silo Restaurant and Lounge
April 2009 - July 2009 (Newcastle, Australia)
Commis de Rang• The Atlantic Hotel and Ocean Restaurant
February 2008 - January 2009 (Jersey - Channel Islands)
Delivery Driver• Pizza Hut
January 2007 - January 2008 (Newcastle, Australia)
Diploma in Software Development, and Certificate IV in Programming •June 2011
I acquired intermediate programming skills using Java and .NET (C#). I also studied UML, SDLC (focusing on Unified Process, and Scrum), and software design patterns (GRASP and OOP).
I'm agnostic, in that I believe strongly in using the best tool for the job, regardless of a framework or language's fan boi/gurl status. Saying that, I am currently most familiar with;
When coding at work, I'm usually working on a React app or Ruby app using these tools. That's not to discredit my less recent experience and time working with;