Senior Software Engineer (Python, Rust)

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.

Please send your resume in English only.

The type of contract is a full-time legal agreement in Bulgaria, Serbia, and Turkey, not a B2B contract.

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.

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

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)

Constructor fosters equal opportunity for people of all backgrounds and identities. We are led by a gender-balanced board committed to building a diverse and inclusive organisation where everyone can become their best self. We do not discriminate based on age, disability, gender identity, sexual orientation, ethnicity, race, religion or belief, parental and family status, or other protected characteristics. We welcome applications from women, men and non-binary candidates of all ethnicities and socio-economic backgrounds. We encourage people belonging to underrepresented groups to apply.

What this application asks

greenhouse

First Name, Last Name, Email, Phone, Resume/CV, Cover Letter

  • Where are you currently based? (City, Country)
  • Are you legally authorized to work in the country where this position is based? choose one
  • Do you require visa sponsorship now or in the future to work in this country? choose one
  • What is your level of English? choose one
  • What are your salary expectations in EUR (gross per month)? choose one
  • Please provide a link to your LinkedIn profile
  • How did you hear about this opportunity? Please select one option. choose one
  • If you were referred by an employee or heard about us via an event (e.g. career fair, conference), please specify the source (name of the person or event) optional

See also

要針對這個職缺調整履歷嗎?

目前無法檢查您與這個職缺的符合程度;請先將履歷加入個人檔案,下次即可查看。

A new version of freehire is available