felim@ucd:~$ whoami

Felim Sullivan

Final-year computer science student at UCD. Software engineering intern at Microsoft in summer 2026.

About

Hello, my name is Felim Sullivan, a student of computer science at UCD.

Programming has always been a passion of mine, and over the years I have acquired a wide range of skills.

Technical skills

Languages

Work Experience

Software Engineer Intern, Microsoft

June–August 2026

I worked on the “Content Store Dublin” team within SharePoint over the course of my internship. During my time, I built an optimization layer for an existing tool, to make it both faster and cheaper. By the end of my project, I was able to prove my project (Semantic intent caching) would reduce both latency and operating costs, impacting end users and the business alike. I presented my research, designs, findings, and a side-by-side demonstration of my solution to the other interns and the ODSP organisation. As of now, my team is currently working to apply my research and findings to the production pipeline, in future, reducing the time it takes to respond to user queries, and doing so in a more cost-effective way.

Other work experience

Lab Demonstrator, UCD

I was employed by UCD as a demonstrator for tutorials/labs for a few 1st and 2nd year computer science modules. This involved helping students complete the tutorial assignments, answering questions or concerns they had, and helping the teaching assistant with any issues during the tutorials.

Facilitator, National Concert Hall

I worked with the National Concert Hall (NCH) as a facilitator for one of their education programmes known as “Quavers to Quadratics”, which is a partnership between UCD, Trinity and the NCH. The program aims to teach primary school students about the fundamentals of music and science.

Merchandise Seller, Seminal Merchandising

June 2025

I was employed by Seminal Merchandising to sell merchandise for the Zach Bryan concerts in Phoenix Park (June 2025). This involved moving boxes of merchandise, counting stock, setting up the merchandise stalls, and using card machines to sell merchandise.

Exam Supervision Assistant, Templeogue College

2022

I worked as an assistant to the exam invigilators/supervisors during the junior and leaving certificate exams during 5th year, 2022 in Templeogue College.

Projects

In my free time I often work on side projects to challenge myself and further my understanding. I chose to highlight a few notable projects here as I feel they demonstrate a wide range of skills. These include personal projects, hackathon projects, and projects completed as part of my degree. Any other future projects can be found on my GitHub.

  1. Cybersecurity Learning Tool - Final Year Project
  2. Riff - Music Version Control
  3. Marketplace Web Application
  4. Sorting Algorithms Visualiser
  5. Weather App

Cybersecurity Learning Tool - Final Year Project

  • Final year project
  • In progress

As part of my degree, I am required to complete a more substantial project over the course of my final year, and so this is that project. As of now it is still a work in progress, and so I can't share much, but here's a snippet from the original project description to give a rough idea:

Educational Tool for Learning Security Protocols

In this project the student will develop a visual and interactive educational simulator to learn security protocols, focussing on the handshake stage. In security protocols two parties try to establish their identities (one-sidedly or mutually), negotiate cryptographic tools to be used, and establish session keys.

Deliverables:

  • A functional visual simulator for simple protocols
  • Visual representation of the communicating parties and exchanged messages
  • Step-by-step, pause, replay and reset controls
  • Visualisation of authentication, key exchange and session-key establishment
  • Ability to inspect individual handshake messages
  • Explanations of the purpose of each handshake stage
  • Software architecture, testing and technical documentation
  • Basic usability evaluation

Riff - Music Version Control

  • Python
  • Microsoft Intern Hackathon

I completed this project during my internship at Microsoft as part of their Intern Hackathon. I was part of a team of three people (myself included), and my main responsibility was to create the working demo that you see displayed below. We created "Riff", a version control tool built for musicians, producers, and songwriters to enable better collaboration. We addressed the problem of online music collaboration today being messy and unorganised and aimed to solve this problem. The tool uses a Git-like syntax (the working title of the project was "Git for musicians") which will feel familiar to technical users. We also had plans to create a UI version later to be more accommodating to non-technical users.

View Riff on GitHub

Marketplace Web Application

  • Java
  • Spring Boot
  • Thymeleaf
  • SQL

This is a simple web application to simulate an online marketplace (specifically, a fake online coffee shop). It was completed as part of a university course on web development. The app distinguishes two types of users:

  1. User: users can explore the homepage, inspect item descriptions, add items to their basket, checkout, and view their orders.
  2. Admin: admins can do all the same tasks as users while also being able to add/remove/edit item descriptions, prices, etc. and update the status of orders.

This project reinforced my skills in basic web development while also exposing me to more advanced topics such as programming with frameworks such as Spring Boot, Thymeleaf, and using databases from within Java code.

View Marketplace on GitHub

Sorting Algorithms Visualiser

  • Java

It is inevitable that every student of computer science will eventually have to study data structures and algorithms, and more specifically, sorting algorithms.

The goal of this project was to create a tool to aid in the learning of these algorithms, and gain a more intuitive understanding of how they work. It's one thing to read about an algorithm and its various steps to arriving at a solution, but to be able to see each of these steps and visualise them in real time was greatly beneficial to my understanding of them.

I chose to implement a wide range of algorithms of varying time and space complexities including:

  • Bubble Sort
  • Selection Sort
  • Shell Sort
  • Insertion Sort

I also added some other less common but interesting algorithms such as sleep sort and bogosort, and I plan on implementing more algorithms in the future.

View Sorting Algorithms Visualiser on GitHub

Weather App

  • HTML
  • CSS
  • JavaScript

This project serves as a demonstration of my skills in web design. It was made entirely using HTML, CSS, and JavaScript.

As you can see, there is a text box where you can enter the name of a City/Country. Clicking the search icon gives some basic weather information about that location. It uses a weather API to fetch data so that it can be displayed to the user. Additionally, there is functionality to switch whether the temperature is displayed in degrees Celsius or Fahrenheit by clicking the associated text.

From this project I learned some fundamental JavaScript concepts, CSS animations, and how to fetch data from an API.

View Weather App on GitHub