Odoo Developer Required for Dashboard Ksolves Ninja V18

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Any

SALARY

$5-$35

HOURS PER WEEK

30

DATE UPDATED

Sep 5, 2025

JOB OVERVIEW

Upwork Job Post: Odoo Developer – Lead Acquisition Dashboard & Dial Setup**

**Project Overview**
We’re building a real-time lead acquisition dashboard inside Odoo. Your mission: design, develop, and deploy interactive “dials” that show:

* **Lead volume by source** (count + dollar value)
* **Missed leads** vs. a zero-miss target
These insights will guide our marketing spend and ensure we’re investing in the right channels.

---

### Scope & Deliverables

1. **Project Brief & Specs**

* Flesh out detailed requirements from the attached outline and Loom walkthrough.
2. **Dial Development**

* Build three Odoo dashboard widgets:

* Leads by Source (count + \$)
* Missed Leads counter
* Overall KPI dial (combining both metrics)
3. **SOP & Handoff**

* Document how the dials update, where data lives, and how to onboard future tea ---------- mbers.
4. **QA & Sign-Off**

* Demo to Dean Grace for feedback. Deliver final tweaks by **End of July**.

---

### What Success Looks Like

* Dials accurately reflect live data from Odoo.
* Visuals update automatically (no manual refresh).
* A clear, step-by-step SOP enables any tea ---------- mber to manage or extend the dashboard.

---

### Why This Matters

* Drives smarter marketing investment decisions.
* Reveals gaps in lead capture (missed leads) for immediate follow-up.
* Keeps our team laser-focused on high-value channels.

---

### Required Skills & Experience

* **Odoo Developer**: Proven experience customizing Odoo backend & dashboard (“Board” app or custom widgets).
* **Python & XML**: Comfortable writing computed fields, server-side logic, and graph view definitions.
* **JavaScript**: Familiarity with Odoo’s web client for interactive gauges or chart libraries.
* **Data Visualization**: Ability to translate raw records into clean, user-friendly dials.
* **SOP Writing**: Strong documentation skills to hand off maintenance and future tweaks.

---

### Team & Collaboration

* **Project Owner**: Odoo Project Owner (liaison, scope alignment)
* **Stakeholder**: Dean Grace (final approver)
* **Timeline**: Kickoff ASAP; final delivery **by July 31, 2025**.

---

### How to Apply

1. **Brief Cover Note**: Tell us about a similar Odoo dashboard you’ve built.
2. **Code Sample or Repo Link**: Showcase your work on computed fields, custom graphs, or gauges.
3. **Availability**: Confirm you can complete by end of July and your hourly rate or fixed-price proposal.

We’re on a tight schedule with high visibility—if you’re an Odoo wiz who can move fast, apply now!

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0010
Controller Execution Time ( Jobseekers / Job )  0.0187
Total Execution Time  0.0205
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,509,552 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Odoo-Developer-Required-for-Dashboard-Ksolves-Ninja-V18-1462623
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0121 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1462623
 LIMIT 1 
0.0010   SELECT *
FROM `employers`
WHERE `employer_id` = 224909
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1462623
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-22',ej.date_added) duration_daysDATEDIFF('2026-04-22',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-04-22',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1462623' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1462623 
0.0013   UPDATE employer_jobs SET hit_counts '***Sep-05-2025=90***Sep-06-2025=10***Sep-07-2025=10***Sep-08-2025=4***Sep-09-2025=4***Sep-10-2025=2***Sep-11-2025=3***Sep-12-2025=1***Sep-15-2025=3***Sep-17-2025=2***Sep-18-2025=1***Sep-19-2025=1***Sep-20-2025=1***Sep-21-2025=3***Sep-22-2025=1***Sep-23-2025=1***Sep-24-2025=1***Sep-28-2025=3***Sep-29-2025=1***Oct-01-2025=1***Oct-03-2025=1***Oct-06-2025=1***Oct-08-2025=1***Oct-09-2025=1***Oct-10-2025=1***Oct-12-2025=1***Oct-14-2025=2***Oct-17-2025=2***Oct-24-2025=2***Oct-25-2025=1***Oct-28-2025=4***Nov-07-2025=2***Nov-12-2025=1***Nov-13-2025=2***Nov-15-2025=1***Nov-17-2025=3***Nov-18-2025=1***Nov-21-2025=1***Nov-22-2025=1***Nov-26-2025=2***Nov-27-2025=1***Dec-01-2025=1***Dec-04-2025=2***Dec-05-2025=1***Dec-09-2025=1***Dec-13-2025=1***Dec-14-2025=1***Dec-15-2025=1***Dec-20-2025=1***Dec-21-2025=1***Dec-22-2025=2***Dec-26-2025=1***Dec-27-2025=1***Dec-28-2025=3***Dec-30-2025=1***Jan-03-2026=1***Jan-08-2026=1***Jan-10-2026=2***Jan-12-2026=1***Jan-16-2026=1***Jan-21-2026=2***Jan-23-2026=1***Jan-25-2026=1***Jan-26-2026=1***Feb-01-2026=1***Feb-04-2026=1***Feb-10-2026=1***Feb-12-2026=1***Feb-13-2026=1***Feb-16-2026=1***Feb-17-2026=3***Feb-18-2026=1***Feb-21-2026=1***Mar-01-2026=1***Mar-10-2026=1***Mar-14-2026=1***Mar-17-2026=1***Mar-19-2026=1***Mar-22-2026=2***Mar-25-2026=2***Mar-26-2026=2***Mar-29-2026=1***Mar-30-2026=1***Apr-03-2026=1***Apr-06-2026=1***Apr-07-2026=1***Apr-22-2026=1' WHERE job_id'1462623'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Sep-2025=142***Oct-2025=18***Nov-2025=15***Dec-2025=18***Jan-2026=11***Feb-2026=11***Mar-2026=13***Apr-2026=4' WHERE job_id'1462623'  
0.0010   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1462623' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1462623 
0.0047   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '224909'
AND `date_added` >= '2022-06-08' 
0.0005   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)