KELSEN ALLOWAY

BCIT CST

Build things - software, systems, experiences

About

Making it
look easy.

I'm a BCIT Computer Systems Technology student and junior developer based in downtown Vancouver — looking for a summer 2026 internship where I can contribute to a team building things that matter.

What pulls me in isn't just making software work — it's making it feel right. My favourite parts of this program have been the details: the interaction that responds exactly how you'd expect, the interface that gets out of your way, the experience that just works. I care about intention in what I build.

I'm excited to find a team where I can grow, contribute meaningfully from day one, and keep getting better at the craft. I learn fast, I care about the work, and I don't coast.

Outside of code I'm a lifter, a dog dad, and a *painfully* amateur musician. I find that the same discipline that goes into those things — consistency, attention to detail, showing up when it's not convenient — tends to follow you into everything else.

Professionally; I've spent years in high-volume hospitality — bartending and leading teams in environments where precision, adaptability, and reading the room aren't optional. It turns out those skills translate.

Python JavaScript Java HTML / CSS Node.js / Express Firebase / Firestore MongoDB PostgreSQL Bootstrap / Tailwind Agile / Kanban Git / GitHub UX / UI Design

Resume

Kelsen Alloway

Download PDF

Education

Computer Systems Technology (CST) Diploma

  • Completing an intensive, full-time software development program emphasizing programming fundamentals, software testing, and Agile delivery.
  • Designed, developed, and tested web and Python applications using JavaScript, Python, HTML, CSS, and modern frameworks.
  • Collaborated in Agile teams using sprints, stand-ups, user stories, red routes, and Kanban boards to deliver working software.
  • Produced formal technical documentation including business requirements, Agile planning documents, and entity-relationship diagrams (ERDs).

Projects

Agile Team Web Application — CST Projects

  • Planned and delivered a mobile-first time-management web application using Agile practices including sprints, stand-ups, user stories, and Kanban boards.
  • Implemented front-end functionality using HTML, CSS, JavaScript, jQuery, and modern CSS frameworks (Tailwind, Bootstrap).
  • Designed and executed test scenarios, including internal testing and live user testing, to validate functionality and usability.
  • Used GitHub for version control, coordinating merges and resolving conflicts to maintain a stable codebase.

UX/UI Comparative Analysis — CST Business Communications

  • Conducted a comparative UX/UI analysis between a team-developed web application and Google Calendar.
  • Applied usability heuristics to evaluate navigation, information hierarchy, and user workflows.
  • Identified design trade-offs and usability gaps, and proposed improvements grounded in user-centered design principles.
  • Communicated findings through a structured written report tailored to both technical and non-technical audiences.

Python Text-Based Game — CST Term Project

  • Designed and developed a modular Python game emphasizing clean structure, maintainability, and testability.
  • Implemented gameplay systems and mechanics within a text-based format, adapting modern game design concepts to a constrained interface.
  • Wrote internal test files and performed iterative testing throughout development to identify logic defects and edge cases.
  • Conducted user testing to evaluate gameplay flow and usability, incorporating feedback into revisions.

Business Analysis & Systems Documentation — CST Business Analysis

  • Collaborated in groups to analyze business needs and translate requirements into technical solutions.
  • Created formal Agile documentation, system breakdowns, and entity-relationship diagrams (ERDs).
  • Communicated technical concepts clearly to both technical and non-technical audiences.

Technical Skills

Programming

Python (strong), JavaScript, Java, C — applied in coursework emphasizing readable, testable code.

Web Development

HTML, CSS, Tailwind CSS, Bootstrap, jQuery — mobile-first and responsive design principles.

Testing & Quality

Unit testing, internal test files, user testing, debugging; awareness of test-driven development and CI/CD workflows.

Databases

PostgreSQL, MongoDB, Firebase — basic schema design and data interaction.

Agile Practices

Sprints, stand-ups, user stories, Kanban boards, collaborative delivery.

Professional Skills

Clear written and verbal communication. Strong ownership and accountability in deadline-driven environments.

Operational & Leadership Experience

JOEY Bentall One — Bartender

  • Operate in a high-volume, fast-changing environment requiring precision, adaptability, and consistent execution under pressure.
  • Rapidly learn and apply new processes, tools, and standards as part of test-location rollouts.

Cactus Club Café — Progressive Leadership Roles

  • Advanced through multiple roles with increasing responsibility, contributing to process improvements, training systems, and operational consistency across multiple locations.
  • Worked in deadline-driven environments requiring clear communication, ownership of outcomes, and coordination across teams.

Certifications

Red Seal Certification




Inner Wilds screenshot
View full size

Python — Solo

Inner Wilds

Python ASCII UI Time-loop Game Design OOP
Situation
COMP 1510's term project required a text-based Single User Dungeon with a 10×10+ world, encounters, a final goal, and proper decomposition — all in the Python standard library. The brief was open-ended enough that the real constraint was taste.
Task
Design and build a complete, playable game from scratch: a coherent world, a looping narrative that actually warranted the loop mechanic, a full-screen ASCII UI with a HUD, and enough encounter variety to stay interesting. Do it well enough that you'd want to play it yourself.
Action
Structured the entire codebase as a package — maps, encounters, state, visuals, and flavour text each in their own modules. Designed a time-loop mechanic where per-loop stats reset but progression flags persist, creating genuine stakes without frustrating resets. Built a full-screen ASCII renderer compositing a live map, legend, and status panel side by side. Wrote seven distinct encounter scenarios for the asteroid belt alone, each with its own ASCII art and timed input, then layered a ship malfunction minigame and a deep-system stillness challenge on top. Capped it with an interactive ring-alignment puzzle at the Observatory.
Result
A complete, polished game I'm genuinely proud of — real atmosphere, a satisfying loop structure, and a codebase clean enough that extending it still feels good. Most importantly, it taught me that a constrained interface is a design problem, not a limitation: every moment of the UI is intentional.
STACK app screenshot
View full size

JavaScript — 3-Person Agile Team

STACK

JavaScript Firebase Firestore Vite Bootstrap Agile
Situation
COMP 1800 required a full-stack web app built in a three-person Agile team over several sprints. We needed to ship something real — user-authenticated, cloud-backed, and actually useful — not a demo with placeholder data.
Task
Design and deliver a time-management tool that let students block out study schedules, add tasks with due dates and priority levels, and surface which tasks needed attention most urgently. My responsibilities spanned the frontend architecture, the calendar system, and the priority scoring logic.
Action
Built the entire calendar grid system — a responsive 7-day × 17-hour block scheduler driven by a clean date/range module with configurable clock offsets for testing. Implemented a base schedule pattern (recurring weekly blocks) with per-week exclusion overrides, all synced live via Firestore snapshot listeners. Designed a priority scoring algorithm that combined task urgency (ratio of time needed vs. available study hours before the deadline) with user-set importance, dynamically recalculating as the schedule changed. Coordinated the team's Agile workflow: standups, sprint planning, user stories, and a Kanban board throughout.
Result
A production-deployed app at dtc-13.web.app, used and user-tested by real classmates. The calendar and priority system both held up under live testing — feedback was consistently that the urgency indicator actually changed how people sequenced their week.
Unicorn API screenshot
View full size

Node.js — Solo

Unicorn API

Node.js Express MongoDB Mongoose REST CRUD
Situation
COMP 1537's final assignment was to build a RESTful API from scratch — both a working backend and a frontend that consumed it. The dataset was deliberately absurd (unicorns), which meant the architecture had to carry the weight.
Task
Design and implement a full-stack application with a properly structured Express server, a MongoDB/Mongoose backend, complete CRUD endpoints with error handling and appropriate status codes, and a frontend dashboard that let users query, filter, sort, create, update, and delete records.
Action
Defined a Mongoose schema with typed fields, defaults, and optional constraints. Built five RESTful endpoints covering GET (with multi-parameter filtering: name, loves, weight range, vampire count, vaccination status), POST, GET by name, PUT, and DELETE — each with proper 400/404/500 handling. On the frontend, built a dynamic dashboard in vanilla JS: a sortable, filterable data table with column visibility toggles, inline edit and delete per row, and a create form — all communicating with the backend over fetch. Seeded the database with representative test data and deployed to Render.
Result
A clean, well-structured full-stack application that demonstrated I understood the whole HTTP request/response cycle — not just "make fetch work." The filtering logic in particular (combining multiple query params into a single Mongoose filter object) required thinking through the query model carefully rather than patching it incrementally.
Business Analysis cover page
Read document

Documentation — Team

Business Analysis

Requirements ERDs Agile Docs Systems Design
Situation
COMP 1712 at BCIT required a five-person team to produce a complete business analysis document for a mock client scenario: Target Enterprises, a South African distribution company with paper-based processes, duplicate customer records, and no scalable order management system. The deliverable spanned the full systems analysis lifecycle from initial request through architecture decisions.
Task
Contribute to and co-own a formal team document covering system request, stakeholder analysis, feasibility study, requirements elicitation, use case diagrams, data flow diagrams, entity-relationship diagrams, and a final system architecture decision matrix — all produced iteratively across eight lab sessions with a defined team working agreement.
Action
Led the benefits and cost analysis, translating ambiguous business needs into quantified feasibility arguments. Contributed to the requirements refresh and categorisation, the ERD design, and the decision matrix comparing architecture options. Helped establish and enforce the team's working standards — communication norms, conflict resolution process, and task ownership — which kept a five-person group aligned across weeks of parallel deliverables. Participated in retrospectives after each major phase to surface what wasn't working and adjust.
Result
A polished, professional-grade technical document that demonstrated the full business analysis process end to end — from understanding a client's operational pain points to proposing a defensible system architecture. The experience made clear that good software starts well before any code is written, and that translating messy business reality into clean technical requirements is a discipline in itself.
Website Redevelopment Proposal
Read document

UX Research — Team

Website Proposal

UX Research Heuristics Strategy Client Work
Situation
Handmade Barber Studio, a downtown Vancouver barbershop, had a functional booking website that wasn't performing as a business asset. In a competitive market where clients evaluate service providers before ever walking in, the site had friction points across the booking flow, lacked supporting client resources, and was poorly optimised for local search — all documented through a structured UX and technical audit conducted for BCIT's business communications course.
Task
As one of four team members, contribute to a research-backed redevelopment proposal that identified the site's highest-impact problems, explained their business implications with supporting evidence, and presented practical, prioritised solutions — written for both a technical and non-technical audience.
Action
Applied Nielsen's usability heuristics and web credibility research to evaluate the existing site systematically. Analysed the booking interface and found the site lacked concrete resources for client reference — no bios, portfolios, or visual evidence of work — creating uncertainty that pushed users to Instagram to fill the gap before booking. Mapped the full booking flow to identify drop-off points and benchmarked against competitor sites to establish market expectations. Structured findings into four actionable areas: brand visibility and credibility, booking flow clarity, technical reliability, and search discoverability — each with current-state evidence, business impact reasoning, and concrete recommendations.
Result
A structured, professionally written proposal delivered to a real client. The process developed a transferable skill set: the ability to evaluate a digital product critically, build a defensible case for change using evidence rather than opinion, and communicate technical recommendations to a non-technical decision-maker. The heuristic evaluation framework used here directly informed the comparative analysis produced alongside it.
Heuristic Analysis document
Read document

UX Research — 3-Person Team

Heuristic Analysis

UX Evaluation Comparative Study Nielsen Heuristics Technical Writing
Situation
As part of BCIT's business communications curriculum, our STACK development team was required to formally evaluate our own application against an established competitor using Nielsen's usability heuristics. The goal was to produce a structured comparative report that demonstrated we could assess design critically — not just build.
Task
As one of three authors, contribute to a written heuristic analysis comparing STACK and Google Calendar across three of Nielsen's ten heuristics: Aesthetic and Minimalist Design, Visibility of System Status, and Recognition Rather than Recall. Each section required screenshots as evidence, a clear explanation of the heuristic, analysis of both applications, and prioritised improvement recommendations.
Action
Applied each heuristic methodically to both products, using annotated screenshots to ground observations in specific interface moments rather than general impressions. For Google Calendar, identified that an ambiguous sort icon broke aesthetic conventions without offering a recognisable affordance, and that a decorative illustration added visual noise without information value. For STACK, was honest about where our own app fell short — inconsistent feedback patterns, interaction elements that required recall rather than recognition, and visual elements that added complexity without clarity. Framed every criticism as a prioritised recommendation rather than a complaint.
Result
A report that required holding our own work to the same standard as an established product — and being willing to find it wanting. The discipline of applying a formal framework to something you built yourself is genuinely difficult; it requires separating intent from outcome. The exercise produced concrete improvements that were folded back into STACK's development, and it built the habit of evaluating interfaces by their effect on users rather than their technical implementation.

Contact

Let's talk.

Looking for a summer 2026 internship. If you're building something interesting, and have room for someone hungry to contribute: I'd love to hear about it.
Also open to project collabs, feedback, or just saying hi.

Message sent — I'll get back to you soon.