Senior Python Software Engineer (Product)
Remote | Eastern Europe | Full-time
Core collaboration hours: Approximately 11:00–18:00 CET
About the Client
Our client is an AI-first product company building an intelligent agent platform that automates complex business workflows using modern AI technologies.
The product has been actively developed for nearly two years and is already beyond the MVP stage. While the platform continues to evolve rapidly, the engineering team has established mature development practices, structured documentation, and a strong culture of technical ownership.
The company values engineering depth, autonomy, and thoughtful technical decision-making over simply delivering code.
About the Role
Our client is looking for an experienced Senior Python Software Engineer to design, build, and evolve the backend infrastructure powering their AI platform.
Although the product is AI-first, this is fundamentally a software engineering role rather than a data engineering or AI engineering position. Strong backend fundamentals, distributed systems experience, system design skills, and experience solving complex production engineering problems are significantly more important than prior exposure to LLM frameworks.
The team is looking for an engineer who can go beyond implementing predefined tasks: someone who can reason about architecture, identify failure modes and bottlenecks, evaluate technical trade-offs, and take ownership of backend systems from design through production.
What You'll Do
Design, build, and evolve scalable Python backend services and microservices.
Own backend components end-to-end, from system design and technical decisions through implementation, testing, deployment, and production support.
Design asynchronous and distributed workflows and real-time communication components.
Work with messaging systems, event-driven processing, and distributed application patterns.
Design systems with scalability, reliability, consistency, and failure handling in mind.
Investigate and solve production performance and database bottlenecks.
Make architectural decisions and evaluate trade-offs between different technical approaches.
Collaborate closely with Product, QA, and Engineering throughout the SDLC.
Write clean, maintainable, well-tested production code.
Contribute to architecture reviews, code reviews, documentation, and engineering best practices.
What We're Looking For
Required
5+ years of commercial Python software development experience, primarily focused on backend systems.
Strong object-oriented programming and core software engineering fundamentals.
Proven experience designing and building production backend applications and services.
Strong hands-on experience with system design and backend architecture.
Experience designing and developing microservices and distributed systems.
Practical experience with asynchronous and/or event-driven processing.
Experience with Django, FastAPI, or comparable Python backend frameworks.
Experience with RabbitMQ, Kafka, or similar messaging systems.
Strong understanding of distributed-system concerns such as reliability, consistency, retries, idempotency, and failure handling.
Experience solving production scalability and performance problems, including identifying system bottlenecks and reasoning about horizontal scaling.
Strong relational database fundamentals and experience investigating query performance, transactions, concurrency, or database bottlenecks.
Ability to reason clearly about architectural trade-offs, failure modes, scalability, and reliability.
Experience taking meaningful technical ownership of systems, services, or substantial backend functionality.
Experience with Docker and Kubernetes.
Strong understanding of the complete Software Development Lifecycle (SDLC).
Solid Git workflow and version control experience.
Experience working in agile, cross-functional product teams.
Good written and spoken English.
Nice to Have
Experience building backend systems or substantial services from scratch.
Tech Lead, Staff Engineer, Architect, Technical Owner, or equivalent technical scope while remaining hands-on.
Experience working in startups, scale-ups, or smaller product teams with broad engineering ownership.
Experience building AI-powered products.
Familiarity with LLMs, RAG, LangChain, LangGraph, CrewAI, Hugging Face, OpenAI APIs, or similar technologies.
Experience with gRPC, WebSockets, or other real-time communication technologies.
Experience with AWS, GCP, or Azure.
Experience with PostgreSQL and/or NoSQL databases.
Familiarity with vector databases.
Infrastructure as Code such as Terraform or CloudFormation.
Strong automated testing practices.
Bash scripting.
What Makes This Role Different
This role is designed for engineers who enjoy solving complex backend problems and owning technical decisions, rather than simply implementing assigned features.
You'll work on systems where questions around distributed workflows, consistency, scalability, database performance, reliability, and failure handling are part of everyday engineering.
The team expects senior engineers to be able to structure ambiguous technical problems, explore different approaches, explain trade-offs, and carry solutions through to production.
The company combines the pace of an evolving product with mature engineering practices, structured documentation, and a collaborative development environment.
Working Environment
Fully remote.
Preference for candidates based in Eastern Europe.
Core collaboration hours approximately 11:00–18:00 CET.
International distributed team.
Product-focused engineering environment with high technical ownership.
Hiring Process
Pre-screen interview with the external recruitment partner — approximately 30 minutes.
HR interview — approximately 30 minutes.
Technical interview with the Engineering Lead — approximately 90 minutes.
Live coding session — approximately 2 hours.
Offer.
Skills
- Agile
- AI
- API
- AWS
- Azure
- Bash
- CloudFormation
- CrewAI
- Data Engineering
- Distributed Systems
- Django
- Docker
- Event Driven Architecture
- FastAPI
- GCP
- Git
- gRPC
- Hugging Face
- Infrastructure as Code
- Kafka
- Kubernetes
- LangChain
- LangGraph
- LLM
- Microservices
- NoSQL
- OOP
- OpenAI
- PostgreSQL
- Python
- RabbitMQ
- SDLC
- Terraform
- Test Automation
- Vector Databases
- Version Control
- Websockets
As published by ashby · 2 questions
Name, Email, Resume, Location
- Phone number optional
- Please provide a link to your LinkedIn profile