- Live
- AI/ML
- Web
- Solo
- Jul 2026 - present
SemarLanguage: AI-scored IELTS pre-tests
A paid language pre-test platform where Claude scores Writing and Whisper transcribes Speaking, checked against real IELTS results.

How it works
- 01Listening/Reading: rule-based adaptive scoring, zero AI cost
- 02Writing: Claude scores 4 IELTS criteria against anchor essays
- 03Speaking: Whisper transcript, fluency capped in code from speech rate and pauses
- 04Calibration and build-failing tests guard every release
Writing-scorer bias
Mean bias on 46 band-scored reference essays; 82% within half a band (band 4-5.5).
Answer keys in one position
Down from 58.8% after tracing six root causes of inflated scores.
Unit tests in CI
Plus 489 scoring-engine tests and 47 Playwright e2e files.
Median TTFB
Down from 1-1.7 s by co-locating functions with the database.
Writing scorer calibration
Essay tokens flow into the scorer; the needle settles at the bias measured against band-scored essays.
The problem
Test takers need a realistic estimate of their IELTS band before paying for the real exam. Human scoring for every pre-test is too slow and costly, and a model that inflates scores is worse than none.
My part
Sole engineer from concept to paid service: product, scoring engine, payments, LMS, CI, and every release. An external developer joined in Oct 2026; I reviewed and merged all 60 pull requests.
What did not work
- Early scores ran high against real IELTS certificates. I traced six root causes (fixed five): answer keys clustered in one position (58.8% → 29.4%) and a Listening/Reading band ceiling of 8.0 instead of 6.5.
Limitations
- Calibration covers 46 reference essays, mostly band 4-5.5; higher bands have fewer anchors.
- An AI tutor scored 29/30 on a fixed test set but stays switched off until a human tutor signs it off.
- Results are a readiness estimate, not an official IELTS score.