We build reading comprehension tools for students aged 10 to 16 — primarily in schools serving students who speak English as a second language. Our NLP engine reads a student's response to a comprehension question, identifies what they've understood and where the gaps are, and gives specific, encouraging feedback rather than just a score. It's a hard problem. Natural language is variable, especially from non-native speakers. But when it works — when a student who's been stuck on inference questions for weeks writes a response that shows they finally got it — the difficulty feels worth it. We're looking for a junior NLP engineer to join a team of five. You'll be mentored by a senior NLP engineer with eight years of experience who genuinely enjoys teaching. You'll pair-program at least twice a week. You'll work on real (anonymised) student data. You'll ship things that real teachers and real students use. If you care about educational equity and are at the start of your NLP career, this is a good place to grow.
Responsibilities
Build and evaluate NLP components for comprehension response analysis under close senior guidance
Clean and annotate text datasets for model training with careful quality tracking and inter-annotator agreement checks
Write unit tests for all NLP processing functions
Document component behaviour and known limitations clearly enough for the product team to communicate them to teachers
Participate in weekly research reading sessions and share key takeaways with the team
Requirements
Solid Python — readable, reasonably structured code you can explain and defend
Familiarity with text processing fundamentals: tokenisation, POS tagging, and semantic similarity concepts
Any hands-on exposure to Hugging Face Transformers or spaCy, even in a course or personal project
Basic understanding of how transformer-based models generate and compare text
NumPy for numerical operations within NLP pipelines
Genuine interest in education, language learning, or accessibility — this context shapes every decision we make
A piece of work — project, research paper, or bootcamp capstone — showing you can think about language computationally
Benefits
Mission-driven work with direct, measurable student impact
Full remote with optional monthly team meetups
$60,000 – $78,000 base salary
Dedicated senior mentor — pair programming twice weekly is in both your calendars, not optional
$800 annual learning budget for conferences, books, or online courses