KC Drez

Thornton, CO 80241 · kcdrez@gmail.com

I'm a full-stack engineer with over a decade of experience building web applications across a range of industries and stacks. I currently work at Charter Communications on the Bryte IQ platform, contributing across Vue 3 frontend and Python/Django backend, with a focus on frontend architecture, code quality, and technical mentoring. Outside of work, I build projects driven by real personal needs, including a full-stack garden management app with an AI assistant that uses function calling to take real actions in your garden data.

See my full resumé here.


Experience

Software Engineer IV

Charter Communications, Remote

Bryte IQ is a Network-as-a-Service platform built on Charter's Spectrum network, offering developer-facing APIs for industries including transportation, healthcare, ecommerce, and financial services. My team owns the customer-facing portal: the onboarding, credential management, team administration, and self-service account management surface that developers interact with directly.

I joined as a frontend-focused contractor and grew into full-stack ownership spanning Vue 3, Pinia, TypeScript, and Vuetify on the frontend and Python/Django on the backend. Over time I've taken on technical leadership responsibilities including frontend architecture decisions, authoring formal proposals, driving cross-functional initiatives, and onboarding new engineers.

Technical Contributions

  • Testing Infrastructure: Built frontend unit testing infrastructure for the monorepo from scratch, scaling coverage from 0 to 1,500+ unit tests across 112 files and integrating coverage reporting into CI to track quality trends across merges. Defined and promoted Vitest-based testing conventions that increased team confidence in rollouts and reduced regression risk.
  • Encryption Credential Platform: Designed and delivered a production credential management platform handling RSA public/private key generation, passphrase-based decryption, and a no-secret-storage model to protect sensitive customer material. Crypto implementation used OpenPGP for encryption and Argon2id + AES-GCM for key derivation and symmetric encryption. Led post-deployment debugging of a partner integration failure caused by a subtle GPG sub-key vs. primary key mismatch; presented the full investigation as a retrospective at an architecture meeting, publicly modeling vulnerability and the importance of early escalation.
  • Authentication Migration: Led the frontend side of a major auth migration from AWS Cognito to Django's session-based auth system. Redesigned login flows, built dedicated auth database tables, implemented Django serializers and API endpoints, coordinated user migration, and drove a global password reset notification during the infrastructure transition.
  • Orders Architecture: Primary creator and maintainer of the orders-related tables and API endpoints within a portal codebase that has grown to 30+ database tables and 44+ API paths. Influenced the lead architect's data model design by making the case, in writing and in person, that creating Application records at submission time (rather than post-approval) avoided a second UI pathway, additional API complexity, and frontend branching logic. The design was revised to match my recommendation.
  • Ephemeral Database Testing: Identified that the team's Playwright integration tests were limited to GET endpoints due to static test data, covering roughly 10% of real application functionality. Researched options, built a proof of concept, and presented it to QA. Wrote a formal proposal; management response: "Yes, do this ASAP." First infrastructure MR (25 files, ~672 lines) established the foundational ephemeral database layer. Head Architect Micah Labbee and QA Lead Chad Kreutzer both publicly endorsed the initiative, unsolicited, on the day of the merge. The work is also serving as a mentoring vehicle: new engineers are implementing against the foundation rather than just observing.
  • Feature Flag Systems: Evaluated LaunchDarkly vs. GitLab Feature Flags and presented findings to the engineering team via a live demo; GitLab was adopted by a separate team. Separately designed and delivered a Django Waffle feature flag system to decouple cross-team workstreams, allowing documentation and product entries to be authored, deployed, and hidden behind a flag until all teams were ready. Converted hardcoded product catalog mappings to DB-backed fields configurable from Django admin, removing engineering from the critical path for product launches entirely.
  • Reusable Form Framework: Built a reusable product form framework covering 11 user-facing forms: login, support requests, password reset, profile updates, and more, standardizing UX and centralizing both client-side and API-side schema validation.
  • Incident Response: Led the response to a production incident where a partner was unable to use any API services due to a regex silently truncating special characters during credential decryption. Authored the post mortem including a 5 Whys analysis, wrote a hotfix script to restore the affected partner's access, delivered a code fix with updated unit tests, and identified a testing gap in the process.

Leadership & Initiative

  • Acting Release Lead: Volunteered to lead a major release when the Principal Engineer was out of town. Organized the testing plan, rollout plan, and stakeholder communication across the Head Architect, VP, Lead PMs, and engineering team. Made the call to abort and resume after a monorepo freeze rather than risk another team's work, a decision later confirmed correct when the freeze extended further. Recognized by the team for the handling afterward. The incident also surfaced a structural deployment problem; I raised it with the VP and DevOps, and the team subsequently adopted a unified monorepo deployment strategy.
  • Formal Technical Designations: Named Primary Technical Design Lead (TDL) for CPE Management and separately for marketing status by engineering manager Smita Jain. Nominated as frontend code owner by a DevOps engineer given the influx of new developers, immediately seconded by the Principal Engineer and offered implementation by the Principal Engineer covering the entire engineering org. Nomination was unsolicited.
  • Proposals & Strategy: Independently documented 7 Q3/Q4 improvement initiatives covering developer experience, testing, operations, and code quality; all 7 endorsed by engineering manager with explicit praise. Evaluated and presented five status page services to the full engineering team; named TDL for the initiative. Provided a 20-point SWAG estimate for credential validation implementation and identified a timing conflict with a parallel project, recommending a two-sprint stagger to avoid sequencing issues.
  • Onboarding: Onboarded two engineers in two weeks, helping each ship a first PR in about seven business days while documenting processes in Confluence and leading four onboarding sessions. Distributed implementation tickets from the Ephemeral DB initiative to new team members so they could learn the testing infrastructure through real work, not observation.
  • Documentation: Authored the Application Creation Process documentation used as the primary integration reference for external partner teams. Documented all automated email content for the portal in Confluence, explicitly designed so product and content teams own it, not engineering. Adopted as the canonical source of truth by both teams.
November 2024 - Present

Software Engineer

Scribd Inc, Remote

SlideShare is a large-scale presentation-sharing platform hosting 25M presentations and serving 70M+ active users, built on React, Next.js, and TypeScript with a Ruby on Rails backend and GraphQL API. During my tenure the platform was simultaneously modernizing its legacy frontend architecture and transitioning from a subscription model to a free, ad-supported model, two parallel initiatives that ran through most of my time there.

  • Legacy Modernization: Migrated approximately 12 legacy jQuery pages to React and TypeScript, including SlideShare's highest-traffic experiences: the home page, contact page, and content viewing page. Established migration patterns that allowed jQuery and React implementations to coexist safely during the transition, using feature flags to control rollout without disrupting existing traffic.
  • Feature Flag Rollout Strategy: Drove feature flag control across multiple levels: individual page renderings, micro-features within existing pages, and full page route replacements. Implemented a phased rollout approach, scaling from 5% to 10% to 50% to 100% based on stability metrics, that enabled safer incremental deployment of both migrations and new features while maintaining a daily deployment cadence across the consumer platform.
  • Ad Platform & Monetization: Built and integrated 20–30 ad placements individually (the team managed ~100 sitewide), consuming ad API calls driven by user context, container dimensions, and ad server logic. Implemented ad analytics via Google Analytics to track click-through rates, impressions, and engagement signals. Designed and executed an ad layout experimentation framework to validate monetization strategies, measuring user retention, engagement, and conversion impact across cohorts.
August 2022 - December 2023

Software Engineer

Nacelle Inc, Remote

Nacelle was a white-label ecommerce platform built on Vue.js, Vuex, and Tailwind CSS that allowed businesses to manage and customize their online storefronts (products, pricing, content, and layouts) without requiring engineering involvement. The platform served approximately 12 active production customers with varying branding, feature sets, and pricing tiers, all running from a shared codebase.

  • Platform Development: Built frontend components and shared platform functionality using Vue.js and Vuex, integrating a GraphQL API to power product management, pricing, storefront customization, and Shopify/Contentful account integration across multiple customer environments.
  • Preview Workflow: Implemented an iframe-based storefront preview feature that let customers inspect how their product data (images, pricing, content) rendered across screen sizes before publishing. This directly addressed a recurring pain point around malformed form data and accidental publishing, giving customers confidence to make changes without needing engineering support.
  • Feature Tiering with LaunchDarkly: Integrated LaunchDarkly for tiered product functionality, implementing per-customer and per-feature flag gating to control access to platform capabilities based on client pricing models, enabling the same codebase to serve customers with meaningfully different feature sets.
August 2021 - June 2022

Front End Engineer

Promontory Mortgage Path, Remote

Promontory Mortgage Path was a white-label mortgage application platform built on Angular 8 and Angular Material, serving both borrowers submitting loan applications and lenders managing them through a separate admin experience. The platform supported approximately 5 client banks and credit unions across roughly 12 configurable portal instances, each with customer-specific branding, workflows, and product rules, all from a shared codebase.

  • AngularJS to Angular Migration: Established shared migration standards and patterns for modernizing the codebase from AngularJS to Angular 8, applied across both borrower-facing and lender-facing portal systems. Drove consistency across client instances and reduced technical debt while keeping existing customer workflows intact.
  • Accessibility & Compliance: Treated accessibility as a core product requirement in a financially regulated environment, implementing keyboard navigation, contrast compliance, and screen-reader-friendly experiences across borrower and lender workflows. Validated using Chrome Lighthouse and participated in third-party accessibility audits to meet ADA and privacy requirements.
  • White-Label Customization: Built and maintained client-specific portal configurations, including conditional logic and branching for institutions with differing product offerings; for example, clients without HELOC mortgage products required entirely separate workflow paths rather than simple feature hiding.
  • Mentoring: Onboarded a new engineer on the platform's white-label architecture, accessibility practices, and Angular migration standards.
April 2020 - August 2021

Web and Tools Engineer

Dire Wolf Digital, Denver, CO

Dire Wolf Digital is a gaming company specializing in video and board game development. I spent nearly seven years there across three distinct phases (QA Tester, QA Lead, and Web/Tools Engineer), ultimately recognizing that solving problems through engineering, not just finding them, was the direction I wanted to pursue.

QA Leadership

  • Progressed from QA Tester to Senior QA Tester within a year by developing a theory-crafting approach to card interaction testing on Pokémon Trading Card Game Online, cross-referencing new cards against the full existing card library to surface edge cases in mechanics, damage calculations, and format eligibility that standard regression testing missed. Found dozens of long-standing bugs within the first few months, many previously undetected.
  • Managed a QA team of roughly 10 testers for approximately 1.5 years as QA Lead, overseeing hiring, interviewing, onboarding, mentoring, test planning, and regression strategy. Interviewed ~30 candidates and hired ~5 testers. Created Confluence onboarding documentation and trained a successor over six months while simultaneously building the test management platform below.

Test Management Platform

  • Identified the limitations of the team's Excel/VBA workflows (slow feedback loops, merge conflicts, brittle tracking) and designed a database-backed replacement from scratch. Pitched the approach to the CEO and executed a gradual 6-8 month transition from QA leadership into engineering while training a replacement lead.
  • Built a Vue 2 / Vue Router / Vuex / Express / MongoDB web-based test management platform that expanded pass/fail tracking into a hierarchical result model covering visual tests, functional test cases, edge-case validation, and long-term regression visibility. Increased testing visibility by roughly 10x and delivered a live stakeholder status board showing release completion metrics (e.g. "version 1.1.1 is 24.5% complete") without interrupting the QA team.
  • Managed full adoption and migration across four projects. Peak concurrent usage was ~25 QA testers and production staff; an estimated 100+ testers have cycled through the platform over its lifetime. The platform was built in 2018 and was still running in some form over eight years later.
  • Built a card search subsystem backed by MongoDB that allowed testers to query the full PTCGO card database by multiple attributes simultaneously to quickly surface cards for test scenario construction. Built an XLS import pipeline (~90% automated) to ingest client-provided card data spreadsheets each quarterly card set release.

Engineering Deliverables

  • Dynamic Input System: Co-designed and built the frontend rendering engine for a schema-driven dynamic form system that generated complex UI entirely from a JSON schema definition, supporting ~30 field types including strings, arrays, enums, conditionals, and arbitrarily nested objects. Solved recursive nesting by spawning a new modal window per nested object level. Enforced referential integrity at the UI level, eliminating a class of content errors where producers previously had to manually track cross-field dependencies. Published to an internal Verdaccio npm registry as a shared package consumed by two projects.
  • Merchandise Store: Built the company's ecommerce storefront using Vue, PHP, and SQL, integrating Braintree for payments and building an internal marketing tool so the team could update products, pricing, images, and inventory in real time without engineering involvement.
  • Distribution Testing System: Collaborated to replace a fragile Excel-formula-based booster pack verification process with a scripted system that cross-referenced client-defined card distribution rates against gameplay engine simulation output. Caught 1-10 distribution bugs per card set release (~6 releases/year) before they reached test environments, and gave gameplay engineers self-service access to distribution verification for the first time.
July 2013 - April 2020

Skills

Frontend Languages
  • JavaScript, TypeScript
    • Node.js
    • Vue.js, Vuex, Pinia
    • React, NextJS, TanStack Query
  • CSS, SCSS, SASS
    • Bootstrap, Angular Material, Vuetify
Backend and Databases
  • Python, Django
  • GraphQL
  • REST API
  • SQL, PostgreSQL
  • Railway
Build Deployment
  • Vite, Webpack
  • LaunchDarkly
  • Docker
  • GitHub Actions
  • Vercel
Testing
  • Vitest, Playwright, Pytest
  • Cypress, Jasmine
  • Unit, Integration, E2E, AB Testing
  • Docker Compose test environments
  • Coverage enforcement (CI)
Other Skills
  • Git, GitHub
  • Agile, Scrum
  • Jira, Confluence
  • CI/CD
  • Figma
AI Development
  • OpenAI API
  • Function calling / agentic tool use
  • Context window engineering
  • AI-assisted development workflows

Projects

Personal Projects

Garden AI

I built this full-stack garden management application to replace a manual workflow I had using ChatGPT and Excel. The data model is hierarchical (Garden, Bed, Plants) with a visual placement canvas built on raw SVG pointer events that lets you lay out your garden in real-world feet, complete with zoom, pan, drag, resize, and rotation.

The AI assistant is a floating chat widget with two modes: contextual Q&A grounded in your specific garden data, and action execution using function calling, where the AI can add plants, log observations, change statuses, and move plants between beds by calling Django API endpoints directly. The available tool surface changes based on where in the app you are.

Built with React and TanStack Query on the frontend and Python/Django on the backend. Includes ~1,038 tests across Django unit tests, Vitest frontend tests, and Playwright E2E tests running against a full Docker Compose stack, all enforced in GitHub Actions CI/CD.

View the code
View the application

Star Wars: Galaxy of Heroes Web App

A feature-rich companion app for the mobile game Star Wars: Galaxy of Heroes, built with Vue 3, TypeScript, and Vuex. Used daily for over a year before being archived when a third-party API dependency broke in late 2025.

The core feature was a character farming planner that calculated estimated completion dates across three distinct farming source types (regular nodes, event-based farming, and store currency), each modeled with different rate formulas. An advanced boolean character search let users build AND/OR/NOT filter queries across the full game roster, with filter state encoded into a compact custom URL syntax so searches could be bookmarked and shared with no backend.

Guild tools used parallel Promise.all batch fetches to aggregate roster coverage into single-pass histograms across gear levels, relic tiers, and speed stats. A hybrid data strategy combined a third-party API (proxied through a serverless backend to keep keys server-side) with a custom REST API for user-specific data that the game API didn't expose.

Archived: live app no longer functional due to third-party API deprecation

Sentinel Comics RPG GM Management Tool

A session management tool for the Sentinel Comics RPG, built during COVID to run tabletop sessions remotely over video chat. Built with Vue, Vuex, Bootstrap, and FabricJS, with no backend, no auth, and session storage only.

Tracks player and villain health, bonuses and penalties, active locations and challenges, and a round counter. The centerpiece is a FabricJS canvas where the GM places and moves labeled shapes representing each entity, designed to be screen-shared so remote players could follow along.

The most technically involved part was canvas serialization. Rather than using FabricJS's built-in JSON output, I identified the minimal set of values actually needed to reconstruct full session state and wrote custom serialize/deserialize logic around that. The architecture was a deliberate pragmatic call: a single-user tool with no need for a backend or database; session storage is sufficient and simpler.

View the code
View the application

Pokemon GO Companion Web App

A lightweight companion app for Pokémon GO built with Vue and the public PokeAPI. Built for personal use and shared with colleagues and family.

Covers four tools: a type matchup lookup showing full damage multiplier tables (4x through 0.25x) for any Pokémon, a shiny checker displaying standard and shiny sprites side by side, a CP reference for knowing which Pokémon are worth powering up, and a team builder that aggregates type advantages and weaknesses across your full team, so you can see collective coverage gaps rather than evaluating each Pokémon individually.

View the code
View the application

Interests

When I'm not coding, I spend a lot of time in the garden. I'm in my fourth year growing mostly vegetables from seed, with pumpkins as the highlight. I've been saving seeds year over year and I'm now on the fourth generation of my own pumpkin line. Alongside those, I grow cherry tomatoes, peppers, sunflowers, assorted berries, basil, and more. At the end of the season I usually bake at least one pumpkin cheesecake from scratch during the holiday season. There's something satisfying about watching a seed you saved from last year grow into something vibrant, knowing exactly where it came from. That hobby is also what motivated me to build the Garden AI app.

This summer I started assistant coaching my 5-year-old's tee ball team. There's no scorekeeping at this age, just teaching kids the rules and working on muscle memory for hitting and catching. Being a positive presence and watching them figure it out has been more fun than I expected.

I'm also a lifelong gamer with a board game collection of over 100 titles. Spirit Island gets the most table time these days, and while Battlestar Galactica remains an all-time favorite, it's a long session game so it doesn't hit the table as often as I'd like. I also play Magic: The Gathering occasionally, both on my phone and with physical cards, and for video games I bounce between Star Wars: Galaxy of Heroes and League of Legends: Wild Rift.