About the role
<p>At PandaDoc, we re building the future of documents. Our platform helps teams create, send, track, and e-sign proposals, contracts, and other documents, making our clients lives more efficient and collaborative. We re a fast-growing company with a global reach, used by people around the world, from small businesses to large enterprises. In 2024, we reached a major milestone: over $100 million in annual recurring revenue. We re constantly innovating and releasing new features to meet the evolving needs of our customers, all while focusing on stability, quality, and performance.<br>Our Engineering team is a diverse and talented group of around 250 individuals, passionate about building a world-class product. While this is a fully remote position, we d love for you to visit our vibrant offices in Warsaw, Lisbon, or Kyiv whenever you d like to connect with colleagues in person.<br><br></p> <h3><strong>The Team</strong></h3> <p>We re looking for a <strong>Senior Python Engineer to join our Content engineering team</strong>, responsible for one of the most complex and impactful areas of the PandaDoc platform.</p> <p>We own the content model, the editor backend, data persistence, and the real-time collaboration infrastructure that allows multiple users to edit a document simultaneously with consistency and reliability. Our backend processes a continuous stream of events from the frontend, translating user interactions into consistent, durable state across a distributed fleet of services and a high volume of concurrent sessions.<br>We ship product features and maintain the systems that underpin them. Product mindset and operational excellence are not in tension here: we expect engineers who care equally about moving the product forward for customers and about the long-term health and reliability of what they build.<br><br></p> <h3><strong>What you ll work on</strong></h3> <ul> <li>Design and evolve the backend systems that power real-time collaborative document editing for tens of thousands of concurrent users</li> <li>Own the content model and data persistence layer: schema design, migrations, compatibility, and long-term maintainability as the product grows</li> <li>Build and maintain event-driven pipelines (Kafka, NATS) that process high volumes of frontend interactions and keep document state consistent across services</li> <li>Contribute to the reliability, observability, and operational excellence of a large fleet of Python microservices</li> <li>Ship product features end-to-end, from backend architecture to production monitoring, and care about how they behave after they ship</li> <li>Contribute to our growing investment in AI-powered capabilities, including agentic document workflows<br><br></li> </ul> <h3><strong>Our stack</strong></h3> <ul> <li><strong>Core language:</strong> Python</li> <li><strong>Relational + caching:</strong> PostgreSQL, Redis</li> <li><strong>Messaging & events:</strong> Kafka, NATS</li> <li><strong>Async programming:</strong> AsyncIO throughout</li> <li><strong>Infrastructure:</strong> Docker, Kubernetes, AWS</li> <li><strong>Observability:</strong> Grafana stack (Loki, Tempo, Mimir)<br><br></li> </ul> <h3><strong>About you</strong></h3> <p><em>Technical</em></p> <ul> <li>5+ years of Python development experience in production environments</li> <li>Strong experience with relational databases: SQL, schema design, migrations, query optimization</li> <li>Solid hands-on experience with message queues and event-driven architectures (Kafka, NATS, RabbitMQ or similar)</li> <li>Deep understanding of AsyncIO and concurrent systems</li> <li>Experience building and operating microservice architectures at scale</li> <li>Comfortable reasoning about distributed systems: consistency, ordering, failure modes</li> <li>Understanding of the full development lifecycle, from requirements to deployment to production monitoring</li> <li>Nice to have: experience building or integrating AI agents, LLM-powered workflows, or agentic systems</li> </ul> <p><em>Mindset & soft skills</em></p> <ul> <li><strong>AI-first:</strong> You actively use AI tools in your daily workflow and apply critical thinking to evaluate their output. You see AI as a force multiplier, not a shortcut.</li> <li><strong>High ownership:</strong> You understand the full scope of what you re working on, proactively unblock yourself, and know when to escalate. You don t wait to be told there s a problem.</li> <li><strong>Product-minded and customer-oriented:</strong> You care about the end user. You think about the impact of what you re building, not just the correctness of the implementation.</li> <li><strong>Operationally excellent:</strong> You care about what you ship after it ships. Reliability, observability, and maintainability are not afterthoughts.</li> <li><strong>Communicative:</strong> You write and speak clearly. You can explain a technical decision to a non-technical stakeholder and a product tradeoff to an engineer.</li> <li><strong>Collaborative but autonomous:</strong> You thrive as part of a team while being fully capable of driving work independently. You ask for help when you need it, and you know when that is.</li> </ul> <p><em>Language</em></p> <ul> <li>Communicates effectively in English, both orally and in writing<br><br></li> </ul> <h3><strong>What We Offer</strong></h3> <ul> <li><strong>Global & Flexible Work: </strong>We’re a global, remote-first company, but we welcome you to visit our vibrant offices in Warsaw, Lisbon, or Kyiv to connect with colleagues whenever it suits you.</li> <li><strong>Ownership & Growth:</strong> Work on a stable yet growing SaaS product, offering an agile environment, significant ownership, and a clear path for professional development within the Platform Engineering domain.</li> <li><strong>Culture & Balance: </strong>Enjoy an honest, open culture that values constructive feedback and promotes a strong work-life balance within a supportive, dist
