Joe Thornton - Senior Software Engineer

I'm Joe - a senior software engineer and team leader from the UK currently working in Japan on satellite ground systems.

Learn More

Projects

Here's what I've done.

ImaGENation


An exploration into wrapping a cloud-based image generation model in a REST API using FastAPI with automatic rate limiting.


Objectives:

  • Learn FastAPI
  • Experiment with Image Generation Models
  • Python
  • FastAPI
  • Image Generation

Mission Countdown


A simple mission countdown app with milestones to use during satellite launch and early operation.


Objectives:

  • Simple mission situational awareness.
  • Fireworks for fun and entertainment.
  • ReactJS
  • Javascript
  • FireworksJS

Satellite Orbital Simulator & Tracker


A fully 3D orbital simulation with forward/backward propagation and ground-station pass calculation.


Objectives:

  • Forwards and backwards orbit propagation.
  • Calculation of ground-station passes.
  • ReactJS
  • Javascript
  • CesiumJS

IdleSat


A satellite themed 'Idle' Game created in the Unity engine.


Objectives:

  • Exploring game mechanics in Unity.
  • Creating graphics/UI elements.
  • Understanding Unity project layout.
  • Learning how Unity connects objects.
  • Unity
  • C#
  • Game

Python Gold


The gold medal for python on Hackerrank.


Objectives:

  • To revise the fundamentals of python.
  • Practice Algorithms & Data Structures.
  • Python
  • Challenges
  • Hackerrank

Genki Flashcards


A react webapp companion to the genki textbooks for Kanji/Kana.


Objectives:

  • A fully featured flashcards app.
  • User's lesson selection persists between sessions.
  • Compatible with Github Pages.
  • Mobile friendly.
  • React.js
  • JSON
  • Node

React Portfolio


A personal portfolio in React.


Objectives:

  • Single page and elegant design.
  • Tutorial - An example to build upon and customize.
  • Mobile friendly.
  • Compatible with Github Pages.
  • React.js
  • Next.js
  • Node

Go vs CUDA Neural Network Inference


A university project to compare inference performance between CUDA on a GPU and Go running in parallel on the CPU.


Objectives:

  • Improve CUDA knowledge.
  • Improve Golang knowledge.
  • Explore Go parallelism.
  • To write NN inference for the MNIST dataset from scratch.
  • CUDA
  • C++
  • Golang
  • ML

Technologies

Here's what I've used.

  • Front-end

    Experience with

    • React.js
    • HTML/CSS
    • Flask
    • Tailwind
    • Winforms
    • DevExpress

  • Back-end

    Experience with

    • Python
    • C# .Net
    • Go
    • Java

  • Tools/Platforms

    Experience with

    • Windows
    • Linux
    • Docker
    • AWS ECS, EC2, S3, CloudWatch, Secrets Manager
    • Git
    • SVN
    • Visual Studio/VS Code

About Me

I have a variety of interests including reading, space, and musical theatre.

Created in 2024 using React.js & Next.js