Senior Full-Stack Developer (Node.js / TypeScript) — Wix Apps & Self-Hosted Solutions

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

TYPE OF WORK

Any

WAGE / SALARY

N/A

HOURS PER WEEK

TBD

DATE UPDATED

Jun 9, 2026

JOB OVERVIEW

We’re looking for a strong full-stack developer with deep experience in Node.js + TypeScript to own the end-to-end delivery of complex applications. You will move beyond standard CLI builds to architect self-hosted applications and robust backend services that integrate seamlessly with the Wix ecosystem and other platforms to follow

We are a forward-thinking team that embraces modern efficiency: you will be expected to leverage AI tools like Claude Code and Cursor to accelerate development speed, streamline refactoring, and maintain high-velocity output without sacrificing quality.

The role would be developing custom apps for Wix App Market & Other Marketplaces as well like (Shopify / Webflow / Framer etc)


Key Responsibilities
*Architecture & Self-Hosted Apps
-Build Self-Hosted Solutions: Design and deploy fully self-hosted applications (beyond standard Wix CLI apps), managing the necessary infrastructure (hosting, networking, security, and external databases).
-Backend Development: Develop robust, scalable backend services in Node.js / TypeScript (REST endpoints, custom authentication, input validation, and structured logging).
-Data Strategy: Design clean data models and persistence layers, managing integrations between Wix Data, external SQL/NoSQL databases (Supabase/Firebase/Postgres), and caching strategies.

*Wix Ecosystem & Integrations
-Wix App Development: Build and maintain Wix apps using the Wix CLI, creating seamless dashboard extensions, admin UIs, and backend services.
-Deep Integrations: Utilize the Wix SDK and Platform APIs to interact with Wix Stores, Orders, Collections, and eCommerce domain objects.
-Feature Implementation: Build complex logic such as:
-Configurable settings panels and custom admin dashboards.
-"Additional Fees" logic and complex product-based rules.
-File upload and attachment flows.
-Service plugins and validation flows (e.g., shipping address verification).

Requirements (Must Have)
-Self-Hosted Infrastructure: Experience setting up and maintaining self-hosted Node.js applications (deployment, server management, environmental configuration).
-AI Adaptability: Enthusiasm for and experience with using AI tools (Claude Code, Cursor) to speed up coding tasks.
-Languages: Node.js, TypeScript, JavaScript
-Infrastructure: Self-Hosted Node.js environments, REST APIs, External DBs (Supabase/Firebase/etc.)
Frontend: React (Admin UI)

Nice to Have
-Proven Wix Experience:
-Building Wix CLI projects.
-Using Wix SDK and Platform APIs (Stores, eCommerce, OAuth).
-Implementing Wix Service Plugins and SPIs.
-Proven Marketplace Apps Development Experience:
E.g. Salesforce / Monday / Shopify / Webflow / Wix / AWS / Snowflake
-DevOps: Familiarity with Docker, CI/CD pipelines (GitHub Actions), and cloud hosting platforms (AWS, Vercel, Heroku, or similar).
-Reliability: Experience with logging, monitoring, and error tracking tools.

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.1295
Total Execution Time  0.1309
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,513,248 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Senior-Full-Stack-Developer-Nodejs-TypeScript-Wix-Apps-Self-Hosted-Solutions-1633243
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.1220 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0012   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1633243
 LIMIT 1 
0.0008   SELECT *
FROM `employers`
WHERE `employer_id` = 889355
 LIMIT 1 
0.0953   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` = 1633243
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-19',ej.date_added) duration_daysDATEDIFF('2026-06-19',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-19',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1633243' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1633243 
0.0014   UPDATE employer_jobs SET hit_counts '***Apr-27-2026=312***Apr-28-2026=89***Apr-29-2026=41***Apr-30-2026=18***May-01-2026=15***May-02-2026=7***May-03-2026=18***May-04-2026=24***May-05-2026=7***May-06-2026=8***May-07-2026=167***May-08-2026=50***May-09-2026=14***May-10-2026=10***May-11-2026=18***May-12-2026=18***May-13-2026=9***May-14-2026=267***May-15-2026=55***May-16-2026=21***May-17-2026=16***May-18-2026=35***May-19-2026=14***May-20-2026=22***May-21-2026=18***May-22-2026=10***May-23-2026=6***May-24-2026=4***May-25-2026=221***May-26-2026=54***May-27-2026=43***May-28-2026=25***May-29-2026=7***May-30-2026=1***May-31-2026=6***Jun-01-2026=9***Jun-02-2026=767***Jun-03-2026=27***Jun-04-2026=20***Jun-05-2026=12***Jun-06-2026=9***Jun-07-2026=9***Jun-08-2026=9***Jun-09-2026=186***Jun-10-2026=47***Jun-11-2026=33***Jun-12-2026=16***Jun-13-2026=7***Jun-19-2026=1' WHERE job_id'1633243'  
0.0005   UPDATE employer_jobs SET monthly_hits '***Apr-2026=460***May-2026=1190***Jun-2026=1151' WHERE job_id'1633243'  
0.0053   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1633243' AND status LIKE 'sent%' ORDER BY id DESC  
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1633243 
0.0152   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '889355'
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)