Role overview

Senior Software Developer (Back End)

Requirements and responsibilities

Readable role content extracted into sections for faster review.

Responsibilities

  • Design, develop, and maintain RESTful APIs and backend services using Node.js (Express) and Python (Flask)
  • Build and optimize scalable backend systems leveraging PostgreSQL, Redis, and cloud-native services
  • Implement asynchronous processing pipelines using AWS SQS/SNS and RabbitMQ
  • Write clean, maintainable, and well-tested code, including unit and integration tests
  • Contribute to database schema design and manage migrations (e.g., Alembic)
  • Improve system observability through instrumentation (OpenTelemetry), logging, and monitoring
  • Participate in code reviews and technical design discussions
  • Collaborate with cross-functional teams to implement features supporting asset creation, submission workflows, and reporting
  • Support production systems and participate in on-call rotations
  • Continuously improve system performance, reliability, and maintainability

Minimum Qualifications

  • 3+ years of professional software engineering experience with a focus on backend development
  • Strong proficiency in Python (3.x) and modern development practices
  • Production experience with Node.js and TypeScript
  • Experience designing and building RESTful APIs
  • Experience working with relational databases such as PostgreSQL, including schema design and query optimization
  • Experience with message-based or asynchronous systems (e.g., AWS SQS/SNS, Redis, RabbitMQ)
  • Familiarity with observability practices such as logging, metrics, and tracing
  • Experience working with containerized applications (Docker)
  • Solid understanding of distributed systems fundamentals and microservices architecture
  • Experience using Git in collaborative development workflows

Preferred Qualifications

  • Experience with OpenAPI/Swagger and contract-driven API development
  • Experience with Redis for caching and performance optimization
  • Familiarity with Kubernetes and modern deployment strategies
  • Experience with CI/CD pipelines (e.g., Jenkins, Spinnaker)
  • Familiarity with Python tooling such as Poetry, pytest, Black, Ruff, and MyPy
  • Experience integrating third-party APIs or AI/ML services (e.g., OpenAI APIs)
  • Experience working in B2B SaaS environments
  • Domain knowledge of construction industry software

Responsabilités

  • Concevoir, développer et maintenir des API RESTful et des services backend à l'aide de Node.js (Express) et Python (Flask)
  • Construire et optimiser des systèmes backend évolutifs en tirant parti de PostgreSQL, Redis et des services natifs du cloud
  • Mettre en œuvre des pipelines de traitement asynchrones à l'aide d'AWS SQS/SNS et de RabbitMQ
  • Écrire du code propre, maintenable et bien testé, y compris des tests unitaires et d'intégration
  • Contribuer à la conception du schéma de base de données et gérer les migrations (par exemple, Alembic)
  • Améliorer l’observabilité du système grâce à l’instrumentation (OpenTelemetry), la journalisation et la surveillance
  • Participer aux revues de code et aux discussions sur la conception technique
  • Collaborer avec des équipes interfonctionnelles pour mettre en œuvre des fonctionnalités prenant en charge la création d’actifs, les workflows de soumission et le reporting
  • Assurer le support des systèmes de production et participer aux rotations de permanence
  • Améliorer en permanence les performances, la fiabilité et la maintenabilité du système

Qualifications Minimales

  • Au moins 3 ans d’expérience professionnelle en génie logiciel, avec une spécialisation en développement backend
  • Maîtrise approfondie de Python (3.x) et des pratiques de développement modernes
  • Expérience en production avec Node.js et TypeScript
  • Expérience dans la conception et la création d’API RESTful
  • Expérience de travail avec des bases de données relationnelles telles que PostgreSQL, y compris la conception de schémas et l’optimisation des requêtes
  • Expérience avec des systèmes basés sur les messages ou asynchrones (par exemple, AWS SQS/SNS, Redis, RabbitMQ)
  • Connaissance des pratiques d’observabilité telles que la journalisation, les métriques et le traçage
  • Expérience de travail avec des applications conteneurisées (Docker)
  • Solide compréhension des principes fondamentaux des systèmes distribués et de l’architecture des microservices
  • Expérience de l’utilisation de Git dans des workflows de développement collaboratif

Qualifications Souhaitées

  • Expérience avec OpenAPI/Swagger et le développement d’API basé sur des contrats
  • Expérience avec Redis pour la mise en cache et l’optimisation des performances
  • Connaissance de Kubernetes et des stratégies de déploiement modernes
  • Expérience avec les pipelines CI/CD (par exemple, Jenkins, Spinnaker)
  • Connaissance des outils Python tels que Poetry, pytest, Black, Ruff et MyPy
  • Expérience dans l’intégration d’API tierces ou de services d’IA/ML (par exemple, les API OpenAI)
  • Expérience de travail dans des environnements SaaS B2B
  • Connaissance du domaine des logiciels destinés au secteur de la construction
Similar roles

Keep a backup shortlist.

Browse stack
FocusBackend DevelopmentRole area
Seniority signalSeniorCandidate level
StackAWS, CI/CD, DockerPrimary skills
Location1 accepted countryEligibility

Stack

Use these tags to compare similar remote roles.

Location eligibility

Candidates should apply only when their profile country is listed here.

Your profileCountry not setSign in to check your country against this role.

Hiring flow

WithMira shows the role, then sends candidates to the company application.

1Check role fit, stack, and location eligibility in WithMira.
2Open the company application page from the tracked apply link.
3Save the role or subscribe for similar opportunities before leaving.
Apply on company siteCompany siteOpen link