Skills from commercial experience

  • 3 years experience working as a “Systems Software Developer”
  • Windows desktop application development using Windows Presentation Framework (WPF)
  • One of the core developers that contributed to the 4G USE enterprise grade software package of © CodaOctopus Products Ltd. (https://www.codaoctopus.com/products/3d/4g-use)
    • Primary developer of the Patch Test feature, which corrects for geometric errors in the deployed system
    • 6 degree-of-freedom Kinematics to compute the pose of the multi-sonar and platform system in the world space
    • Plus involvement in the entire software stack and product life cycle
  • C#, .NET Framework
  • ReactiveUI – reactive programming
  • Model-View-ViewModel (MVVM) design pattern
  • Asynchronous code execution
  • Agile software development environment with 2 week sprints

Skills from PhD/Academia

  • Reinforcement Learning
  • Robot Operating System (ROS) – 9 years extensive experience using it with simulation and physical robotic vehicles
  • Python
    • 9 years experience developing scripts and object-oriented robotics control software
    • PyTorch
    • Pandas
    • Matplotlib
    • Creating python modules and packages
  • Artificial Neural Networks
  • Genetic Algorithms (GA)
  • Coordination of field trials/experiments
    • organised several trials at Loch Earn, Scotland, including the following experiments
      • multi-vehicle scenarios and distributed world modelling between them
      • acoustic modem testing
      • control algorithm testing
    • sea trials in Tallin, Estonia
      • planned and executed the travel there (using the laboratories van and driving it to Estonia using 2 ferry crossings)
      • 2 autonomous underwater vehicles were used to survey the sea floor
    • sea trials in Sicily, Italy
      • organised the delivery of an autonomous underwater vehicle to Italy
      • attended the sea trials performing acoustic modem tests and surveying the sea floor to find archaeological artefacts

General Skills

  • Git version control using the GitHub Flow process
  • WordPress website development
  • SSH for remote access to other computers

Personal programming projects

Web application with cross-platform desktop clients

Goals of this project were to use the .NET Core, ReactiveUI, DynamicData, and Avalonia libraries

Components of the system

Technologies used in each of the desktop client, progressive web app, and server web application are detailed in each component

The browser page of the Avalonia desktop application

Used for browsing raised non-conformances

Given this project was developed in my “spare time” whilst completing my PhD, it was designed to be functional as opposed to beautiful

The raising/editing page for a particular non-conformance

Form entry for various fields of the non-conformance record.

Upon saving at the bottom, the record is sent to the web application server through its REST API. Based on the response of this HTTP operation, a Toast notification is then presented in the client

Open Source Repositories

The below list are open source repositories that I have been the sole contributor towards.