Odoo Developer

Anecdote agency · Cairo, Egypt · Posted 2026-04-03

Senior Odoo Developer — Integrations & Financial ReportingAbout the ProjectWe are a digital agency (Anecdote) with our in-house development team, running Odoo as the operational hub for project management, campaign workflows, and finance. We maintain custom modules that link external advertising and analytics platforms to Odoo — automating budget tracking, media planning, and performance reporting — and extend Odoo's accounting layer for localised financial statements, asset management, and bank reconciliation. The stack is cloud-hosted in a containerised deployment with CI/CD automation.What You'll Work OnThird-party integrations: Maintain and extend connections to advertising and analytics platforms via REST/JSON APIs and their SDKs — handling data sync, TTL-based caching, and robust error handling.Campaign & project workflows: Build and evolve wizards and automation that translate campaign planning data into structured Odoo work items (tasks, budgets, timelines) and generate QWeb reports with KPI summaries.Budget & time tracking: Develop models and logic for rolling budget computation, variable service pricing, and time allocation across hierarchical task structures.Accounting & financial reporting: Extend core Odoo accounting with additional reports (PDF and Excel), financial statements, asset tracking flows, and reconciliation support.Custom views & OWL components: Create and maintain Kanban/List view extensions, field widgets, and OWL components — including custom styling where needed.Platform & CI/CD: Work within a Docker-based local dev environment and a CI pipeline that builds, tests, and deploys to a container registry on merge.Test coverage: Champion automated testing — writing model-level and integration tests to establish a growing safety net across the codebase.Tech StackERP: OdooBackend: Python, Odoo ORMFrontend: OWL (Odoo Web Library), JavaScript, SCSSExternal APIs: Advertising/marketing platform APIsDatabase: PostgreSQLReporting: QWeb (PDF), openpyxl (Excel)Containerisation: Docker, Docker ComposeCI/CD: Bitbucket Pipelines, container registryHow We WorkModule-first architecture: every feature lives in its own addon with clean __manifest__.py dependency declarations — new work follows the same pattern.Small, focused team: compact dev team where each engineer owns full vertical slices (model → view → report → deployment).Docker-native workflow: local dev runs entirely in containers via Docker Compose; there is no bare-metal Odoo setup.CI on merge: builds are image-cached to keep pipeline times short; deployments are triggered automatically on merge.Growing test culture: we want someone who will help establish and expand automated test coverage — this is an active priority, not an afterthought.Code style: consistent use of Odoo decorator patterns and access-control matrices. Must-Have Qualifications3+ years of Odoo development.Python ORM mastery: computed/related fields with @api.depends, @api.[removed], @api.constrains, _sql_constraints, and CRUD overrides (create, write, unlink).Model inheritance patterns: _inherit (extension), abstract mixins, and TransientModel wizards.Security model: authoring ir.model.access.csv, record rules (ir.rule), group-based permissions, and knowing when (and when not) to use sudo().QWeb reports: designing and debugging XML report templates that produce both PDF and structured data output.External API integration: consuming REST/JSON APIs from Python with proper error handling; hands-on experience with at least one third-party SDK.Odoo JS ecosystem: custom OWL components, extending standard Kanban/List controllers, understanding the asset bundle pipeline.Docker: comfortable writing and debugging docker-compose.yml files; able to trace build failures through multi-stage Dockerfile logic.Nice-to-HaveMajor ad platform APIs (e.g. Meta, Tiktok, Snapchat) — existing familiarity with advertising platform APIs shortens onboarding significantly.Accounting domain knowledge — understanding of double-entry bookkeeping, asset depreciation schedules, and bank reconciliation flows.AWS & Bitbucket Pipelines — experience with cloud container registries and pipeline YAML configuration is a plus.openpyxl / xlsxwriter — used for Excel report exports; ability to produce formatted multi-sheet workbooks.Bank statement parsing — familiarity with OFX/QIF formats or relevant parsing libraries.PostgreSQL performance tuning — the reporting layer will benefit from query-level optimisation as data grows.pytest-odoo or Odoo test runner — experience writing TransactionCase and HttpCase tests; bootstrapping a test suite from scratch is highly valued.

Apply for this role