hey, I'm Angelo
I make things
work, then make
them interesting.
I am a fourth-year Computing Science student at Thompson Rivers University, currently on the Dean's List and on my second co-op as a software developer at Dawson Group, where I build internal tools and AI-powered apps with React, Node.js, and PostgreSQL. Before that I did a co-op at the BC Lottery Corporation, working within their DevOps infrastructure, maintaining OpenShift clusters, improving CI/CD pipelines, and leading the initiative to integrate AI-assisted code reviews using AWS Bedrock.
I am drawn to projects that sit at the intersection of AI and practical software engineering. I find that the most interesting problems are the ones that already exist in the real world and just need someone to approach them differently. Outside of that I maintain a personal homelab running Proxmox, I am into custom keyboards and music, and I tend to pick up new tools and technologies as they become relevant to whatever I am working on.
I am currently looking for new grad roles and co-ops. If you are working on something interesting, feel free to reach out.
Where I've been
- Built features for an internal field operations portal, working across a React and TypeScript front end and an Express, Prisma, and PostgreSQL back end, including admin tooling and authentication.
- Built a web dashboard for monitoring and managing a fleet of AI agents across several organizations, with health status, role-based access, and editable agent identities.
- Designed and built a retrieval-augmented mobile app for health and safety questions in React Native, from architecture decisions through deployment on Heroku, with a Supabase vector database, offline content sync, and cited answers generated with Claude.
- Wrote an automated evaluation suite with a scripted grader to check answer quality against a go or no-go threshold before rollout.
- Presented research on a module of the field portal at TRU's SUPER Symposium.
- Led the initiative to integrate AI-assisted code reviews using AWS Bedrock, researching the necessary components and building the plan to bring it into the pull request workflow.
- Maintained a codebase actively used by 300+ employees, ensuring that security best practices were upheld throughout.
- Developed features for a Common Pipeline to improve CI/CD practices and support future development needs.
- Maintained Red Hat OpenShift clusters and upgraded Jenkins versions, verifying compatibility across jobs and environments.
- Sent division-wide communications regarding system changes and potential downtime to over 500 people.
- Organized and ran events with attendance of over 50 people, managing budgets of up to $3,350.
- Communicated goals and plans to a team of 30 while accommodating schedules and providing support wherever it was needed.
stuff I've shipped
A self-hosted AI agent running in Docker that delivers a personalized daily briefing through Discord and email every morning without any manual input. It pulls top Reddit posts, Steam deals over 50% off, and VCT esports results, then packages everything into a custom HTML email with full dark mode support. It also responds to an on-demand coaching command that fetches the last 5 competitive matches and generates a structured breakdown covering aim, positioning, economy, and utility in about 45 seconds. Switching from GPT-5.1 to GPT-4o-mini after identifying a cost inefficiency reduced weekly API spend by over 90%.
An AI agent trained using a Deep Q-Network reinforcement learning algorithm. The agent learns from previous generations and improves its decision-making over time as it accumulates more experience through training.
A web app that composes short pieces and shows them as real sheet music. I rebuilt it from an old Python genetic algorithm into a rule-based composer that writes in phrases, develops motifs, and follows chord progressions, then engraves the result on a grand staff and plays it back with a built-in synth. Pick a scene or a key and tempo, choose from more than a dozen instrument voices, and export to MIDI.
An exploration of multi-step automated workflows using n8n, testing integrations for LLM routing, memory management, file handling, and notifications. The focus was on understanding how agent role specialization and state persistence behave in practice as pipelines become more complex.
A fully functional Android application built with Java that incorporates standard Android development patterns including Recycler Views, Services, Intents, and Local Storage, with a focus on building interfaces that are both functional and visually well-designed.
A first-person shooter developed collaboratively with a team of six using Agile methodology inside Unity with C#. Player movement was implemented with attention to actual physics and the relevant calculations rather than relying on default engine behaviour.
Several websites built end-to-end using HTML, CSS, JavaScript, and jQuery on the front end with SQL and PHP handling database management and user input on the back end.
A Proxmox server I run at home for self-hosting. It runs a Jellyfin media server with GPU passthrough, a containerized media pipeline isolated behind a VPN, and remote access through Cloudflare Tunnels and Tailscale. It goes down more than it should, and I learn something every time it does.
TALK
Open to new grad roles, co-ops, or just interesting conversations about projects. I check my email pretty regularly.