Back-End Developer — Core API & Application (TypeScript / Node.js)

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

TYPE OF WORK

Full Time

WAGE / SALARY

Open to discuss based on experience

HOURS PER WEEK

40

DATE UPDATED

May 24, 2026

JOB OVERVIEW

About the Role
We are a fast-growing SaaS company building an AI-powered business platform that brings CRM, content generation, lead generation, automation, and messaging into one connected system. We are hiring a back-end developer who is strong on REST APIs and business logic.

Our stack is TypeScript, Node.js, PostgreSQL, and Supabase, with integrations across AI services, payment processing, and other third-party platforms. When the team d ---------- on a new automation, a new capability, or a new way of handling user data, you are the developer who makes it real on the back end. You will design REST APIs, implement business logic, and ship features end to end.

You will also handle integration work as new third-party services come online — payment flows, AI model wiring, webhook handlers. You will work alongside our lead engineer and the rest of the back-end team. We are a small team that respects deep work, communicates honestly, and ships often. You will have real ownership of the features you build and the support of a team that has your back.

Core Skills (Required)
TypeScript and Node.js — this is the stack
REST API design and implementation
PostgreSQL — schema design, indexing, query fundamentals
Authentication patterns (OAuth, JWT)
Comfortable with third-party APIs and webhooks
Solid Git and code review habits
Clear written English for documentation and daily team communication

Extra consideration for experience with AI/LLM API integration (OpenAI, Anthropic, or similar), Supabase, payment integration (Stripe or similar), Next.js API routes, AI-assisted development (Claude Code, Cursor, Copilot), and SaaS or multi-tenant architecture.

Schedule and Availability
Full-time, 40 hours per week. Our core team window is 12:00 PM – 8:00 PM PHT, Monday through Friday.

Pay
Open to discussion based on experience.

How to Apply
Reply with a short message that includes:
1. Your name and location.
2. Years of back-end development experience.
3. Your top 3–5 strongest technologies or platforms — be specific (Node.js, TypeScript, PostgreSQL, REST APIs, Stripe, OpenAI API, etc.).
4. Link to your GitHub, portfolio, or any production work you can show — we want to see what you've built.
5. Are you currently working with other companies? How many hours per week are you available, and what is your timezone?
6. Answer this: Describe a feature you built end to end on the back end. What problem it solved, how you designed the API, and one tradeoff you had to make.
7. Answer this: Which interests you more — building a new feature from a clean spec, or untangling legacy code to make it work properly? Why?

Applications missing questions 6 and 7 will not be reviewed.
Top 3 Skills to Tag
Web Programming
Software Development Project Manager
Software QA Testing
Additional Skills
TypeScript / Node.js
REST API Design
PostgreSQL / Supabase
Third-Party API Integration
Authentication (OAuth / JWT)

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0009
Controller Execution Time ( Jobseekers / Job )  0.1022
Total Execution Time  0.1037
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,517,736 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Back-End-Developer-Core-API-Application-TypeScript-Nodejs-1625161
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0965 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0005   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1625161
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 810181
 LIMIT 1 
0.0873   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` = 1625161
AND `misc`.`idIS NULL 
0.0007   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-20',ej.date_added) duration_daysDATEDIFF('2026-06-20',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-20',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1625161' 
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1625161 
0.0041   UPDATE employer_jobs SET hit_counts '***Apr-16-2026=441***Apr-17-2026=81***Apr-18-2026=61***Apr-19-2026=55***Apr-20-2026=57***Apr-21-2026=44***Apr-22-2026=20***Apr-23-2026=20***Apr-24-2026=13***Apr-25-2026=7***Apr-26-2026=10***Apr-27-2026=7***Apr-28-2026=6***Apr-29-2026=8***Apr-30-2026=15***May-01-2026=9***May-02-2026=5***May-03-2026=12***May-04-2026=7***May-05-2026=3***May-06-2026=17***May-07-2026=7***May-08-2026=6***May-09-2026=15***May-10-2026=18***May-11-2026=12***May-12-2026=7***May-13-2026=8***May-14-2026=6***May-15-2026=3***May-16-2026=4***May-17-2026=4***May-18-2026=2***May-19-2026=13***May-20-2026=5***May-21-2026=8***May-22-2026=6***May-23-2026=5***May-24-2026=516***May-25-2026=161***May-26-2026=40***May-27-2026=19***May-28-2026=23***May-29-2026=16***May-30-2026=1***May-31-2026=7***Jun-01-2026=13***Jun-02-2026=12***Jun-03-2026=8***Jun-04-2026=9***Jun-05-2026=6***Jun-06-2026=9***Jun-07-2026=5***Jun-08-2026=16***Jun-09-2026=9***Jun-10-2026=6***Jun-11-2026=2***Jun-12-2026=12***Jun-13-2026=3***Jun-19-2026=1***Jun-20-2026=1' WHERE job_id'1625161'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Apr-2026=845***May-2026=963***Jun-2026=112' WHERE job_id'1625161'  
0.0010   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1625161' 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` = 1625161 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '810181'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0003   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)