No VC. No runway countdown. No growth-at-all-costs pressure. We're a bootstrapped, cash-flow-positive SaaS company that has been growing steadily for six years selling document automation software to law firms and corporate legal teams. We have 1,100 paying customers, a churn rate under 4%, and a team of 19 people, all remote. I'm telling you this because it matters for the kind of role this is. We don't move fast for the sake of it. We don't ship half-finished features. We take on technical debt consciously and pay it down. We've been adding NLP capabilities to our platform for two years — contract clause extraction, obligation detection, defined term parsing — and the person who built most of that is leaving for a research role in January. We need someone to own what she built, understand it properly, and extend it thoughtfully. Not rebuild it. Not modernise it for the sake of modernising it. Understand it, maintain it, and make it better in ways that our customers will actually notice. If that sounds like satisfying work to you, it is.
Responsibilities
Take ownership of the existing NLP pipeline: understand it, document it, and stabilise any open reliability issues
Extend clause extraction coverage to three new contract types planned for Q2 and Q3
Improve model evaluation tooling so we can measure extraction quality consistently across document types
Work with our product team to scope and scope NLP features from customer feedback to technical specification
Maintain and improve the annotation workflow used to label new training data
Requirements
3–5 years of NLP engineering with at least two years working on information extraction or document understanding tasks
Strong Python — readable, maintainable code that someone else can own after you
Hugging Face Transformers for fine-tuning pre-trained models on domain-specific tasks
Experience with named entity recognition, relation extraction, or clause classification in legal or structured document contexts is a genuine advantage
SpaCy for pipeline construction and rule-based extraction layers
SQL for understanding how NLP outputs are stored, queried, and used downstream by our product
Benefits
Genuine ownership of a production NLP system in a stable, profitable company
Full remote — we've been fully distributed since 2019
$90,000 – $108,000 base salary
No on-call. The NLP layer doesn't page at 2am.
25 days annual leave, no questions asked about when you take it