Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified public/resume.pdf
Binary file not shown.
19 changes: 12 additions & 7 deletions src/data/experience.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,21 @@ export const experience = [
{
id: 0,
title: "Software Engineer @ Garner Distributed Workflow",
date: "2024 - Present",
date: "2024 - 2025",
description:
"My first industry internship. I have already learned an incredible amount from engineers who have been coding for twice my lifetime. I interact very closely with all parts of the system, including core components, and even the project side. I have been able to feel real impact, as I regularly write and release production code to be used by fortune 10 energy companies.",
"My first industry internship. I learned an incredible amount from highly experienced engineers from all parts of the field. I appreciated not being treated as an 'intern', but just another member of the dev team, who pulls off the same Jira backlog and does the same tasks as everyone else. It was true fullstack development, as I worked on everything including database, backend, frontend, jobs/imports, various microservices, build/infrastructure (Github Actions, k8s, and Google Cloud), UI/UX and more. It was an Agile/Xp team of highly skilled generalists, and it was a priveledge to work there.",
accomplishments: [
"Implemented an entire unified filtering system from scratch for a complex logistics system, participating in the design of the filters, and increasing the capability and usability of the filtering system.",
"Wrote E2E tests in both Cypress and Playwright",
"Developed CronJobs to handle data imports from a variety of external vendor APIs",
"Maintained and significantly upgraded ONgDB (Open source Neo4J fork), and migrated our entire production database (>1 billion nodes) to it.",
"Implemented and designed an entire logistical filtering DSL from scratch, increasing the capability and usability of the filtering system.",
"Created a variety of k8s infrastructure in dhall and yaml, github actions, and other google cloud configuration.",
"Refactored large parts of the frontend to remove significant duplicatation (Thousands of lines) and make components more modular",
"Developed CronJobs to handle millions of rows of data imports from a variety of external vendor APIs",
"Implemented self signup through Auth0 API alongside our existing SSO and user import systems",
"Wrote E2E tests in both Cypress and Playwright",
],
tags: [
"Scala",
"ZIO",
"Play",
"Angular",
"Typescript",
Expand Down Expand Up @@ -41,8 +45,9 @@ export const experience = [
"Researched biology and machine learning, keeping up to date on cutting edge research in the field, and brainstorming projects of our own.",
"Organized and distributed work to a team of 4 other developers.",
"Managed the use of a shared workstation including multiple environments and operating systems",
"Currently developing a paper on creating a multi-armed model to predict protein functionality with only ~120 data points, and generate new functional proteins using a genetic algorithm",
"Also currently working on a meta analysis of protein LLMs and their performance with QLoRA adaptions.",
"Developed a paper on creating a multi-armed model to predict protein functionality with only ~120 data points, and generate new functional proteins using a genetic algorithm",
"Worked on a meta analysis of protein LLMs and their performance with QLoRA adaptions.",
"Published two papers at ICLR 2025 (openreview.net/forum?id=sfTXIiu7Op, openreview.net/forum?id=KBMxaCSwpB)",
],
tags: [
"Python",
Expand Down
22 changes: 16 additions & 6 deletions src/data/projects.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,27 @@
export const projects = [
{
id: 0,
title: "Recipe Website",
date: "2025",
description:
"Passion project for keeping my recipes stored and accessible. Lots of fun design like almost fully generic controller code. Strong use of interfaces. Some unnecessary exercises like writing my own simple auth, which I would never recommend. Social network design between saving recipes and having ingredients as graph nodes with weighted relationships from recipes. Allows for easy analytical queries to recommend recipes",
tags: ["Scala", "ZIO", "Neo4J", "Angular"],
codeLink: "https://github.com/specialthing44/recipe-website",
projectLink: "https://github.com/specialthing44/recipe-website",
},
{
id: 1,
title: "Portfolio Website",
date: "2024",
description:
"This site was built using ReactJs and Tailwind CSS. It is a fairly standard static single page application. I tend to not believe in over-engineering things, and I have a lot more interest in UX than UI. Thus I have tried to keep the site as simple as possible, while still being visually appealing. I've learned some things from making this, as this was my first real web project, for example, I will never use JS instead of TS unless I have to.",
image: `${process.env.PUBLIC_URL}/portfolio.png`,
tags: ["ReactJs", "Tailwind CSS"],
codeLink: "https://github.com/",
projectLink: "example.com",
codeLink: "https://github.com/specialthing44/portfolio",
projectLink: "https://spencer-perkins.vercel.app/",
},
{
id: 1,
id: 2,
title: "Interactive Research Platform",
date: "2023",
description:
Expand All @@ -26,23 +36,23 @@ export const projects = [
],
},
{
id: 2,
id: 3,
title: "PetFinder Clone",
date: "2023",
description:
"A third year school project where I worked with an team of 2 developers to create a clone of the PetFinder website using React, Django, and RestAPI. We implemented a user-friendly UI, a search and filter system, and a database system to store and retrieve pet information.",
tags: ["React Js", "Python", "Django", "RestApi", "Bootstrap"],
},
{
id: 3,
id: 4,
title: "Java Tamagotchi Game",
date: "2022",
description:
"A second year school project where I collaborated with a team of developers to create a Tamagotchi-style videogame in Java with a Swing UI that strictly followed Clean Architecture, MVC, and SOLID Principles. We implemented a database system allowing for online user interaction and saved games, handled input processing and passthrough, and performed debugging with Junit.",
tags: ["Java", "Swing", "MVC", "SOLID", "JUnit"],
},
{
id: 4,
id: 5,
title: "Predictive Model with Web UI",
date: "2021",
description:
Expand Down
13 changes: 7 additions & 6 deletions src/pages/landing/landing.js
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,13 @@ const LandingPage = () => {

<p className="text-lg mt-4">
I'm a computer science specialist at the University of Toronto. I
work as a fulltime software engineer writing production code for
fortune 10 companies, and part-time as an ML researcher for a
computational biology lab. On the side, I create small projects to
solve problems that matter to me, and outside of work, I'm an avid
musician, and I've been playing the piano for 16 years. I'm also big
cooking, and I'm working on my own recipe website.
just finished a 16 month co-op as a fulltime software engineer at
Garner writing production code for fortune 10 companies at, and I
also work part-time as an ML researcher for a computational biology
lab. On the side, I create small projects to solve problems that
matter to me, and outside of work, I'm an avid musician, and I've
been playing the piano for 16 years. I'm also big into cooking, and
I'm working on my own recipe website.
</p>
</div>
</div>
Expand Down