We build legal drafting technology for moments that matter — when the stakes are high, the documents are complex, and speed can’t come at the cost of control.
Our platform helps legal teams move faster through contracts using automation, collaboration, and AI — without taking judgment away from the lawyers who own the risk. We believe technology should amplify expertise, not replace it.
Avvoka is trusted by leading law firms, banks, and global enterprises, and we’ve grown through product strength and word of mouth alone. With headcount and revenue increasing by over 70% year on year, we’re now scaling from a product-led success into a globally recognised legal-tech brand.
We’re at an inflection point: evolving how the world’s most sophisticated legal teams work — and building a company where thoughtful people can do the best work of their careers.
This is a rare opportunity to build the Avvoka brand from the ground up — not inherit it. You’ll be part of a small, ambitious team with the freedom to create, experiment and raise the bar for legal tech.
You’ll work alongside smart, supportive people who move fast and care deeply about quality. If you’re motivated by ownership, pace and visible impact, you’ll feel at home here.
You’re a technically strong JavaScript engineer who enjoys tackling hard engineering problems. In this role, you’ll be creating M365 Add-ins optimising plugin performance, improving real-time collaboration, and shipping low-latency experiences that feel native inside Office apps. You’ll join a cross-functional team (product, design, AI, backend) to extend Avvoka into Microsoft 365 by building a high-quality Office Add-ins experience that complements our core web platform. Strong JavaScript/TypeScript skill is essential, but any experience creating and developing Microsoft 365 Addi-ins is a bonus!
Engagement Type: Independent Contractor
Department: Editor
Primary Point of Contact: Editor Manager
Location: Prague 6
Estimated Commitment: Capped at 160 billable hours per month
Compensation: Competitive, based on experience
Start Date: Flexible — we’d love you to join soon
Develop and Enhance Microsoft 365 Plugins
Design, develop, and maintain high-quality Office Add-ins for Word, Outlook, and other M365 applications using JavaScript and TypeScript
Implement secure and scalable integrations with Microsoft Graph API and other Office JS SDKs
Ensure consistent user experiences between the plugin and the core web platform
Integrate AI-Powered Features
Work closely with AI engineers to integrate intelligent suggestions, content generation, and automation features directly into the Microsoft plugin environment
Implement API connections to internal and third-party AI services (e.g., OpenAI, Azure Cognitive Services)
Optimize performance for real-time, context-aware AI interactions within Office documents
Write and Maintain Robust, Scalable Code
Deliver clean, maintainable, and testable TypeScript/JavaScript code aligned with modern standards
Build for reliability, performance, and security within enterprise-grade environments
Continuously improve code quality through refactoring, testing, and automation
Collaborate and Communicate
Partner with product managers, designers, and AI engineers to define and deliver impactful plugin features
Participate in technical discussions and contribute to architectural decisions for the plugin ecosystem
Provide clear documentation, technical insights, and code reviews to ensure consistent engineering standards
Drive Innovation and Technical Excellence
Stay current with advancements in Microsoft 365 development, AI APIs, and JavaScript frameworks
Champion best practices in testing, CI/CD, and deployment for Office Add-ins
Experiment with emerging AI/ML tools and evaluate their potential for enhancing user experience
To ensure your application has the best opportunity of success, your CV could cover the below measures of success with quantifiable results (e.g. percentages, growth, reductions, impact)
Plugin Performance: Delivered high-performing, low-latency Microsoft 365 add-ins (Word, Excel, Outlook) that run seamlessly across desktop and web environments.
AI Integration Impact: Successfully integrated AI features (e.g. Copilot, OpenAI, or Azure Cognitive Services) that improved user workflows or automation outcomes.
Code Quality & Maintainability: Produced clean, well-documented, and testable JavaScript/TypeScript code that meets scalability and security standards.
Collaboration & Delivery: Partnered effectively with product, design, and backend teams to deliver major feature releases on time and to spec.
User Experience Outcomes: Enhanced the intuitiveness and responsiveness of plugin UIs, driving measurable improvements in user adoption or engagement.
The ideal candidate would have:
Strong proficiency in JavaScript (typically 5+ years).
Experience building production web apps: RESTful APIs, OAuth2 flows and secure authentication.
Proven ability to debug and optimise complex UI performance issues.
Comfortable working with product and design teams and owning end-to-end delivery.
The desirable candidate would have:
Hands-on experience developing Office Add-ins using Office.js and integrating with Microsoft Graph.
Familiarity with Azure, OpenAI, or Cognitive Services for AI integrations.
Background in B2B SaaS or document automation platforms.
Exposure to testing frameworks (Jest, Playwright) and CI/CD for plugin deployment.
Understanding of accessibility, UX principles and UI performance optimisation.
In addition to the technical and professional skills, there are certain core attributes we value across all roles:
Adaptability in dynamically evolving settings
A proactive, solution-focused mindset with ownership
A collaborative spirit, supporting and mentoring others
💡 If you’re excited about this role but your experience doesn’t align perfectly with every qualification, we encourage you to apply anyway — you might be just the candidate we’re looking for.
CV Review: Our People team reviews all applications carefully.
Screening Call (15m): A quick virtual chat with our People team to learn more about you and answer any initial questions.
Stage 1 – Assessment Interview (30–45m): A virtual assessment interview with the Hiring Manager focused on your experience and approach.
Stage 2 – Senior Interview (for senior roles): An additional conversation with members of the leadership team.
Meet the Team: Where possible, we’ll invite shortlisted candidates to visit our WeWork Waterloo office to meet the wider team.
We aim to make an offer to the successful candidate within a month of application, but this will vary by role and seniority.
We are an equal opportunity employer that celebrates diversity and inclusion. We welcome applications from individuals of all backgrounds, identities, and experiences - including those from underrepresented groups - and are happy to provide reasonable adjustments for candidates with disabilities during the recruitment process.