I'm Oisín.

Master Degree recipient from Technological University Dublin, looking for opportunities to grow as software developer and designer.

Software Engineer


UX/UI


Game Design

About

Skills


Software Design IconSoftware Design + Development

Programming IconProgramming

UX Design IconUX Research & Design

Game Design IconGame Development

Other Skills and Technologies
JavaScript
Java
C#
Python
SQL
React
NodeJS
ExpressJS
MaterialUI
Unity
User Evaluation
Software Design
Software Testing
UML
Git
Jest
Jenkins
Code Review
Jira
Communication
Problem Solving

Education


  • Jan 2024

    MSc Advanced Software Development

    Technological University Dublin

    Software Design
    Programming Paradigms
    UX Design
    Data Visualization
    Secure Systems Development
    Web Application Architectures
    Systems Architectures
    Advanced Databases
  • May 2022

    CPD Fundamentals of Computing

    Technological University Dublin

    Architecture, Operating Systems & Networks
    Systems Analysis
    Web and UI Design
    Object Oriented Software Development
    Information Systems
  • May 2021

    BA Game Design

    Technological University Dublin

    Games Programming
    Game Tools
    Production
    Game Engines
    Prototyping

My Work

Renting Made Easy

Frontend Developer and UX Design
React
Material UI
JavaScript
CSS
UX Design
UX Research
Figma
AWS Amplify
AWS Lambda

Renting Made Easy is a rental listings website developed for my final project as part of my Master's degree in TUDublin. It was a team project with 5 other students. It was developed over the course of 12 weeks including an extensive evaluation process. It used open-source crime data from OpenBaltimore to provide crime-safety ratings for listings based on their geo-location.

I took the role of Lead Frontend Developer and UX Designer. I created the initial mockups using pen and paper, then proceeded to make simple mockups using Figma. The designs went through multiple stages of user evaluation. I did the initial user evaluations to identify issues with accessibility and layouts, and developed a technique which was later used by my teammate who did subsequent user tests.

Material UI was used throughout this project as it enabled fast-paced development and iteration for designs, and helped support accessibility. My main role was developing the bulk of components for the application, and ensuring they were responsive across multiple devices.

The app was deployed to AWS amplify, and used TanStack (React) Query for communication with a Springboot backend and miscellaneous functions deployed to AWS Lambda. I also wrote and deployed an AWS Lambda function which connected to the Google Map API to return nearby services around a listings location. Tanstack was crucial for this as it provided an efficient caching system that reduced the number of API requests to the Google API, reducing cost.

Ed Teacher Dashboard Refactor & New States

Intern Frontend Engineer
JavaScript
React
MUI
Jest
CI/CD Pipelines
Code Review

HMH Ed is an e-learning platform which hosts HMH's curriculum content, and allows teachers and students to manage/complete/mark assignments.

One of their core experiences is the teacher dashboard, which is a Teacher's first stop after logging in to Ed. When I began my internship, new widgets had been added to the teacher dashboard, allowing teachers to get at-a-glance updates on assignments and coursework. This work led to a large bloated application script, for which there was minimal test-coverage.

My major contribution during my internship was refactoring this large script into numerous smaller components and hooks, and adding test coverage to these from which I gained valuable experience in writing Unit and Integration tests.

During this work, I also was tasked with adding new Error states to the widgets, including icons and system alerts. This required me to perform a lot of cross-team (cross-continental!) communication and collaboration, as I needed to work alongside the UX team to source the correct iconography and copy, and accessibility experts to determine the rules for text alerts and window titles.

Both of these were completed over a series of Pull Requests, each getting feedback and approval from other developers/engineers. Each PR had to be fully tested/triaged through the CI/CD pipeline.

Press Rekord

Gameplay and Systems Programmer
Unity
C#
Game Design

Press Rekord was a final year project developed by a team of five final year Game Design Students at TUDublin. It is an action oriented metroid-vania vertical slice. It featured fast-paced combat, NPC interactions and dialogues, and Quest systems. Taking the role of Kat, a thrill-seeking live streamer, the player fights underground monsters, explores the underground environments, and meets unique characters.

For this project, I took on the role of lead programmer, wherein I was responsible for developing the backbone gameplay systems including a custom event system, quest systems, dialogue systems. I also designed and implemented the final boss encounter and the Fly enemy.

Over the course of this project, I gained valuable skills in C# and game design.

Developing the event system was crucial for this project to work, as it enabled multiple sub-systems to communicate while remaining decoupled from each other. For example, for quests involving specific dialogue trees, those dialogues could raise events while the quest instance could listen to those events and respond to them, i.e. progressing the quest to the next stage.

The dialogue system took advantage of the power of serialized objects. Using serialized objects enabled the implementation of branching dialogue trees without adding too much complexity. The key characteristic of scriptable objects that allowed this was their ability to contain references to other scriptable objects.

Number 0Number 1Number 2Number 3Number 4

Face 2 Face Backend API

Student Project
JavaScript
NodeJS
ExpressJS
MongoDB
NoSQL

In the first semester of my masters degree, I was required to create a backend API for a web application as part of a module in web application architectures. For this project I used NodeJS, ExpressJS, and MongoDB as the backbone for API.

The project was called Face2Face, which was a rental listings application (e.g. Daft.ie / Immoweb.be). The application featured token-based authentication/authorization, email-based password resetting, and image uploading.

Users were able to upload profile images, and/or able to create new listings with multiple images. There were numerous other CRUD type operations that users could perform. One thing that was unique was the interest registering system, which allowed users to register their interest for the property. Listing owners could then respond to user interests in the app, which would send an email to the interested party's email inbox.

With Express as the routing solution, I was able to configure various middleware that provided functionality to the app including Multer and AWS S3 for file uploading. Multer allowed the project to receive image upload requests, while restricting the filetypes and ensuring they were within a specified size range. This was a crucial part for the 'security' of the website, as in theory, it could prevent malicious actors from uploading gigantic files to crash the server/go over the S3 bucket limits.

Experience

Software Engineer
Online ApplicationApril 2024 - Current

In my current role as a fullstack software engineer with Online Application my primary focus has been assisting the development of a revamped UI for our product, using Vue.js. The existing system has been developed using the Laravel framework, using blade templates. The UI upgrade project will take the system to a new level by incorporating Vue.JS as a frontend framework, while using InertiaJS to interact with the backend systems.

While I am a fullstack developer, and regularly create backend systems, my skills primarily reside in UX design and frontend development, meaning that I get to make important design decisions on many parts of the interface. I collaborate extensively with the development and QA team which are all located across the globe, working to plan and create new features and to solve problems.

Although I have only been with Online Application a short while, I have made significant positive impacts and contributions to the product. I am excited to continue to grow in this role and expand my knowledge.

  • Frontend Development with JavaScript and Vue.js

  • Backend Development with PHP and Laravel

  • UX/UI Design

  • Development using Ubuntu VM and VirtualBox

Fullstack Engineer
Vue
Laravel
Inertia
PHP
JavaScript
UX Design
MySQL
Ubuntu
VirtualBox
Frontend Engineer Intern
Houghton Mifflin HarcourtJune 2023 - August 2023

Over the summer of 2023, between semesters of my masters program, I was a frontend intern with HMH, working and contributing to their Ed e-learning platform. I was part of the EnrichEd team, a fullstack team of designers, Service engineers, QA engineers, and 2 senior frontend engineers. I contributed to the refactoring of an entire dashboard, reducing lines of code within the main script by 35%, and adding new error and empty states to widgets on the teacher dashboard.

During the internship, I also wrote numerous unit and integration tests, which was a new experience for me, and I spent time learning from the senior QA engineer on E2E testing and practices involved in that.

I also became familiar with the CI/CD pipeline, and in the final meeting of the internship, I was praised for my dilligence and adherance to the standard and for helping out with getting deployments through to production. Over multiple instances where the pipeline was getting backed-up/congested, I helped sort out these issues by reaching out to relevant PR authors and by collaborating with my fellow engineers across teams.

Overall, I gained valuable experience for inter/cross team collaboration and communication, and developed better working practices that I will bring forward to new employers.

  • Wrote Unit and Integration tests for code coverage.

  • Used Jenkins + GitHub as part of deployment pipeline, including E2E testing and triaging.

  • Daily Standups and regular communication with team/other staff to coordinate and diagnose problems.

Frontend Engineer
JavaScript
CSS
Material UI
Code Review
CD/CI Pipelines
Jest
Unit/Integration Testing
GitHub
Outlook
Teams
Built with React and MUI© Oisín Fitzpatrick 2024oisintfitzpatrick@gmail.com