Available for senior Odoo roles & consulting

Bipin Shrestha

Odoo / Python Backend Developer

I close the gap between standard Odoo and how your business actually runs — custom modules, integrations and automation across v13–v19 that survive the next upgrade instead of breaking on it.

5+ years in Odoo Published Odoo Apps author Remote · AU & NP time zones

About

Backend engineering with a
business-first mindset.

Engineering philosophy

Every custom line of code is a line someone maintains through the next seven upgrades. I'm as willing to argue a customisation out of scope as into it, and I choose extension points that carry forward on upgrade instead of patches that have to be rewritten each release.

Backend specialization

Python, the Odoo ORM and PostgreSQL are where I live. When an instance crawls under real volume, I profile the queries and fix the logic — a bigger server is the expensive way to postpone the problem.

Business impact

Most ERP pain isn't technical: it's a process that was never written down being forced into software that assumes it was. I start by watching how work actually happens, then make the ERP the single source of truth — no spreadsheets on the side, no data keyed in twice.

Tech stack

Tools I work with daily.

What I'm actually deep in, rather than everything I've touched once.

Backend

  • Python
  • REST APIs
  • XML-RPC / JSON-RPC
  • Webhooks
  • OAuth
  • Scheduled jobs

Odoo

  • ORM & inheritance
  • Custom modules
  • QWeb reports
  • ACL & record rules
  • Version migrations
  • Odoo.sh

Database

  • PostgreSQL
  • Query tuning
  • Indexing strategy
  • Bulk data migration
  • Backup & recovery

Frontend

  • OWL framework
  • JavaScript (ES6+)
  • XML views
  • QWeb templates
  • SCSS
  • Portals & eCommerce

DevOps

  • Docker
  • Linux & Nginx
  • CI/CD
  • Production debugging
  • Upgrade testing

Tools

  • Git
  • VS Code / PyCharm
  • pgAdmin
  • Postman
  • Jira & agile boards

Experience

Career timeline.

May 2026 — Present

Odoo Development Lead

NEXEVOLVE · Sydney, Australia · Remote

Own the technical direction of every Odoo engagement — architecture, code standards, review and release. Design modules on Odoo 18/19 with OWL frontends, and turn stakeholder requests into scoped, buildable work — including saying no to customisation that standard Odoo already covers.

  • Team lead
  • Architecture
  • Odoo 18–19
  • OWL
2025 — 2026

Senior Odoo Developer

Ioppolo & Associates · Perth, Australia · Remote

Owned Accounting, Inventory, HRMS and Sales customisation from first requirement call through production support. Replaced recurring manual routines in finance and HR with automated workflows, removing a standing source of reconciliation errors. Integrated third-party APIs and rewrote modules that had grown brittle under production volume.

  • Accounting
  • HRMS
  • API integration
  • OWL
2021 — 2025

Intern → Senior Odoo Developer

Nexus Incorporation Pvt. Ltd. · Kathmandu, Nepal

Joined as an intern and left as a senior developer four years later. Built and customised Inventory, Sales and operational workflow modules for live deployments across Odoo v13–v17, and became the person the team routed OWL/XML work, API integrations and version migrations to.

  • Intern → Senior
  • Inventory
  • Sales
  • Migrations

Featured projects

Shipped, in production, verifiable.

One product anyone can buy and inspect, plus the client work that pays the bills. Where NDAs cover the details, I describe the problem and the approach.

Business problem
Nepal runs on the Bikram Sambat calendar; Odoo doesn't. Every Nepali business converts dates by hand on invoices, payroll and statutory reports — slow, error-prone, impossible to audit.
Solution
A native OWL date picker rendering both calendars side by side, accepting Devanagari or English input, converting with timezone awareness, and carrying correct BS dates through filters, PDF reports and Excel exports. Every date from 1943 to 2044 validated against official conversion tables.
Key achievement
A paying, publicly reviewable commercial product — reviewed and accepted by Odoo S.A., not a demo.
  • OWL
  • Localization
  • Commercial product
View on Odoo Apps
Business problem
Companies buy Odoo for the standard modules, then discover their business doesn't run the standard way. Work leaks into spreadsheets, data is keyed twice, reports are assembled by hand.
Solution
Custom modules, automated workflows, REST and payment-gateway integrations, QWeb reporting that matches what finance actually needs, and OWL interfaces built around a role rather than a data model.
Key achievement
50+ custom modules in production, 20+ API integrations, customisations that still work after the next upgrade.
  • 50+ modules
  • REST APIs
  • Production ERP
Overview
Every client project throws up the same gaps twice. I'm turning the recurring ones into properly packaged modules — localisation, automation, and the developer-productivity tooling I keep wishing existed mid-project. Documented, versioned, supported.
  • Reusable modules
  • Localization
  • Automation

Odoo expertise

Deep in the framework,
v13 through v19.

Seven consecutive releases, no gaps. I've seen which customisations survive an upgrade and which quietly become someone's problem two years later.

Custom modules

Versioned, documented, upgrade-safe modules instead of core patches.

ORM

Inheritance patterns, computed fields, constraints, batch-safe writes.

Security

ACLs, record rules, groups and multi-company access done correctly.

XML views

View inheritance and xpath surgery that survives upgrades.

Reports

QWeb PDF and Excel reporting matched to what finance actually signs off.

OWL

Modern reactive components — including a commercial date picker on the Apps Store.

REST APIs

Controllers, auth, rate-limits and versioned endpoints for external systems.

Integrations

Payment gateways, third-party APIs, webhooks and scheduled sync jobs.

Performance

Query profiling and ORM optimisation for instances that crawl under real volume.

Modules I know business-side, not just code-side
  • Accounting
  • Inventory
  • Sales & CRM
  • Purchase
  • HR & Payroll
  • Manufacturing (MRP)
  • POS
  • Website & eCommerce
  • Projects

Under the hood

How an Odoo request flows.

The round trip every click in Odoo takes. Press Run request and watch a real-looking request travel down to PostgreSQL and back, logged live — or click any stage to inspect it.

request-inspector

// click “Run request” to trace a sale-order create through the stack

Code showcase

The way I write Odoo.

Three small, real-world patterns — a model, a view inheritance, and an OWL component.

# Batch-safe compute with proper dependencies —
# no per-record queries, no stale cache.
from odoo import api, fields, models


class SaleOrder(models.Model):
    _inherit = "sale.order"

    margin_pct = fields.Float(
        compute="_compute_margin_pct", store=True)

    @api.depends("order_line.margin", "amount_untaxed")
    def _compute_margin_pct(self):
        for order in self:
            order.margin_pct = (
                order.margin / order.amount_untaxed * 100
                if order.amount_untaxed else 0.0)

Stored computes with explicit @api.depends keep list views fast — the value is read from the DB, not recalculated per row.

GitHub

Open work.

Pulled live from github.com/diablo-stha.

0+Years of experience
0+Modules in production
0+API integrations
0Odoo releases shipped

Services

How I'm usually hired.

Five ways this normally starts. If your problem doesn't fit one cleanly, describe it anyway — scoping it correctly is part of the job.

Custom Module Development

When standard Odoo doesn't match how your business works. I build the missing piece as a proper module — versioned, documented, upgrade-safe — instead of patching core and creating a problem for whoever comes next.

Version Migration & Upgrade

Moving off an older release without losing the customisations you paid for. I've worked every version from v13 to v19, including inherited legacy code by developers who are long gone and left no notes.

Integrations

Payment gateways, third-party APIs, and data migration out of the legacy system you're still paying for. The goal is always the same: stop people entering the same information twice.

Performance Rescue

For instances that worked fine at launch and now crawl under real volume. I profile the actual bottleneck and fix the queries or the logic — a bigger server is the expensive way to postpone the problem.

Ongoing Development Retainer

For teams running Odoo seriously without an in-house Odoo developer. Continuous improvement, upgrade planning, and someone who already knows your codebase when something breaks at month-end.

Working Arrangement

Remote, contract or permanent. I've worked Australian business hours from Kathmandu for three years, so time zones are a solved problem rather than something to negotiate.

Credentials

Certifications & education.

Formal credentials, for the record. The Odoo depth on this page came from production work, not coursework.

Published Odoo Apps Store Author

Commercial module under OPL-1 — code a stranger can buy, install and audit, reviewed and accepted by Odoo S.A.

Verifiable

Official Odoo Functional Certification

In preparation — the credential that formalises the functional side clients already hire me for.

In progress

B.Sc. CSIT — Computer Science & IT

Patan Multiple Campus, Kathmandu · 2018 – 2023. Completed alongside the first years of full-time production Odoo work.

Education
How I stay current
  • Build on each new release at launch
  • Ship to the Odoo Apps Store
  • Track upstream framework changes
  • Read the core source, not just the docs

References

What colleagues say.

Named, attributable, and verifiable on LinkedIn. More available on request.

I highly recommend Bipin Shrestha as an ERP Odoo Developer. During our time at Nexus Incorporation Pvt. Ltd., he demonstrated exceptional skills in Odoo customization and implementation. His problem-solving abilities and professionalism were instrumental in delivering successful projects. Bipin's expertise and collaborative nature make him a valuable asset to any team.

Nitesh Bhatta Engineer, DevSecOps & FinTech · MBA-Finance — direct teammate · LinkedIn recommendation, 2023

Writing

Knowledge sharing.

Technical articles in the works — the lessons that keep coming up in client projects.

Coming soon

Writing Odoo modules that survive seven upgrades

The extension points that carry forward — and the patterns that quietly break on every version bump.

Coming soon

What the ORM is really doing to your PostgreSQL

Reading the SQL behind recordsets, and the three query patterns behind most "Odoo is slow" tickets.

Coming soon

Shipping a paid module to the Odoo Apps Store

Review process, licensing, support expectations — what I learned publishing a commercial date picker.

Contact

Let's build something
that survives the next upgrade.

Hiring, freelance builds or ERP consulting — tell me the process that's costing you time, your Odoo version, and roughly when you need it working. You'll hear back within 24 hours.