What is Odoo?

  Aug 16, 2026      2m        

Tut 1: What is Odoo? An introduction to Odoo

What is Odoo?

This is the opening post of my Odoo programming tutorial series for those who are just starting out or know nothing about Odoo but have an "endless passion" for the Python programming language like me :D. All my posts will use Odoo 19.0 - the latest version at the time of writing. The posts lean toward hands-on coding right away rather than long-winded theory, forcing readers to get their hands "dirty" before they can become proficient.

What is Odoo?

Odoo is an open-source ERP software written in the Python programming language. ERP stands for Enterprise Resource Planning. In a nutshell, ERP can be understood as integrating the components needed to manage a business. To make it easier to picture: a business has many departments that need managing, such as inventory management, sales management, employee management, point of sale (POS), … and these modules are integrated into one management software - Odoo - instead of each department using a separate software. You could say every business wants an optimized ERP solution, and Odoo ERP is one of the candidate software.

So, if you want to understand Odoo deeply, you also need to grasp how the different parts of a business work, so you can use Odoo effectively and customize it to users' specific needs.

Because Odoo is open-source, developers can code additional modules (addons / extensions) to meet users' customization needs - you'll need to code following the framework Odoo provides.

Odoo introduction

I have provided quite a bit of essential info about Odoo for you :). You could say Odoo is quite complete, offering everything from source code, documentation, cloud, to an app store for users.

Odoo technical stack

I'll list some of the technologies related to Odoo so you can picture what else you should learn to get started:

  • Main programming language: Python
  • CMS backend: Python
  • Frontend: OWL (Odoo Web Library), jQuery, underscore.js, D3.js
  • DBMS: Postgres
  • Proxy: Nginx

All in all, there's not much to it, but getting familiar with the Odoo framework still takes time to truly understand and master.

Career opportunities for Odoo developers

I have to say the career opportunities when you're an Odoo developer are very promising. If you know how to play your cards right, the salary for Odoo developers is quite good. The reason is that hiring Odoo developers is very hard - Odoo devs are scarce, especially the skilled and experienced ones.

Odoo's working flow already provides components such as:

  • User login / logout management.
  • MVC architecture: Model - View - Controller.
  • ORM binding: create Python classes -> mapped to tables in the Postgres database.

Customizing on the Odoo framework makes writing software much faster instead of coding everything from scratch. That's a huge advantage. So far I have also surveyed other similar frameworks on Python and there simply aren't any. Django is the only promising one, but to be fair, it's not on par with Odoo.

Comparing Django and Odoo:

  • The first thing you notice: uglier interface! It's not easy to find a nice, usable theme for your CMS.
  • Django is a general-purpose Python framework, not meant for ERP. So if you don't care about ERP and only care about a Python backend, Django is actually a great choice.
  • Django is lighter and faster than Odoo, at least from what I've felt during development.
  • Django supports more DBMSes (SQLite, Postgres, MongoDB, …) while Odoo only recommends Postgres. Honestly, up to this point I haven't found anything to complain about Postgres.
  • Django's code organization doesn't seem as clean as Odoo's. With a large codebase it starts getting harder to manage compared to Odoo - just a feeling.

In short, Django is a general-purpose Python framework, while Odoo focuses on ERP!

My thoughts on Odoo

In short, from my personal perspective, I find Odoo very worth learning for those who have Python as their main programming language. Career opportunities for Odoo developers have huge potential, so start right now before the market gradually saturates in the future!

That's why I started this Odoo tutorial series, to guide you into Odoo through self-study. Of course, hands-on experience with real projects is very valuable if you get the chance.