Ozone Bhattarai

Backend Engineer · Kathmandu, Nepal

ozonebhattarai@gmail.com|LinkedIn|Resume (PDF)

I build backend systems in Python and Django. For the last three years that has mostly meant internal platforms at ING Tech: a multi-tenant work tracker, a client outsourcing platform, school report card systems, and a gateway that talks to biometric attendance devices.

I usually own the backend end to end. Schema design, API contracts, background jobs, tests, Dockerfiles and Compose stacks, and whatever tuning production needs afterwards.

Projects

Tasq

Multi-tenant work tracking platform, 6 organizations

A task and project tracker used by six organizations. Version 1 ran as a separate database and deployment per customer, which meant six of everything to maintain. Version 2 is one deployment with a Postgres schema per tenant.

  • Django 5.2
  • Django REST Framework
  • django-tenants
  • Keycloak
  • Celery
  • GraphQL
  • PostgreSQL
  • Redis

Ingine

Client outsourcing platform, sole backend engineer

An internal platform for running an outsourcing business: inbound leads and discovery calls, clients and contracts, the talent roster, attendance and timesheets, meetings, and task tracking. I built and own the backend.

  • Django 6
  • Django REST Framework
  • PostgreSQL
  • Celery
  • Redis
  • S3
  • Docker

Report Card Systems

NEB and A-Level, two institutions

Two systems that turn exam marks into printed report cards. Staff import results, the system computes grades and analysis, and then renders the whole school as PDFs. The NEB deployment tracks around 790 active students and has produced over 1,200 report cards.

  • Django
  • Celery
  • Django Channels
  • WeasyPrint
  • PyMuPDF
  • RabbitMQ
  • Google Gemini

Attendance and Device Gateway

100+ biometric terminals, 7 institutions

A gateway between a fleet of ZKTeco biometric terminals and the systems that need attendance data. No screenshots for this one, it is an API and a set of workers.

  • Django
  • Django REST Framework
  • ADMS PUSH protocol
  • pyzk
  • Celery
  • RabbitMQ
  • GitLab CI

django-keycloak-auth

Reusable auth package, published internally

A Django package that implements Keycloak authentication on the Backend-for-Frontend pattern. I am the largest contributor, with 50 of its 105 commits, and wrote the auth, config, IAM service and view layers. It is the auth layer Tasq runs on.

  • Python
  • Django
  • Django REST Framework
  • PyJWT
  • Keycloak
  • GitLab CI

Skills

Languages
Python, SQL, TypeScript, Bash
Backend
Django, Django REST Framework, Celery, Django Channels, WebSockets, GraphQL, OpenAPI, OAuth2, OIDC, Keycloak, JWT
Data
PostgreSQL, Redis, RabbitMQ, django-tenants, schema design, query optimization, S3 and MinIO
Infrastructure
Docker, Docker Compose, Gunicorn, Uvicorn, GitLab CI, GitHub Actions, Linux, Sentry
Testing
pytest, factory-boy, model-bakery, coverage, pre-commit, Ruff, mypy

Experience

ING TechDecember 2023 to Present

Software Engineer, Backend

Backend owner across four in-house products. Data modeling, API design, background processing, tests, containerization and deployment.

Study Info CentreJuly 2023 to November 2023

Software Engineer

Delivered application processing, course matching and student management modules end to end on an international student recruitment platform.

Education

University of WolverhamptonFebruary 2021 to May 2023

BSc (Hons) Computer Science

First Class Honours, 81%. AAA Scholarship all three years, awarded to the top 10% of students.