Odoo Developer job at Anecdote agency in New Cairo, Cairo
وصف الوظيفة والمتطلبات:
Job Description
Senior Odoo Developer — Integrations & Financial Reporting
About the Project
We 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 On
- Third-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 Stack
- ERP: Odoo
- Backend: Python, Odoo ORM
- Frontend: OWL (Odoo Web Library), JavaScript, SCSS
- External APIs: Advertising/marketing platform APIs
- Database: PostgreSQL
- Reporting: QWeb (PDF), openpyxl (Excel)
- Containerisation: Docker, Docker Compose
- CI/CD: Bitbucket Pipelines, container registry
How We Work
- Module-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.
Requirements
Must-Have Qualifications
- 3+ 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-Have
- Major 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.
🚀 مهتم بهذه الوظيفة؟
لمشاهدة التفاصيل الكاملة والتقديم، اضغط على زر “التقدم للوظيفة” في الأعلى.