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
Object Oriented Design/Programming
Data Structures
Algorithms
Cloud Computing
Parallel Computing
Discrete Mathematics
Functional Programming
Web Design
Languages
Java
C & C++
Scala
HTML, CSS, JavaScript, TypeScript
SQL
Python
Bash
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.
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.
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:
User: users can explore the homepage, inspect item descriptions, add items to their basket, checkout, and view their orders.
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.
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.
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.