HomeWorksAboutContact
Software / AI ToolLive

DevDNA.

Drop in a GitHub username. Get a complete read of the engineer behind it.

$ devdna analyze <username>

MY ROLE

Full Stack Developer

TYPE

Developer Tool (Shipped)

STACK

Next.js · TypeScript · Claude API · GitHub API · Upstash Redis

STATUS

Live

DevDNA hero banner
Overview

A profile full of green squares tells you nothing about the engineer behind them.

GitHub profiles are aesthetic. Customized READMEs, pinned repos, contribution graphs — they look impressive. But none of it tells you how someone actually writes code, when they work, or whether their commit habits suggest a disciplined engineer or someone who ships everything at 2am before a deadline.

I — The Aesthetic Problem

Developers spend hours making their profile look good. Badges, shields, animated banners. It looks great. It says nothing about how they actually code.

II — The Information Gap

Commit cadence, language trajectory, coding time patterns, message quality — the signal is all there in the data. Nobody is reading it.

III — The Recruiter Problem

A hiring manager opening a GitHub profile sees a grid of squares and a list of repo names. There’s no layer that translates raw activity into readable signal.

I ran it on my own GitHub first. Here’s what it found:

devdna — bash

$ devdna analyze CoronaZoro

> Fetching repos... done

> Running 3 parallel analyses... done

persona  → "The Midnight Architect"

commits  → 81 analyzed · grade B+

pattern  → late night · solo · JavaScript

“You’re a disciplined builder. You also need to go outside.”

3

independent AI analyses run in parallel — fingerprint, commit score, health audit.

Solution

GitHub shows you the commits. DevDNA shows you the developer.

Drop in any GitHub username and DevDNA runs it through a four-stage pipeline. Fetching your activity, transforming raw data into readable signals, running three parallel AI analyses, and serving everything cached and fast. No setup. No configuration. Just a username.

01FETCH

Data Ingestion

Top-15 repos by pushed_at, commit history, language breakdown. Under 20 API calls.

02TRANSFORM

Signal Extraction

Raw commits become time buckets, cadence scores, message quality grades, and language vectors.

03ANALYZE

Parallel AI Calls

Three independent Claude calls run simultaneously — Fingerprint, Commit Score, Health Audit.

04SERVE

Cached Delivery

Every result cached in Upstash Redis at the feature level. 24h TTL. Mode-aware.

01

Engineering Fingerprint

Archetypal persona + 3 sharp, specific insights grounded in your actual data.

02

Commit Story

Last 50 commits scored, graded, broken down. Message quality is a signal.

03

Stack Trajectory

Where your languages are trending. Predictive without any ML model.

Technical

Built to survive real traffic without burning through API credits.

Every architectural decision was made with two constraints in mind: GitHub’s rate limits and Claude API costs. The pipeline runs four stages — data ingestion, transformation, AI analysis, and cached delivery.

DevDNA system architecture diagram
< 20API calls

I — Top-15 Repo Cap

GitHub’s unauthenticated API allows 60 req/hr. Sorting by pushed_at and capping at 15 repos keeps every full analysis under 20 calls enough headroom for concurrent users without needing auth.

~60%faster

II — Parallel Claude Calls

Fingerprint, Commit Score, and Health Audit are independent. Running them in parallel instead of sequentially cuts total AI response time by approximately 60%. Each uses a deterministic system prompt engineered to return structured output.

cache keys

III — Mode-Aware Cache

Every response is cached at feature level in Upstash Redis with a 24h TTL. NORMAL and ROAST modes cache separately, switching modes on the second view is instant. Caching the whole page would invalidate clean data on a mode toggle.

0ML models

IV — Stack Trajectory Without ML

Repos split into three time buckets. Language share calculated per bucket. Acceleration vector extrapolated forward six months. Directionally accurate with no training data, no model, no cold start.

Features

What DevDNA actually tells you.

01Dashboard

Everything about your GitHub. At a glance.

From contribution heatmap to language breakdown, commit velocity to coding time patterns, DevDNA surfaces the full picture of how you work the moment you land on the page.

02Roast / Normal

Same data. Completely different read.

Normal mode gives you a professional analysis. Roast mode gives you the version your brutally honest senior engineer would write. Both are cached separately so switching is instant on the second view.

03Repo Summaries

Lazy-loaded. Only analyzed when you need it.

Every repository can be expanded for an AI-generated summary. Claude only analyzes a repo when you click it, keeping the initial page fast and API costs proportional to actual usage.

04Engineering Fingerprint

An archetypal read of how you actually engineer.

DevDNA reads your commit patterns, language trajectory, and coding habits. Then distills it into a persona label and three sharp, specific insights. No generic output. Everything grounded in your actual data.

Engineering Fingerprint
Reflection

What this project taught me.

01

Caching is system design, not an afterthought.

Getting the cache architecture wrong has real consequences such as burned API credits, stale data, or a mode toggle that invalidates perfectly good GitHub data. Thinking about what to cache, at what level, and for how long forced me to think about the system holistically before writing a single line.

02

Parallel API calls are worth the complexity.

Running three Claude calls sequentially felt simpler at first. The 60% speed difference changed my mind. Thinking about what can run independently versus what depends on prior output is now a habit I bring to every API-heavy project.

03

Prompt engineering is an output contract.

Generic prompts produce generic output. The breakthrough was treating each Claude call as a structured contract — specifying exact output format, anti-patterns to avoid, and grounding instructions that force the model to work from the data rather than fill gaps with assumptions.

04

Building for yourself is the best user research.

Running DevDNA on my own GitHub first wasn't just a test. It told me immediately what felt useful and what felt hollow. The roast mode came from that session. The best product decisions came from being the user.

DevDNA.

© 2025 Randy Dawn Tai