Backend Developer

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

TYPE OF WORK

Full Time

WAGE / SALARY

Up for discussion

HOURS PER WEEK

40

DATE UPDATED

May 27, 2026

JOB OVERVIEW

Backend Developer — Spare Hand StudentsSpare Hand Students is a fast-growing marketplace platform connecting college students with homeowners and businesses who need help with lawn care, cleaning, errands, moving, and more. We operate across multiple cities in Texas and are scaling fast. We are looking for a strong backend developer who knows C# .NET inside and out and uses AI tools as a core part of how they work — not as a crutch, but as a force multiplier that helps them ship better code faster.This is a hands-on role on a small, high-output team. You will work directly with our founders and existing developers on live production systems that real students and real customers depend on every day. The problems are interesting, the stakes are real, and the work you ship will be visible immediately.What you will be building
Reliability and strike system — automated logic that tracks student no-shows, cancellations, and suspensions with escalating consequences
Dynamic commission rate engine — per-job fee calculation that adjusts based on star ratings, performance criteria, and strike history
Recurring job scheduling — backend logic for biweekly and monthly job schedules with automated reminders and matching
Referral attribution engine — token tracking, deferred deep link attribution, dual-sided reward triggers, and fraud prevention
Real-time push notification infrastructure — job alerts, confirmation gates, escalation logic, and multi-push sequences for unmatched jobs
Admin panel APIs — endpoints that give the operations team full visibility and control over jobs, students, customers, and i ----------
Payment processing — Stripe integration for job payments, tip processing, wallet credits, and commission splits
SendGrid automation — API integration for transactional emails, post-job sequences, and win-back campaigns
Authentication systems — Apple Passkey, Samsung Passkey, phone number OTP verification, and session management
Fraud prevention — device fingerprinting, IP matching, velocity checks, and duplicate account detection
Technical requirementsBackend — C# / .NET (required, must be strong)

Production-proven experience with C# ---------- — this is non-negotiable
REST API design, versioning, and documentation
Relational database design — schema architecture, migrations, indexing, query optimisation
Background jobs, scheduled tasks, queue processing, and event-driven logic
Stripe or equivalent payment API integration
Push notification delivery via APNs and FCM
SendGrid transactional and marketing API
Authentication — JWT, OAuth, OTP, passkey standards
Security fundamentals — input validation, rate limiting, fraud detection patterns
Experience with automated rules engines and threshold-based consequence systems
AI proficiency (required)

You actively use AI coding tools — Claude, ChatGPT, GitHub Copilot, or similar — as a regular part of your development workflow
You know how to write precise, well-structured prompts that get useful output rather than generic code you have to rewrite
You use AI to accelerate code review, catch edge cases, generate boilerplate, write tests, and think through architecture — not just autocomplete
You understand the limitations of AI-generated code and always review, test, and own what you ship
Bonus: experience building features that integrate AI into the product itself — smart matching, automated content, anomaly detection, or similar
What would make you stand out
You have built a marketplace, gig platform, or labour dispatch system before
You have designed a strike or reputation system with automated enforcement logic
You have built a dynamic fee or commission calculation engine
You understand referral attribution end to end — from link click through deferred deep link install to reward trigger
You have built fraud prevention systems — duplicate account detection, device fingerprinting, velocity throttling
You have worked directly with a small founding team and are comfortable owning backend systems end to end without hand-holding
You can read someone else's codebase, understand it quickly, and contribute without breaking things

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.0895
Total Execution Time  0.0908
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,518,504 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Backend-Developer-1656264
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0833 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1656264
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 788098
 LIMIT 1 
0.0761   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` = 1656264
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 '1656264' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1656264 
0.0013   UPDATE employer_jobs SET hit_counts '***May-27-2026=271***May-28-2026=148***May-29-2026=65***May-30-2026=30***May-31-2026=34***Jun-01-2026=28***Jun-02-2026=40***Jun-03-2026=32***Jun-04-2026=16***Jun-05-2026=14***Jun-06-2026=14***Jun-07-2026=8***Jun-08-2026=11***Jun-09-2026=14***Jun-10-2026=13***Jun-11-2026=22***Jun-12-2026=15***Jun-13-2026=8***Jun-19-2026=1' WHERE job_id'1656264'  
0.0006   UPDATE employer_jobs SET monthly_hits '***May-2026=548***Jun-2026=236' WHERE job_id'1656264'  
0.0012   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1656264' 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` = 1656264 
0.0012   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '788098'
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)