Hello, I'm

Gregory Thomas

Software Engineer in Cambridge, UK

//About me

I have 6+ years of software engineering experience, and have worked in a range of environments, from teamwork in a small startup to solo work for larger companies. I have experience in full-stack development using a variety of languages on different platforms.

I focus on solving the customer's overall problem, but love clearing the inner technical hurdles along the way. I document my work, and occasionally I look back to remind myself of the good work put into those projects; it pushes me to overcome further challenges. I have documented some of my previous projects here.

I am looking for a senior engineer role where I can take on team leadership responsibilities and learn from new and challenging technical experiences.


  • Extensive experience with Android (Java), Python, HTML, CSS, Git
  • Experience with Kotlin, C#, Xamarin, Swift, Javascript, Google App Engine, SQL databases, Azure Notification Hubs
  • Some experience with RxJava, Room, RetroFit, BGScript


//Work projects


My personal interests include:

  • Software projects. I keep up-to-date with the tools for my job. Uploading project code publicly to GitHub or GitLab creates opportunity to share my code, and, more importantly, to learn from others.
  • Home servers. Harddrives fail, so I keep backups. My two Linux servers are mirrored using rsync and live in separate locations. Security was the priority when allowing remote access.
  • Making music. I have been a drummer for over half of my life, and a guitarist for a quarter. I have played gigs around the UK in a band. Nowadays I am a regular at music jams around Cambridge where I play a variety of styles with different musicians to audiences.

Recent projects

  • backstack.js is a frontend library to provide a mobile-like user-experience for the web. Each tab has manages their own backstack of screens. Screens can be easily traversed and allows for operations such as form submissions.
  • calendar is an Android app coded using Kotlin. It has a Model View Presenter (MVP) architecture, and uses a custom backstack and view classes instead of Fragments and Activities for simplicity.
  • Wrote a simple script to auto-rip owned CDs to .FLAC files directly to my server's harddrive on insertion of the disc
  • Started recording my drumming with my own microphone setup to learn more about audio mixing and to document my progress. I plan to share my videos for fun and to get feedback on my playing.