Voice AI Backend Developer (Node.js / TypeScript)

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

TYPE OF WORK

Full Time

WAGE / SALARY

5$-12$

HOURS PER WEEK

63

DATE UPDATED

Jun 8, 2026

JOB OVERVIEW

We are building SoVoice AI — a voice AI platform that handles automated outbound and inbound phone calls using Twilio and OpenAI Realtime API. The system manages AI voice agents that book appointments, handle customer inquiries, and integrate with calendars ( ---------- , Google Calendar).
We are looking for a reliable and skilled backend developer who can work independently and take ownership of tasks.
Your responsibilities:

Maintain and extend a Node.js / TypeScript backend (Express, PostgreSQL via Neon DB)
Work on Twilio voice integrations (calls, webhooks, TwiML, ConversationRelay)
Fix bugs, write unit tests (Vitest), and keep test coverage above 80%
Implement new features based on a detailed technical roadmap
Work closely with the founder via task descriptions in Replit

Requirements:

Strong TypeScript / Node.js experience (3+ years)
Experience with REST APIs, webhooks, PostgreSQL
Familiarity with Twilio or similar telephony APIs is a big plus
Able to read and understand existing code quickly
Good written English communication
Available for at least 6 hours overlap with European time zones (CET)

Nice to have:

Experience with OpenAI API / Realtime API
Experience with ---------- or Google Calendar API
AWS (ECS, SSM, IAM basics)


also need to know is to be able to work on a high professionel level with replit claude etc

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0266
Total Execution Time  0.0280
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,494,096 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Voice-AI-Backend-Developer-Nodejs-TypeScript-1663971
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0210 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1663971
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 941264
 LIMIT 1 
0.0156   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` = 1663971
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-21',ej.date_added) duration_daysDATEDIFF('2026-06-21',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-21',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1663971' 
0.0007   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1663971 
0.0007   UPDATE employer_jobs SET hit_counts '***Jun-08-2026=404***Jun-09-2026=44***Jun-10-2026=16***Jun-11-2026=21***Jun-12-2026=7***Jun-13-2026=4***Jun-14-2026=10***Jun-15-2026=11***Jun-16-2026=1***Jun-17-2026=2***Jun-18-2026=3***Jun-19-2026=2***Jun-20-2026=3***Jun-21-2026=1' WHERE job_id'1663971'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jun-2026=528' WHERE job_id'1663971'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1663971' 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` = 1663971 
0.0003   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '941264'
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)