My name is Joshua King, and I’m a Software Engineering graduate from the University of Queensland, and I am looking for interesting and fulfilling software projects.
I started programming at a young age, and have since learnt about a great many things, including network programming, security and encryption,
kernel development (Linux), and web development.
My favoured languages are Java and C++, although I know others - such as Python, C, PHP, Javascript, ASM and VB.
I am self motivated, and have done not only company or university required projects, but also my own personal coding projects, some
of which are detailed in my "Work Experience & Projects" section. My work experience has solely been using the Agile methodologies, and hope to continue that trend and embrace related methodologies and technologies (such as SCRUM, TDD, Kanban etc).
While I am currently based in Australia, I am a British citizen and would look forward to relocating to Europe to live and work.
/* Work Experience & Projects */
@Company("Expedia", from=2015, to=2016)
Java backend services, usually using Spring framework, deployed on AWS cloud services (EC2), and TDD.
Frontend (HTML5, CSS3, JS) of expediaconnectivity.com (collaborating with UX/UI designers), and the NodeJS backend of service.
Minor Nginx, Chef, Linux system work.
}
@Company("Personal", 2016)
func AWS Lambda app interfacing with bank of Westpac {
A stateless Java app programmed for use on AWS Lambda service
Reverse-engineered the Westpac login for use in the app - transferring money between accounts automatically.
}
@Company("Suncorp", 2014)
func NIB Insurance Test Lead {
Primary tester for the health insurance sold by Suncorp through NIB.
}
@Company("Suncorp", 2014)
func Software Tester {
Tested Java applications from end to end on Linux servers.
Automated tests and deployment.
}
@Company("University of Queensland Thesis", 2013)
func Cell Segmentation Using Machine Learning {
Uses Deep Belief Networks (DBN's) to segment cervical cell nuclei.
PC software was extended from Matlab code.
}
@Company("University of Queensland Project", 2013)
func MPC Music Player with ARM Processor {
Embedded device programmed in C.
PC software for configuring device written in Java.
}
@Company("Personal", 2012)
func Peer-to-peer Encrypted Network {
A decentralised peer-to-peer network written in Java.
All communications use RSA cryptography and AES for broadcasting messages through the network.
}
@Company("University of Queensland Project", 2012)
func Linux Kernel File System Module {
Written in C for the Linux kernel.
Added encrypted file support to EXT2.
Additionally wrote a device driver allowing processes to communicate through encrypted kernel buffers.
}
@Company("Personal", 2012)
func Online Document Editor (Encrypted) {
Created website which stores no plaintext information (eg. username).
Relies on client-side AES encryption with Javascript and HTML5, CSS3, PHP and MySQLi.
}
@Company("Strategy Optimisation Systems", from=2010, to=2011)
func Development of new Finance System & CMS {
Easy-to-use but highly effective and flexible Content Management System.
Uses Ajax to reduce page refreshes, speed up data requests and reduce bandwidth and server load.
Manages customers, suppliers, projects, transactions and accounts
}
@Company("Strategy Optimisation Systems", from=2010, to=2011)
func Maintenance of Legacy Finance System {
Run new finance system in parallel with old system, using legacy databases.
Update and fix any bugs that occur in the system.
}
@Company("Personal", 2011)
func Various Websites {
Use of jQuery, Ajax, HTML5, CSS3, PHP and MySQLi (secure MySQL wrapper for PHP).
Used Facebook’s API (called “Graph”) and OAuth 2.0.
}
@Company("Personal")
func Analysis {
Analysis of the Bitcoin market and sport matches (Mid 2012), as well as MD5 hashes (2009).
For MD5 hash analysis, code was written in C++.
Program written in Java to scrape web pages and calculate results.
Used WEKA to create a machine-learning model of the data.
}
/* Programming Languages */
Generally, for PC-based programs I like to use C, C++, and Java, however I also have used ASM/Assembly and Python.
As for web-centric languages I prefer PHP, MySQLi/Redis, HTML5, CSS3 and of course, Javascript/Ajax & the jQuery library.