Our mission

Constructor’s mission is to enable all educational organisations to provide high-quality digital education to 10x people with 10x efficiency. With strong expertise in machine intelligence and data science, Constructor’s all-in-one platform for education and research addresses today’s pressing educational challenges: access inequality, tech clutter, and low engagement of students.

Duties and Responsibilities:

  • Design and implement backend services in Rust within a microservices architecture.
  • Maintain and evolve existing Python services (FastAPI) where it's the right tool for the job.
  • Write maintainable, testable, and performant code; participate in code reviews and raise the engineering bar across the team.
  • Work with QA and DevOps to improve reliability, observability, and performance of our services.
  • Contribute to architectural decisions: choosing the right language for each problem, inter-service communication patterns, and data modeling.

What We Offer

  • 💻 Choice of work equipment (e.g., laptop, monitor, etc.)
  • 🇬🇧 English classes (iTalki – $130 monthly)
  • ⏰ Flexible schedule (we usually work between 09:00/10:00 and 18:00/19:00 CET or EET)
  • 👶 Newborn bonus (€500 per child)
  • 🧠 Patent remuneration
  • 🌴 Paid leave
  • 🧑‍💻 Remote work in locations without our offices
  • Hybrid work in locations with offices (2 days in-office, 3 days remote)

Qualifications and Experience:

  • 5+ years of professional backend development experience.
  • Solid production experience with Rust (minimum of 3 years).
  • Strong Python: FastAPI or similar modern frameworks, asynchronous programming (asyncio), and type-driven development (mypy, pydantic).
  • Deep understanding of microservices and communication patterns: sync/async, event-driven, message brokers (Kafka / RabbitMQ / NATS), gRPC/REST.
  • Working-level PostgreSQL: indexes, transactions, isolation levels, locking, query plans.
  • SOLID, dependency injection, and clean architecture — applied in practice, not just in theory.
  • Working knowledge of k8s, containers, networking, and CI/CD.
  • English B2 or higher.

Nice to Have but not Obligatory:

  • Experience migrating Python services to Rust under real load (with measurements and clear motivation).
  • Exposure to vector databases (e.g., Qdrant).
  • Experience integrating with LLM APIs (OpenAI, Anthropic).
  • Familiarity with LangChain / LangGraph and RAG
Constructor TECH

Constructor TECH