Back End Developer
Indexed description
Position Summary
We are looking for a Senior Backend Developer who is strong in both Java and Python to design, build, and maintain scalable backend services for modern web, mobile, operational, and integration-driven platforms. The ideal candidate should have hands-on experience with Java/Spring Boot for production backend systems, and practical Python experience for APIs, services, automation, integrations, data workflows, and backend tooling.
This role is suited for a hands-on engineer who can take ownership of APIs, database design, service architecture, integrations, performance, security, testing, documentation, and production support. The person should be comfortable working across existing systems as well as building new backend components in the right technology for the problem.
Key Responsibilities
- Design, develop, and maintain backend services using Java, Spring Boot, and Python.
- Build secure, scalable, and well-documented REST APIs for web, mobile, admin, operational, and third-party integration use cases.
- Develop Python-based backend services, automation scripts, integration adapters, reporting jobs, internal tools, and data-processing workflows where required.
- Design and maintain PostgreSQL database schemas, migrations, indexes, constraints, optimized queries, and data integrity rules.
- Implement reliable service-layer logic, validation, error handling, pagination, filtering, idempotency, transaction management, and background processing.
- Work with event-driven patterns using Kafka, message queues, or similar platforms for asynchronous workflows, notifications, telemetry, analytics, and integration events.
- Use Redis or equivalent caching/session layers to improve performance, reduce database load, and support fast backend workflows.
- Integrate with external systems such as payment gateways, notification providers, reporting tools, CRM/ERP systems, cloud services, and other third-party platforms as required.
- Implement authentication, authorization, RBAC, audit logging, input validation, secure API patterns, and safe handling of sensitive data.
- Write clean, maintainable, testable code and participate in code reviews across Java and Python codebases.
- Create and maintain unit tests, integration tests, API tests, technical documentation, and developer handover notes.
- Support production deployments, monitoring, logging, troubleshooting, incident investigation, performance optimization, and operational reliability.
- Collaborate with frontend, mobile, DevOps, QA, product, and business teams to translate requirements into reliable backend solutions.
- Mentor junior developers where required and help improve backend engineering standards across the team.
Required Skills and Experience
- 4 to 6 years of backend development experience, with strong hands-on experience in Java/Spring Boot and practical experience with Python backend development, automation, integrations, scripting, or data workflows. Stronger candidates with 6+ years of senior-level backend experience may also be considered.
- Strong practical Python experience, preferably with FastAPI, Django, Flask, or similar backend/API frameworks.
- Strong understanding of REST API design, API versioning, authentication, authorization, error contracts, pagination, documentation, and OpenAPI/Swagger or similar tools.
- Strong PostgreSQL experience, including schema design, joins, indexes, transactions, query optimization, migrations, constraints, and data integrity practices.
- Practical experience with Kafka, message queues, or event-driven systems, including producers, consumers, retries, duplicate handling, idempotency, and failure recovery.
- Good understanding of distributed systems concepts such as eventual consistency, retries, background processing, service boundaries, and failure-safe workflows.
- Experience with Redis or similar caching/session technologies.
- Experience with Docker, CI/CD pipelines, environment configuration, secrets management, and cloud-ready application deployment.
- Good understanding of security best practices, including JWT/OAuth2 concepts, RBAC, OWASP API risks, audit trails, and secure handling of sensitive data.
- Strong debugging and troubleshooting skills across application logs, APIs, databases, queues, background workers, and production environments.
- Ability to write clean code, structure services properly, document decisions, review code, and communicate technical trade-offs clearly.
- Comfortable working in both existing systems and new development, without overengineering or rewriting unnecessarily.
Preferred Skills
- Experience with AWS, Azure, GCP, Kubernetes, ECS/EKS, RDS, managed Kafka, ElastiCache, S3, CloudWatch, or similar cloud services.
- Experience with Python background workers or task queues such as Celery, RQ, Dramatiq, APScheduler, or similar tools.
- Experience with microservices, modular monoliths, domain-driven design, service-oriented architecture, or backend platform modernization.
- Experience with payment webhooks, order workflows, workflow engines, analytics pipelines, reporting systems, data ingestion, or operational dashboards.
- Experience with observability tools such as Prometheus, Grafana, OpenTelemetry, ELK/OpenSearch, Datadog, New Relic, or similar tools.
- Experience with Flyway, Liquibase, Alembic, Testcontainers, Pytest, Kafka Streams, Debezium, outbox pattern, or CDC patterns.
- Experience integrating AI/ML APIs, OCR, document processing, workflow automation, or internal productivity tools using Python is a plus.
- Ability to mentor developers and support engineering standards across multiple backend technologies.
Candidate Profile
- Hands-on backend engineer with strong ownership and accountability.
- Comfortable using Java/Spring Boot for robust production services and Python for fast, reliable backend services, integrations, automations, and tooling.
- Able to think beyond simple CRUD APIs and design systems for reliability, security, scalability, and maintainability.
- Strong problem-solver who can debug real production issues and communicate clearly with technical and non-technical teams.
- Organized, documentation-oriented, and comfortable working in a fast-moving product environment.
- Practical and delivery-focused: understands when to build, when to refactor, when to stabilize, and when to keep the solution simple.
How to Apply
Interested candidates may share their CV, portfolio/GitHub profile if available, notice period, expected compensation, and a brief summary of relevant Java, Spring Boot, and Python backend experience at [email protected].
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search