n8n Workflow & Backend Integration Engineer (Project-Based)

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

TYPE OF WORK

Gig

SALARY

depending on experience

HOURS PER WEEK

40

DATE UPDATED

Feb 19, 2026

JOB OVERVIEW

We are looking for an experienced n8n Workflow & Backend Integration Engineer for a project-based role.

Our backend estimating engine is already built. We now need someone to connect the website to the backend and automate the full workflow from file upload to quote output.

This is a gig-based project focused on building a reliable automation pipeline.

Scope of Work:

• Connect website uploads to backend processing
• Build and optimize n8n workflows to orchestrate API calls
• Trigger backend processing from uploaded PDFs
• Manage job status updates (processing / completed / failed)
• Handle retries and error logging
• Store and return structured quote outputs (JSON / CSV / PDF)
• Connect PostgreSQL where required
• Ensure secure handling of file uploads and API authentication
• Implement notifications (email/webhook) when jobs complete

System Flow:

Website Upload ? Storage ? n8n Trigger ? Backend Processing ? Quote Output ? Website Status Update

You must be able to:

• Work with REST APIs
• Build structured, maintainable n8n workflows
• Handle long-running background jobs
• Design proper error handling and retry logic
• Prevent duplicate processing
• Write clean documentation

Tech Stack:

• n8n
• AWS (S3 preferred)
• REST APIs
• PostgreSQL
• JSON-based backend responses

This is a project-based role.

If the project is delivered well, there is potential for ongoing work and possibly a longer-term role as we expand the system.

When applying, please include:
1. Examples of n8n workflows you’ve built
2. Experience integrating APIs with backend systems
3. How you handle retries and job status tracking
4. Your estimated timeline
5. Your project-based rate

We are looking for someone practical, reliable, and experienced with backend automation.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0153
Total Execution Time  0.0167
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,482,408 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/n8n-Workflow-Backend-Integration-Engineer-Project-Based-1479192
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0090 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1479192
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 843919
 LIMIT 1 
0.0014   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1479192
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-15',ej.date_added) duration_daysDATEDIFF('2026-04-15',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-15',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1479192' 
0.0010   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1479192 
0.0009   UPDATE employer_jobs SET hit_counts '***Sep-28-2025=162***Sep-29-2025=46***Sep-30-2025=11***Oct-01-2025=22***Oct-02-2025=2***Oct-03-2025=7***Oct-04-2025=5***Oct-05-2025=1***Oct-06-2025=1***Oct-07-2025=1***Oct-08-2025=1***Oct-09-2025=5***Oct-11-2025=1***Oct-13-2025=5***Oct-14-2025=8***Oct-15-2025=2***Oct-16-2025=4***Oct-17-2025=3***Oct-18-2025=3***Oct-19-2025=1***Oct-20-2025=4***Oct-21-2025=3***Oct-23-2025=3***Oct-24-2025=1***Oct-25-2025=2***Oct-26-2025=2***Oct-27-2025=3***Oct-28-2025=5***Oct-29-2025=6***Oct-30-2025=4***Nov-01-2025=3***Nov-04-2025=2***Nov-05-2025=4***Nov-06-2025=1***Nov-07-2025=4***Nov-08-2025=1***Nov-10-2025=3***Nov-13-2025=2***Nov-14-2025=1***Nov-15-2025=1***Nov-16-2025=4***Nov-17-2025=2***Nov-18-2025=1***Nov-19-2025=1***Nov-20-2025=1***Nov-22-2025=2***Nov-25-2025=1***Nov-26-2025=3***Nov-28-2025=1***Nov-29-2025=1***Dec-01-2025=3***Dec-02-2025=1***Dec-03-2025=1***Dec-04-2025=2***Dec-07-2025=1***Dec-14-2025=1***Dec-15-2025=1***Dec-17-2025=1***Dec-20-2025=3***Dec-22-2025=1***Dec-23-2025=2***Dec-31-2025=2***Jan-03-2026=1***Jan-04-2026=1***Jan-10-2026=2***Jan-11-2026=1***Jan-15-2026=2***Jan-16-2026=1***Jan-20-2026=2***Jan-24-2026=1***Jan-26-2026=2***Jan-27-2026=2***Jan-28-2026=1***Feb-01-2026=1***Feb-02-2026=4***Feb-04-2026=1***Feb-10-2026=2***Feb-16-2026=1***Feb-19-2026=175***Feb-20-2026=36***Feb-21-2026=24***Feb-22-2026=14***Feb-23-2026=19***Feb-24-2026=6***Feb-25-2026=9***Feb-26-2026=5***Feb-27-2026=4***Feb-28-2026=3***Mar-01-2026=1***Mar-03-2026=4***Mar-05-2026=1***Mar-06-2026=2***Mar-07-2026=2***Mar-08-2026=4***Mar-09-2026=1***Mar-10-2026=1***Mar-11-2026=2***Mar-12-2026=1***Mar-15-2026=2***Mar-17-2026=2***Mar-19-2026=2***Mar-20-2026=2***Mar-22-2026=4***Mar-23-2026=2***Mar-24-2026=4***Mar-25-2026=1***Mar-27-2026=4***Mar-29-2026=1***Mar-31-2026=80***Apr-01-2026=46***Apr-03-2026=3***Apr-06-2026=1***Apr-07-2026=1***Apr-08-2026=2***Apr-11-2026=2***Apr-15-2026=1' WHERE job_id'1479192'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Sep-2025=219***Oct-2025=105***Nov-2025=39***Dec-2025=19***Jan-2026=16***Feb-2026=304***Mar-2026=123***Apr-2026=56' WHERE job_id'1479192'  
0.0015   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1479192' 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` = 1479192 
0.0014   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '843919'
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)