Job Post: Full-Stack Developer (TypeScript / Next.js / Firebase)

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

TYPE OF WORK

Any

SALARY

$500-$2500 per month

HOURS PER WEEK

40

DATE UPDATED

Feb 1, 2026

JOB OVERVIEW

Company: Rehab Alpha
Location: Remote
Type: Part-time or Full-time
Start: ASAP
Pay: Competitive, based on skill

>About Rehab Alpha

Rehab Alpha is a modern EMR built for rehab therapy teams in skilled nursing and long-term care. We’re building a fast, clean, web-based system that helps clinicians document efficiently and stay compliant.

We’re hiring a developer in the Philippines to work directly with our CTO.

>Responsibilities

You will help our CTO with:

1) Unit Tests

Write and maintain automated tests

Improve coverage and prevent regressions

Add tests for new features as we ship

2) Documentation

Write clear technical documentation for internal use

Document flows, modules, setup steps, and development conventions

Keep documentation updated as the product evolves

3) Core Product Code

Build product features in an existing codebase

Fix bugs and refactor code

Contribute to ongoing improvements and performance

>Required Skills (Must Have)

You must be comfortable working with:

TypeScript

Next.js

Firebase

TailwindCSS

Playwright

Git / GitHub

>What We’re Looking For

Strong attention to detail

Clean, readable code

Able to work independently from written requirements

Good English communication (async)

Reliable and consistent output week to week

>How to Apply (Required)

Please include ALL of the following:

GitHub link (required)

Resume or LinkedIn

>Short written answers:

What have you tested using Playwright?

What’s an example of documentation you’ve written before?

What hours can you overlap with US time?

*Bonus: Send a 2–3 minute Loom video introducing yourself and walking through a repo you built.*

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0011
Controller Execution Time ( Jobseekers / Job )  0.0167
Total Execution Time  0.0186
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,492,520 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Job-Post-Full-Stack-Developer-TypeScript-Nextjs-Firebase-1559703
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0089 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0012   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1559703
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 597634
 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` = 1559703
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-19',ej.date_added) duration_daysDATEDIFF('2026-04-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-04-19',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1559703' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1559703 
0.0016   UPDATE employer_jobs SET hit_counts '***Jan-20-2026=28***Jan-21-2026=90***Jan-22-2026=40***Jan-23-2026=16***Jan-24-2026=13***Jan-25-2026=3***Jan-26-2026=12***Jan-27-2026=14***Jan-28-2026=6***Jan-29-2026=6***Jan-30-2026=6***Jan-31-2026=2***Feb-01-2026=96***Feb-02-2026=99***Feb-03-2026=33***Feb-04-2026=10***Feb-05-2026=12***Feb-06-2026=11***Feb-07-2026=10***Feb-08-2026=4***Feb-09-2026=9***Feb-10-2026=6***Feb-11-2026=3***Feb-12-2026=11***Feb-13-2026=5***Feb-14-2026=3***Feb-15-2026=6***Feb-16-2026=2***Feb-17-2026=3***Feb-18-2026=1***Feb-19-2026=5***Feb-20-2026=3***Feb-21-2026=1***Feb-22-2026=2***Feb-23-2026=2***Feb-24-2026=1***Feb-25-2026=1***Feb-26-2026=1***Feb-27-2026=1***Mar-01-2026=3***Mar-02-2026=3***Mar-03-2026=2***Mar-04-2026=1***Mar-06-2026=1***Mar-08-2026=1***Mar-09-2026=1***Mar-11-2026=2***Mar-13-2026=1***Mar-15-2026=2***Mar-18-2026=1***Mar-19-2026=2***Mar-20-2026=1***Mar-23-2026=4***Mar-26-2026=5***Mar-27-2026=4***Mar-28-2026=2***Mar-30-2026=1***Mar-31-2026=85***Apr-01-2026=47***Apr-03-2026=1***Apr-04-2026=1***Apr-06-2026=2***Apr-07-2026=2***Apr-11-2026=2***Apr-12-2026=1***Apr-14-2026=1***Apr-15-2026=3***Apr-17-2026=5***Apr-18-2026=28***Apr-19-2026=1' WHERE job_id'1559703'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jan-2026=236***Feb-2026=341***Mar-2026=122***Apr-2026=94' WHERE job_id'1559703'  
0.0009   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1559703' 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` = 1559703 
0.0017   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '597634'
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)