Backend / Full-Stack Engineer - Payments, Memberships & Mobile Apps (Remote)

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

TYPE OF WORK

Full Time

SALARY

2500

HOURS PER WEEK

32

DATE UPDATED

Aug 13, 2026

JOB OVERVIEW

Backend / Full-Stack Engineer - Payments, Memberships & Mobile
Apps (Remote)

Type:
- Contract
- Location: Remote
- Salary: EUR 2,500-3,500/month (full-time)


About the project:
We're building a world for a famous artist - an interactive membership platform with merch, digital
products, and mobile apps.

The web frontend is already being built in Vite + React (JavaScript/TypeScript). We're hiring someone
to own the payments, memberships, accounts, backend, and mobile app side, and collaborate with
our frontend developer.

What you'll work on:
- User signup / login / accounts
- Subscriptions & payments (Whop)
- Merch (Shopify)
- Digital products (videos, audio, cookbooks, downloads, etc.)
- Secure video hosting for long-form content (including 3-hour videos) unlocked only after payment,
not publicly sharable
- Access control so paid members unlock the right content
- Mobile apps for iPhone and Android
- Future progress features (milestones / member journey / light gamification)

Important product detail:
Subscriptions will use regional pricing by country (similar to Spotify), with protection against VPN
abuse. Full requirements will be shared with shortlisted candidates.

Who we're looking for:
- Experience shipping real payment/subscription products
- Strong backend skills (APIs, auth, webhooks, databases)
- Whop experience
- Shopify experience
- Experience with secure / gated video delivery (signed URLs, DRM, or equivalent)
- Able to build iOS + Android apps (React Native, Flutter, or similar)
- Comfortable working in a Vite + React frontend when integration is needed
- Clear communicator who works well with an existing frontend developer

How we work:
- You own backend, payments, memberships, and apps.
- Our frontend developer owns UI/UX.
- You'll collaborate regularly and may touch frontend code for integrations.

To apply:

Please send:
1. Short intro
2. Links to relevant work (payments, memberships, apps)
3. Your rate and availability
4. Your preferred stack

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0135
Total Execution Time  0.0148
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,489,736 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Backend-Full-Stack-Engineer-Payments-Memberships-Mobile-Apps-Remote-1708456
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0085 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1708456
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 586860
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1708456
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-16',ej.date_added) duration_daysDATEDIFF('2026-08-16',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-08-16',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1708456' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1708456 
0.0006   UPDATE employer_jobs SET hit_counts '***Aug-13-2026=551***Aug-14-2026=166***Aug-15-2026=80***Aug-16-2026=2' WHERE job_id'1708456'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Aug-2026=799' WHERE job_id'1708456'  
0.0009   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1708456' 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` = 1708456 
0.0031   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '586860'
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)