Lets building something fun!

I spent 5+ years fixing what engineers shipped.
Now I’m shipping it.

Frontend developer in the making, ex-Shopify technical expert and ex-Accenture technology & infrastructure analyst. I’m learning in public by building one real, full-stack product instead of forty tutorials. Everything here is a work log, not a highlight reel.

Currently

Building Xylodesk solo — Rails 8 + GraphQL API, React/Next.js/TypeScript front end.

Background

5+ years technical expert at Shopify and Accenture.

The Approach

One genuinely big product, shipped piece by piece as I learn it; with every decision written down as I build.

01Featured build

all projects →
IN ACTIVE DEVELOPMENT · SOLO BUILD · SCHEMA TO UI

Xylodesk — Transparent HiringReal GrowthOne Platform

Recruiters stitch together tools. Job seekers vanish into black holes. Employees miss growth paths. Xylodesk learned from what the three actually need, and is building an all-in-one platform that works for everyone. Transparent hiring, better candidate experience, and a career path for employees.

The problem

Career progression is fragmented across silos: hiring is disconnected from mobility, job search from upskilling, and transparency disappears the moment you apply.

The hard part

Building a unified platform where employees, HR teams, and job seekers create real value - with privacy and security front and center.

Scope

An integrated platform connecting hiring, career growth, application tracking, personal branding, and community - all in one place.

Rails 8 (API-only)GraphQLMySQLReactNext.jsTypeScriptSolidQueueGemini

02Latest from the log

full log →

week 29

Heuristic matching first, AI second

Shipped skills and experience overlap scoring before touching Gemini. The AI tier now layers on top and falls back to the heuristic when a call fails. A working, explainable baseline beats a clever thing that sometimes returns nothing.


week 22

Made tenant scoping fail loudly instead of quietly

Switched acts_as_tenant to fail-closed. An unscoped query now raises instead of returning an empty set — because an empty set looks like "no results" in the UI and like a passing test in CI.


week 22

Wrote a reviewer instead of writing more code

Spent the day building subagents that review my diffs rather than shipping features. Felt slow. It has since caught authorization gaps and tenant-isolation issues I personally wrote and personally approved.

03What I work in

Building with
  • React / Next.js
  • Ruby / Rails
  • TypeScript
  • MySQL Database
  • HTML / CSS / Tailwindcss
  • Git & GitHub
  • AI - Gemini / Claude
Learning now
  • Ruby / Rails
  • GraphQL schema design
  • Testing & flow verification
  • OOP & Data Driven Development
  • Azure cloud & deployment
Carried over
  • Twilio / TaskRouter / IVRs
  • Splunk & Grafana
  • Bash / PowerShell
  • SQL / MySQL
  • Incident response
  • IaC / Terraform
  • Agile & Scrum