Skills

Alexa SDK

Allegro

Android app

Android SDK

API

Bull.js

C++

CSS

D3.js

Docker

Docker Compose

Express.js

Firebase

Flask

Gatsby.js

GraphQL

Groovy

Hilt

HTML

iOS app

iOS SDK

Java

JavaScript

Jest

jQuery

jSoup

Kotlin

Mocha

MongoDB

MySQL

Neo4j

Nest.js

Next.js

Node.js

OpenCV

OpenGL

OSX

PostgreSQL

Python

React Native

React.js

Redis

REST

RPC

Shell

Spring

SQLite

Supertest

Swift

TypeScript

Web

Webpack

Windows

XML

Portfolio

  1. Neurobranch v2

    #1

    2022 - Personal

    Revisiting the 2016 idea and reimplementing the idea correctly using modern technology and strong API typing. Instead of creating multiple clients natively, the goal is to create just a web client that can be used as a PWA to have the benefit of offline caching.
    • API

    • Bull.js

    • Docker

    • Docker Compose

    • GraphQL

    • JavaScript

    • Jest

    • Nest.js

    • Node.js

    • PostgreSQL

    • Redis

    • REST

    • RPC

    • Supertest

    • TypeScript

    • Webpack

  2. NestJS starter template

    #2

    2022 - Personal

    A sample open source repo for others to use to get started quickly with common technologies via NestJS. The main goal is to cut down on repetitive tasks that I was copying over from other repos instead of just centralising it somewhere that I can keep it up to date.
    • API

    • Bull.js

    • Docker

    • Docker Compose

    • GraphQL

    • JavaScript

    • Jest

    • Nest.js

    • Node.js

    • PostgreSQL

    • Redis

    • REST

    • RPC

    • Supertest

    • TypeScript

    • Webpack

  3. DiabetesPlus v2

    #3

    2022 - Personal

    A refactor project revisiting the T1Exercise app to rewrite using a modern technology stack with strong typing.
    • API

    • Bull.js

    • Docker

    • Docker Compose

    • GraphQL

    • JavaScript

    • Jest

    • Nest.js

    • Node.js

    • PostgreSQL

    • React Native

    • Redis

    • REST

    • RPC

    • Supertest

    • TypeScript

    • Webpack

  4. Personal Website (here!)

    #4

    2022 - Personal

    An evolving website to showcase work and host projects for $5 per month under a single domain.
    • CSS

    • HTML

    • JavaScript

    • Next.js

    • TypeScript

    • Webpack

  5. Github Action - Android Version Bump

    #5

    2021 - Personal

    An automated way to bump semantic versioning using Github on a native Android repository. The version is generated using TypeScript when the action is kicked off on a specific workflow. Using semantic commit messages, the CI run can determine the appropriate version bump to assign to the new release.
    When the job completes, it creates a tag and exports parameters to create a release later in the workflow.
    • Android app

    • Android SDK

    • Groovy

    • Jest

    • Shell

    • TypeScript

  6. Kotlin MVVM starter app

    #6

    2021 - Personal

    A quick scaffolding repo for getting acquainted with Hilt dependency injection, Kotlin, MVVM reactive architecture, and GraphQL data fetching.
    • Android app

    • Android SDK

    • GraphQL

    • Groovy

    • Hilt

    • Kotlin

    • XML

  7. Drink Sense - contextual health insights app

    #7

    2020 - Personal

    Drink Sense is an alcohol health app that tries to reduce harm by contextually showing the effects of alcohol, like Fitbit with exercise.
    The user adds drinks as they consume them, and the app works out state projections and context to aid judgement and consumption insights.
    The API consists of a number of microservices to calculate user timelines, statistics, and health insights meshed together using GraphQL.
    • Android app

    • Android SDK

    • API

    • Bull.js

    • Docker

    • Docker Compose

    • GraphQL

    • Java

    • JavaScript

    • Jest

    • Kotlin

    • MongoDB

    • Nest.js

    • Node.js

    • PostgreSQL

    • Redis

    • REST

    • RPC

    • Supertest

    • TypeScript

    • Web

    • Webpack

  8. Sortlist.com migration

    #8

    2020 - Employee

    A quick proof of concept moving from AngularJS to SSG/ISG pages in NextJS and GatsbyJS.
    • Gatsby.js

    • JavaScript

    • Next.js

    • TypeScript

  9. Pseudo-relational MongoDB ORM

    #9

    2020 - Personal

    A pseudo-relational layer on top of MongoDB written in TypeScript to quickly iterate on personal projects. The aim was to bridge the gap between relational databases and the flexibility of document-based data stores.
    Published on npm.
    • JavaScript

    • Jest

    • MongoDB

    • TypeScript

    • Webpack

  10. GreenFi

    #10

    2019 - Contractor

    Greenfi is an environmental platform for localities in rural Africa to gain access to loans. The idea was to bring in an environment-centric system for repaying a loan in accordance with Sharia Law, as a ledger for a community to implement. The project took about 6 months in collaboration with a designer and clients, and has since sequestered $15,000+ within its first year of launch.
    • Android app

    • Android SDK

    • API

    • CSS

    • Express.js

    • HTML

    • JavaScript

    • MongoDB

    • Node.js

    • React.js

    • REST

    • SQLite

    • Web

  11. Hairdressers Connect

    #11

    2019 - Contractor

    This was a platform for stylists to showcase their work, and garner connections in order to find a job on a pseudo-marketplace as if LinkedIn and Instagram had a cross-over.
    • API

    • Express.js

    • JavaScript

    • Mocha

    • MongoDB

    • Node.js

    • React.js

  12. Irish Nouns

    #12

    2019 - Personal

    A small game for users to be presented with a noun in the Irish language, and they have to guess whether it is masculine or feminine. Users can choose the category of words and beat their high score.
    • Android app

    • Android SDK

    • API

    • Express.js

    • Firebase

    • Java

    • JavaScript

    • MongoDB

  13. Occup.ie

    #13

    2018 - Startup

    In 2018, it was getting increasingly more difficult to find a place to live in Dublin. The choice at the time was limited to websites such as Daft.ie, Rent.ie, MyHome.ie...and the main problem with those websites was a lack of innovation and accountability, difficulty scheduling visits instead of picking from a calendar, no digital rent agreements, no escrow accounts for securing a deposit, no way to formally define issues to the landlord transparently... The list goes on.
    With my co-founder, we decided to research and play with some ideas and validate them through user hypothesis testing. We also created a quick proof of concept of how we could present these within an MVP. While the MVP was an interesting concept and there was certainly some interest from responses, eventually it became clear that a growing housing crisis would make it too difficult to enter the market with an uneven marketplace.
    Since the goal of the quick research and MVP was to validate and to fail fast, ultimately we ended up failing fast with minimal time and money lost.
    • Android app

    • Android SDK

    • API

    • Express.js

    • Firebase

    • JavaScript

    • Mocha

    • Node.js

    • Supertest

    • Web

  14. Trym

    #14

    2018 - Startup

    A quick play-project into an easier solution to book hair treatments as a direct competitor to Treatwell. The app was a brief investigation into finding local stylists, collating reviews and ratings, and allowing mobile/electronic payments where the establishment did not have access to a card reader.
    • Android app

    • Android SDK

    • API

    • Flask

    • Java

    • MongoDB

    • REST

    • XML

  15. T1Exercise

    #15

    2018 - Contractor

    A revisit to the initial investigation in 2017 of DiabetesPlus. A thesis was written using clinical trial data aggregated from test groups via the app, and an additional phase of development was tendered in order to add more features to both the iOS and Android clients.
    • Android app

    • Android SDK

    • Express.js

    • Firebase

    • iOS app

    • iOS SDK

    • Java

    • JavaScript

    • MongoDB

    • Node.js

    • Swift

    • XML

  16. Real Time Dublin

    #16

    2017 - Personal

    A quick personal project to improve the UI/UX experience of the end user. The app was a redesign of the Dublin bus app using their real time information REST endpoint, but added some additional functionalities such as saving frequently used stops and a last bus alarm.
    • Android app

    • Android SDK

    • Java

    • XML

  17. Farrel McDarrel Soundboard

    #17

    2017 - Personal

    This was a soundboard app as part of a mini hackathon with some friends.
    • Android app

    • Android SDK

    • Java

    • XML

  18. Open Source Snapchat Filters

    #18

    2017 - Personal

    A research paper was written resulting from work done on the topic Orthogonal Procrustes in linear algebra. A webcam feed is processed and applies 3d graphics from 2d pose markers using facial landmarks. Simulated filters included object rasterisation on pose, face swap, and light occlusion.
    • OpenCV

    • Python

  19. H. pylori Diagnosis App

    #19

    2017 - Contractor

    This was a contract project for the TAGG group in the hospital Tallaght AMNCH in Dublin Ireland.
    The objective of this app was to move from a paper printout to a digital way of diagnosing the H. pylori bacterial infection. I gathered requirements from doctors who would act as clients in the project, and they would provide guidance at fortnightly meetings.
    Eventually two native apps were released: one on iOS and one on Android.
    • Android app

    • Android SDK

    • iOS app

    • iOS SDK

    • Java

    • Swift

    • XML

  20. DiabetesPlus

    #20

    2017 - Startup

    DiabetesPlus was another collaboration with the hospital Tallaght AMNCH in Dublin, Ireland. The initial scope of the project was to create a proof of concept for validation in a clinical trial.
    The app was a recommendation engine for users who live with type 2 diabetes and required suggestions to manage their blood sugar levels when exercising. It won a cash-prize in the entrepreneur awards hosted in Cork Institute of Technology.
    • Android app

    • Android SDK

    • API

    • Flask

    • iOS app

    • iOS SDK

    • Java

    • Python

    • Swift

    • XML

  21. Thesis Dissertation

    #21

    2017 - Personal

    I wrote my thesis around the topic of socio-metric performance prediction in order to do some exploratory work around the area of collaboration metric gauging. The goal was to deterministically reconcile parameters of contributor efforts on open-source software.
    • CSS

    • D3.js

    • HTML

    • MongoDB

    • Neo4j

    • Python

  22. Trojan horse in a decoy game

    #22

    2017 - Personal

    A proof of concept for trying to execute code on a remote machine. There are three parts to this: the first one is a shell script that snaps pictures of the user and shows notifications. The second part is a decoy snake game that fetches this remote script from a Git repo. The third part is a simple REST API with a flag to invoke or not.
    The remote shell script executes code to run the script via a crontab, making it difficult to remove without some system knowledge.
    • OpenGL

    • OSX

    • Shell

    • Swift

  23. Loinnir

    #23

    2017 - Personal

    Loinnir started off at an Irish-language computer science hackathon in University College Dublin in April 2017 where the goal was to create a solution for the topic "the Irish language around me". I collaborated with an engineer and a business student to create a proof of concept of digital Irish speaking regions. The app was crude, but allowed the user to find speakers in their locality and attend local events.
    Some weeks later, I revisited the idea and created a messaging service where users can form their own communities, grow their locality, and matchmaking users interested in chatting with others.
    At its peak, the service had >550 users, and a 30 day mean-retention rate.
    • Android app

    • Android SDK

    • API

    • Flask

    • Java

    • jQuery

    • MongoDB

    • Python

    • REST

    • SQLite

    • Web

  24. PlusPlant

    #24

    2017 - Startup

    A friend of mine needed a website to showcase his business of offsetting carbon footprints by planting trees in rural Kenya.
    I created a static website using the Bulma design system for them to showcase their idea and attract investors.
    • CSS

    • HTML

    • JavaScript

  25. Plynk - Banking App Redesign

    #25

    2017 - Personal

    Back in 2017, I worked briefly at an Irish banking app called Plynk. That is, until they decided not to pay me. I was excited to join, and had some ideas to present to the team in order to make banking more innovative and user friendly. Remember that this was before n26 and Revolut were so large.
    One of the initial projects I did before joining was a redesign involving contactless NFC payments between phones and quick proof of concepts surrounding instant money transfer.
    • Android app

    • Android SDK

    • Flask

    • Java

    • MySQL

    • Python

    • XML

  26. Meat Timer

    #26

    2016 - Personal

    An Android app that mathematically deduces how long to cook meat depending on the parameters given.
    • Android app

    • Android SDK

    • Java

    • XML

  27. Neurobranch

    #27

    2016 - Startup

    Neurobranch was a clinical trials platform for researchers to run customisable clinical trials and collate the information for processing. Participants can opt in and join trials depending on preconditions, and then report information without researcher intervention.
    • Android app

    • Android SDK

    • API

    • CSS

    • Express.js

    • HTML

    • Java

    • JavaScript

    • jQuery

    • MongoDB

    • Node.js

    • Redis

    • REST

    • SQLite

    • XML

  28. Webcam Face Greeter

    #28

    2016 - Employee

    This was an internal project as part of my time in the Accenture Innovation Labs.
    • Alexa SDK

    • API

    • Java

    • JavaScript

    • MySQL

    • REST

    • Spring

  29. Zoomba

    #29

    2016 - Startup

    • Android app

    • Android SDK

    • Java

    • OpenGL

    • XML

  30. Irish Dictionary App

    #30

    2016 - Personal

    The online dictionary, tearma.ie, did not have an app and their website was slow and unfriendly to use. I decided to create an Android app that acts as a parser for their website.
    The app interacts with a man-in-the-middle server to parse and cache requests, and return them to the client.
    • Android app

    • Android SDK

    • Express.js

    • Java

    • JavaScript

    • Node.js

  31. Ah Heyor!

    #31

    2016 - Personal

    "Ah Heyor!" was a game made as part of a game project in OpenGL. The objective was to collect cans of beer before the timer ran out.
    • C++

    • OpenGL

    • Windows

  32. Qwak

    #32

    2015 - Startup

    An OCR reading aide for the visually impaired to transcribe notes to audio.
    • Android app

    • Android SDK

    • Java

    • XML

  33. Irish Language Grammar App

    #33

    2015 - Personal

    A corpus of grammar rules as part of a personal project to make the Irish language more accessible.
    • Android app

    • Android SDK

    • Java

    • XML

  34. DrinkTracker

    #34

    2015 - Startup

    A project with some friends to make a digital breathalyser to enforce harm reduction methods of binge drinking. Users add drinks throughout a night, and the device locally creates a crude graph of the decay of alcohol from the bloodstream. The app had approximately 5K downloads within 2 years.
    • Android app

    • Android SDK

    • Java

    • SQLite

    • XML

  35. iompar

    #35

    2015 - Personal

    Iompar was a transportation app that syncs and aggregates your smart card balance when an official app for tracking your balance was not available by scraping from internet sources. The app also provided real-time information in order to track tram times on the Luas light-rail system in Dublin.
    • Android app

    • Android SDK

    • Java

    • jSoup

    • SQLite

    • XML

  36. Monopoly Markov Chain Simulation

    #36

    2015 - Personal

    A mathematical simulation of the probability of landing on certain tiles in the game Monopoly as part of a university assignment.
    • Java

  37. Asteroids

    #37

    2014 - Personal

    A game project as part of my university degree using OpenGL on a mobile device. The app was a simple project where the gyroscope of the device moved a spaceship on a 2d plane in order to avoid asteroids approaching the camera on a 3d plane. The longer the user avoids a collision, the higher the score will be.
    • Android app

    • Android SDK

    • Java

    • OpenGL

    • XML

  38. Open World

    #38

    2014 - Personal

    A Mario platformer game clone where levels are generated from text file maps. There is no objective to the game, but instead it was a way to play with physics and 2d rendering engines
    • Allegro

    • C++

    • OpenGL

    • Windows