Junior Python Developer
1 day ago
City of London
Job Title: Junior Python Developer Location: UK Experience: 2–10 years Education: Master's in Science (IT/Computer Science/Engineer) Employment Type: Full-Time UK based candidates only. About the Rol eWe are looking for a Python Full Stack Developer to design, build, and ship production-grade web applications end to end — from a FastAPI backend and PostgreSQL data layer through to a modern React + TypeScript frontend, containerised with Docker and orchestrated on Kubernetes, and deployed and monitored across cloud platforms (AWS, Azure, or GCP). You will own features across the full stack: modelling data, exposing secure and well-documented APIs, building responsive interfaces, writing tests, and pushing your work to production through automated CI/CD pipelines .This is a hands-on engineering role suited to someone who is comfortable across the entire delivery lifecycle and takes pride in shipping secure, observable, well-tested software .Key Responsibilitie • sStrong hands on experience in Python, Tableau & Data Mining experience, • .Design and build RESTful APIs with FastAPI — routing, request/response validation, dependency injection, middleware, and auto-generated OpenAPI documentation, • .Develop relational data models with SQLAlchemy (async) and manage schema evolution with Alembic migrations, • .Build responsive, accessible user interfaces in React with TypeScript, using modern hooks, client-side routing, and form validation, • .Implement secure authentication and authorisation — JWT access/refresh tokens, OAuth2 / OpenID Connect, password hashing, role- and scope-based access control (RBAC), and token revocation, • .Manage server state and data fetching on the frontend with TanStack Query, and application state with a lightweight store such as Zustand, • .Work with PostgreSQL and Redis for persistence, caching, rate-limiting, and background task coordination, • .Write unit, integration, and end-to-end tests (pytest, Vitest, React Testing Library, Playwright) and maintain healthy test coverage, • .Containerise services with Docker (multi-stage builds) and deploy/orchestrate them on Kubernetes — Deployments, Services, Ingress, ConfigMaps/Secrets, autoscaling, health probes — or on the cloud-native equivalents (AWS EKS/ECS, Azure AKS/Container Apps, GCP GKE/Cloud Run), • .Provision and ship infrastructure and releases across cloud providers (AWS, Azure, GCP) through automated CI/CD pipelines (GitHub Actions), using managed identity / IAM and cloud secret stores rather than hard-coded credentials, • .Monitor application performance and reliability — profiling, query optimisation, structured logging, error tracking, and tracing, • .Collaborate on clean, secure code through code review, conventional Git workflows, and adherence to OWASP and secrets-management best practices .Required Skills & Experienc eBacken • dStrong Python fundamentals, including async/await (asyncio) and modern tooling (uv / poetry, virtual environments), • .Hands-on experience building APIs with FastAPI and data validation with Pydantic / pydantic-settings, • .Proficiency with SQLAlchemy (ORM, relationships, eager loading) and Alembic migrations, • .Solid PostgreSQL skills — query design, indexing, and reading EXPLAIN/ANALYZE output — plus Redis for caching and token storage .Fronten • dProficiency with React and TypeScript, including hooks, component composition, and React Router, • .Experience with form handling and validation (React Hook Form + Zod) and data fetching with TanStack Query, • .Comfort with a modern build toolchain (Vite), HTML5, CSS (Flexbox/Grid), and JavaScript ES6+ .Authentication & Authorisatio • nHands-on experience implementing JWT-based auth (access + refresh tokens) and OAuth2 / OpenID Connect flows, • .Secure password handling (bcrypt / passlib), token revocation, and session/token storage in Redis, • .Role-based and scope-based access control (RBAC), protecting routes and enforcing least-privilege, • .Familiarity with cloud identity providers and managed identity — AWS IAM / Cognito, Azure Entra ID, and GCP IAM .Containers & Orchestratio • nProficiency with Docker — multi-stage builds, slim/non-root images, docker-compose, and image scanning (trivy), • .Working knowledge of Kubernetes — Deployments, Services, Ingress, ConfigMaps/Secrets, liveness/readiness probes, and horizontal autoscaling, • .Experience deploying to managed Kubernetes or container platforms: AWS EKS / ECS / App Runner, Azure AKS / Container Apps, or GCP GKE / Cloud Run, • .Container registries and image promotion (ECR, ACR, Artifact Registry, GHCR) .Cloud Platforms (AWS / Azure / GCP • )Working knowledge of at least one major cloud platform, with willingness to work across all three, • :AWS — EC2, S3, RDS (PostgreSQL), ElastiCache, CloudFront, Route 53, SQS, IAM, CloudWatch, • .Azure — Container Apps / AKS, Blob Storage, Database for PostgreSQL, Cache for Redis, Key Vault, Service Bus, Entra ID, Azure Monitor, • .GCP — GKE / Cloud Run, Cloud Storage, Cloud SQL (PostgreSQL), Memorystore, Pub/Sub, Secret Manager, Cloud IAM, Cloud Monitoring & Logging, • .Cloud secret management and credential-free auth (Key Vault, Secrets Manager, Secret Manager, workload/managed identity) .Testing & DevOp • sCI/CD with GitHub Actions — lint, test, build, scan, and deploy pipelines with matrix builds and caching, • .Automated testing across the stack: pytest (with pytest-asyncio), Vitest / React Testing Library, and Playwright for E2E, • .Familiarity with observability tooling — structured logging, error tracking (e.g. Sentry), and tracing (e.g. OpenTelemetry / Jaeger), • .Sound version control practices with Git and GitHub (branching, pull requests, conventional commits) .Nice to Hav • eExperience with background processing and messaging (Celery, SQS, Pub/Sub, or Azure Service Bus) and real-time features (WebSockets / SSE), • .Production experience across more than one cloud (AWS, Azure, GCP) or in a multi-cloud / hybrid setup, • .Infrastructure-as-code (Terraform, Pulumi, or Bicep) and Kubernetes package management with Helm, • .Security awareness — OWASP Top 10, dependency and secrets scanning (bandit, pip-audit, trivy), • .Performance profiling experience (py-spy, cProfile) and frontend bundle optimisation, • .Experience generating typed API clients (e.g. openapi-typescript) for end-to-end type safety .Qualification • sBachelor's degree in Computer Science, Engineering, or a related field — or equivalent practical experience, • .2–10 years of professional software development experience across backend and frontend, • .A portfolio, GitHub profile, or shipped projects demonstrating full-stack delivery .