Photo of Samuel Teixeira
Samuel Teixeira
Finoo
Software Engineer (Frontend - Vue)
Mar 2024 → Oct 2025

Finoo Student Deals - University Offers and Lead Capture in Vue 3

Evolved a public Vue 3 site focused on the University Deals module (cards + deal detail page) and legal pages, improving offer clarity while preserving HubSpot lead capture.

Tech Stack

Vue 3 (Composition API)
TypeScript
Vite
Tailwind CSS
vue-router
vue-i18n
Axios
HubSpot Forms
Meta Pixel

Key Metrics

84 commits
2 milestones: Legal/Compliance (Mar/2024) + Deals overhaul (Oct/2025)
Scope: deal detail page + reusable components + centralized deals dataset

Summary

  • Delivery: evolved the University Deals module (cards, sections, and a routed detail page) and created/updated Privacy/Terms.
  • How I unlocked scale: organized the flow around reusable UI components and kept a single source of truth for deals content to reduce inconsistency.
  • Practical effect: a more explanatory experience per university (more context, links, and structure) while preserving the existing lead capture flow.

Across ~19 months of contributions, I worked on the public SPA built with Vue 3 + TypeScript, focusing on offer UX/content clarity and essential compliance pages, while keeping existing CRM/analytics integrations stable.

Context

  • Product and users: a public site where students discover university discounts/partnerships and submit their contact info (lead).
  • Why it was critical: unclear offers reduce intent and create friction; legal pages are baseline for trust/compliance.
  • Real constraints: an existing codebase, script-based integrations (HubSpot/Pixel), and limited automated test coverage.

Key Challenges

  • Improving a core module (Deals) without rewriting the entire site, preserving structure and style.
  • Keeping data and i18n consistent as the UI gained more sections and per-university content.
  • Working with low automation (no app-level tests and no CI detected), reducing risk through incremental changes and local checks.

What I did

  • University Deals (core)

    • Evolved the deal detail page and routing, plus the set of components powering the offers module.
    • Improved cards and sections to boost scanability: users quickly understand the benefit and how to request it.
    • Maintained a centralized deals dataset to reduce duplication and make updates more predictable.
  • Legal & Compliance

    • Added/updated Privacy and Terms pages, ensuring baseline content and visual consistency with the site.
  • Lead capture & integrations

    • Preserved compatibility with HubSpot forms and existing tracking (Pixel) when UI changes required integration-level adjustments.

Decisions & Trade-offs

  • Local content source > migrating to an API/CMS (short term)

    • Why: faster delivery and fewer external dependencies.
    • Trade-off: manual content updates and less flexibility for non-technical teams.
  • Evolve existing components > redesign the whole layout

    • Why: minimized risk and time while keeping consistency with the rest of the site.
    • Trade-off: some structural limitations remain until there’s a dedicated stabilization window (e.g., tests/CI).
  • Local quality checks > test suite (for now)

    • Why: it was the available baseline to reduce risk without reworking the project’s pipeline.
    • Trade-off: higher residual risk of visual/behavior regressions until useful tests are introduced.

Results

  • Measured (engineering): 84 commits attributed to me, with clear milestones in Mar/2024 (Legal) and Oct/2025 (Deals overhaul).
  • Concrete technical proxies:
    • Deal detail page + reusable module components + centralized deals dataset.
    • Legal pages (Privacy/Terms) added/updated.
  • Operational impact: a more maintainable foundation for offer updates, with centralized content and a more modular UI.

Note: conversion/lead metrics (e.g., CTR, submits) live in internal tools (HubSpot/analytics). Redacted evidence can be organized upon request.

What I’d do differently

  • Add minimal, low-cost tests: start with unit/component tests for the Deals module (card rendering, display rules, required fields).
  • Introduce basic CI: run type-check/build/test on PRs to reduce regressions.
  • Content strategy: move the deals dataset to a more manageable source (CMS or spreadsheet → build step) as the number of universities grows.