Senior Python Developer
Posted on July 31, 2026
Job Description
Senior Python Developer
Overview
Location: Bengaluru, India
Experience: 7–10 years in software engineering, with at least 5 years primarily in Python
Employment type: Full-time / Contract
Reports to: Engineering Manager / Head of Engineering
Team: Platform / Data Engineering / Product Engineering
About the Role
We are looking for a senior Python engineer who can own systems end to end — from design through production operation. This is a hands-on role. You will spend most of your time writing and reviewing code, and you will also be expected to shape technical direction, raise the engineering standard around you, and mentor less experienced developers.
The work involves building and scaling backend services and data processing pipelines that handle significant volume. You will be trusted with architectural decisions and expected to defend them, and to be pragmatic about trade-offs between speed and durability.
Key Responsibilities
- Design, build and maintain production Python services and APIs, owning them from architecture through to operation.
- Build and optimise data processing pipelines, batch and streaming, with attention to correctness, throughput and cost.
- Take architectural decisions on service boundaries, data models, storage choices and integration patterns, and document the reasoning.
- Diagnose and resolve production issues, including performance profiling, memory and concurrency problems, and database query optimisation.
- Raise engineering quality through code review, automated testing, CI/CD improvement and refactoring of legacy components.
- Mentor mid-level and junior engineers; conduct technical interviews; contribute to hiring standards.
- Work directly with product managers and stakeholders to turn ambiguous requirements into a deliverable technical plan.
- Contribute to observability and reliability practice — logging, metrics, alerting, runbooks and incident response.
- Evaluate and introduce tools, libraries and patterns where they demonstrably improve delivery or reliability.
Required Skills and Experience
- Core engineering
- Python depth. Seven or more years of professional software engineering, with at least five years writing production Python. Fluent with the standard library, type hints, virtual environments and dependency management. Comfortable reasoning about the GIL, asyncio, multiprocessing and where each is appropriate.
- Frameworks. Production experience with at least one of FastAPI, Django or Flask, including authentication, middleware, background tasks and API versioning. FastAPI experience is preferred for new services.
- Databases. Strong SQL and relational modelling, ideally PostgreSQL. Able to read a query plan, design indexes, and reason about transactions, isolation levels and locking. Familiarity with at least one non-relational store such as Redis, MongoDB or a document or time-series database.
- Testing. Disciplined about automated testing — pytest, fixtures, mocking, and a considered view on the balance between unit, integration and end-to-end coverage.
- API design. Practical experience designing and versioning REST APIs; understanding of idempotency, pagination, rate limiting and backward compatibility. Exposure to gRPC or GraphQL is a plus.
- Data and scale
- Pipelines. Experience building data processing pipelines with tools such as Airflow, Dagster, Prefect, Celery, Pandas or PySpark. Comfortable with idempotent, restartable, observable job design.
- Messaging. Working knowledge of at least one message broker or streaming platform — Kafka, Pub/Sub, RabbitMQ, SQS — and the delivery-guarantee trade-offs involved.
- Performance. Demonstrable experience diagnosing and fixing performance problems at scale, with profiling and measurement rather than guesswork.
- Cloud and delivery
- Cloud. Hands-on experience with GCP or Azure — compute, managed databases, object storage, secrets management, IAM. Able to reason about the cost implications of design decisions.
- Containers. Docker in production; working knowledge of Kubernetes for deploying and debugging services.
- CI/CD and IaC. Comfortable with Git-based workflows and pipeline tooling such as GitHub Actions, GitLab CI or Azure DevOps. Exposure to Terraform or equivalent infrastructure-as-code.
- Version control. Fluent with Git in a team setting — branching strategy, meaningful review, clean history.
- Ways of working
- Clear written and verbal communication; able to explain a technical trade-off to a non-technical stakeholder.
- Ownership mindset — comfortable being accountable for a system in production, including out-of-hours incidents where required.
- Constructive in code review, both giving and receiving.
- Pragmatic about scope and deadlines, and honest about estimates and risk.
Preferred Skills
- Experience with machine learning workflows — feature pipelines, model serving, or MLOps tooling such as MLflow or Vertex AI.
- Exposure to computer vision, NLP or LLM-based systems.
- Experience with process mining, task mining or workflow analytics products.
- Contributions to open-source Python projects.
- Experience in a product company or high-growth startup environment.
- Familiarity with data warehousing — BigQuery, Snowflake or similar — and dimensional modelling.
- Experience mentoring formally, or leading a small team.
Qualifications
- Bachelor’s degree in Computer Science, Engineering or a related discipline, or equivalent demonstrable experience. Strong candidates without a formal degree will be considered on the strength of their work.
Interview Process
- Stage 1: Screening conversation — background, motivation, role fit (30 minutes)
- Stage 2: Technical discussion — Python depth, past systems, design reasoning (60 minutes)
- Stage 3: Practical coding exercise or take-home review (60–90 minutes)
- Stage 4: System design discussion (60 minutes)
- Stage 5: Hiring manager and culture conversation (45 minutes)
Required Skills
Community Discussion
Login to post comments and feedback visible to the community.
Sign In