Description
NetDocuments is committed to providing an excellent candidate experience and will never ask you to engage in recruitment activity without phone, video, and in-person meetings and communications from emails using the @netdocuments.com domain.
At NetDocuments, we're shaping the future of legal work. We believe legal professionals should spend less time searching for information and managing documents, and more time solving complex problems, serving clients, and delivering meaningful outcomes.
Every document that enters NetDocuments passes through our content extraction and transformation platform, which turns scanned images, PDFs, and Office files into searchable text, structured data, and the foundation for AI features like semantic search.
We're looking for a Staff Software Engineer to set the technical direction for this platform and, over time, lead the team that builds it. You'll design the distributed systems that process millions of documents an hour, bring AI-powered extraction into production, and lead an engineering practice where AI agents are part of how we design, build, and test software.
Technical Leadership & Architecture
- Set technical direction for our document content extraction and transformation platform, establishing patterns for scalable, secure, and cost-efficient systems on AWS.
- Design and own distributed, event-driven pipelines that process millions of documents an hour, including how they scale, how they fail, and how they recover.
- Lead architectural decisions involving OCR technologies such as Tesseract and Apryse, and AI models for document understanding.
- Drive improvements in throughput, reliability, and performance, while controlling cost per document without affecting customer experience.
- Make critical technical decisions that balance performance, security, cost, and maintainability, with reasoning that stands up over time.
Build & Operate
- Build production services in C#/.NET using AWS (such as ECS, Lambda, S3, and SQS) and event streaming with Kafka.
- Design resilient processing: retries, dead-letter handling, idempotency, backpressure, and graceful recovery.
- Design and implement scalable APIs (REST, GraphQL) that power our product and enable third-party integrations.
- Implement observability through logging, metrics, tracing, and telemetry (Datadog, CloudWatch) to find and fix issues before customers notice.
- Ensure security, compliance, and confidentiality across all implementations.
AI in the Product
- Build the content pipelines that power semantic search: chunking, embeddings, vector indexing, and evaluation, at the scale of millions of documents.
- Measure and improve AI output quality with evaluation sets and metrics, while managing cost and latency in production.
AI in How We Build
- Lead the team's AI-assisted development practice, using AI agents such as Claude Code across specification, design, testing, and implementation.
- Set the standards for reviewing and approving AI-generated work so that speed never comes at the cost of quality.
Ownership & Collaboration
- Take full ownership of initiatives from concept through production and ongoing evolution.
- Proactively identify and address technical debt before it affects the team or customers.
- Partner with product management to turn requirements into technical solutions, and with Platform Services, Operations, and other teams on shared infrastructure.
- Mentor engineers at every level through design reviews, code reviews, and documentation.
- Build agreement on technical approaches, while having the authority to make the final call when needed.
- Research and prove out new technologies through POCs that align with product strategy.
Requirements
- Bachelor's degree or higher in Computer Science, Information Systems, or a related field, or equivalent experience.
- 8+ years of professional software engineering experience delivering production systems at scale on cloud platforms.
- Proven experience designing and owning distributed, event-driven systems that process high volumes in production.
- Experience leading technical direction for a team: making architecture decisions, setting standards, and growing other engineers.
- U.S. citizenship is required for this role.
- Expert proficiency in C#/.NET.
- Expert proficiency designing event-driven, microservice-based systems, including failure handling, scaling, and recovery.
- Strong experience with Kafka or similar event streaming and messaging platforms.
- Strong experience developing on cloud platforms, preferably AWS.
- Strong experience with observability (logging, metrics, tracing, telemetry), preferably with Datadog.
- Deep hands-on experience with OCR or document extraction technologies, such as Tesseract, Apryse, ABBYY, AWS Textract, or Azure Document Intelligence.
- Daily use of AI coding tools (for example, Claude Code or GitHub Copilot) across the development lifecycle, with sound judgment about reviewing and validating AI-generated code.
Compensation The compensation range for this position is: $170,000 - $190,000