Microsoft Dynamics 365 & Power Platform Developer (Power Automate, Dataverse, Azure)

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

TYPE OF WORK

Full Time

WAGE / SALARY

N/A

HOURS PER WEEK

40

DATE UPDATED

May 25, 2026

JOB OVERVIEW

We're looking for an experienced Microsoft Power Platform / Dynamics 365 developer to help build and maintain a growing ecosystem of business automations and CRM integrations. You'll work directly with the lead engineer on real production systems — primarily a Dynamics 365 Sales environment integrated bidirectionally with a ConnectWise Manage PSA.

This is a full-time, long-term role for someone who can own work end-to-end across the Microsoft stack: low-code automation, Dataverse data modelling, JavaScript web resources, and Azure-hosted integration code.

WHAT YOU'LL WORK ON
- Building and debugging Power Automate cloud flows (automated, scheduled, instant triggers; child flows; error handling)
- Dynamics 365 Sales customisation — entities, forms, business rules, model-driven apps
- Dataverse data modelling, queries (OData / FetchXML), and bulk operations
- Bidirectional CRM PSA sync (REST APIs, webhooks/callbacks, loop prevention)
- JavaScript web resources and HTML form/viewer components inside D365
- Azure Functions and small integration services
- Copilot Studio agents and AI Builder document automation (a plus)
- Packaging and deploying Power Platform solutions (managed/unmanaged, ALM)

MUST-HAVE SKILLS
- 3+ years hands-on with Microsoft Power Platform (Power Automate + Dataverse)
- Solid Dynamics 365 (Sales/CE) customisation experience
- Strong JavaScript; comfortable with REST APIs and JSON
- Experience integrating two systems via APIs (any CRM/ERP/PSA)
- Clear written English and the ability to document your work

NICE TO HAVE
- ConnectWise Manage (or similar PSA) experience
- Azure Functions / C# / .NET
- Copilot Studio, AI Builder, or Power Apps (canvas / model-driven)
- Power Platform solution ALM / DevOps

HOURS & SETUP
- Full-time, ~40 hrs/week, with overlap into Australian business hours
- Long-term role with room to grow

TO APPLY
- Start your message with the word "DATAVERSE" so I know you read this.
- In 2-3 sentences, describe one Power Automate flow or D365 integration you built and what problem it solved.
- Include links to any relevant work (GitHub, solution exports, screenshots, portfolio).

Applications that skip these steps won't be reviewed. Thanks — looking forward to seeing your work.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0345
Total Execution Time  0.0359
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,509,696 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Microsoft-Dynamics-365-Power-Platform-Developer-Power-Automate-Dataverse-Azure-1654253
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0291 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1654253
 LIMIT 1 
0.0018   SELECT *
FROM `employers`
WHERE `employer_id` = 937151
 LIMIT 1 
0.0210   SELECT COUNT(DISTINCT t.id) as cnt
FROM 
`t_thread` `t`
INNER JOIN `t_message` `mON `t`.`id` = `m`.`thread_id`
INNER JOIN `t_message_employer` `eON `m`.`id` = `e`.`message_id`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1654253
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-24',ej.date_added) duration_daysDATEDIFF('2026-06-24',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-06-24',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1654253' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1654253 
0.0007   UPDATE employer_jobs SET hit_counts '***May-25-2026=379***May-26-2026=25***May-27-2026=10***May-28-2026=9***May-29-2026=10***May-30-2026=4***May-31-2026=6***Jun-01-2026=12***Jun-02-2026=10***Jun-03-2026=8***Jun-04-2026=5***Jun-05-2026=3***Jun-06-2026=5***Jun-07-2026=6***Jun-08-2026=7***Jun-09-2026=15***Jun-10-2026=3***Jun-11-2026=2***Jun-12-2026=4***Jun-13-2026=5***Jun-14-2026=5***Jun-15-2026=23***Jun-16-2026=2***Jun-17-2026=6***Jun-18-2026=2***Jun-19-2026=2***Jun-20-2026=3***Jun-24-2026=1' WHERE job_id'1654253'  
0.0006   UPDATE employer_jobs SET monthly_hits '***May-2026=442***Jun-2026=129' WHERE job_id'1654253'  
0.0016   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1654253' 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` = 1654253 
0.0009   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '937151'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)