Part-Time Full-Stack Engineer (Next.js/TypeScript)

Posted yesterday

Worldwide

Summary

About The Legal Accountability Project (Clerkships Database) The Legal Accountability Project (LAP) is a U.S.-based nonprofit organization dedicated to ensuring that judicial law clerks have positive clerkship experiences, while extending support and resources to those who do not. Given the sensitivity of judicial information, the platform enforces strict security, access controls, audit logging, and privacy standards to protect all parties. Role Overview - Commitment: approximately 5 hours per week (ongoing, part-time) - Level: New or recent Computer Science graduate (or equivalent experience) - Location: Remote (with some US time-zone overlap preferred) - Start: As soon as available (ideally on/around September 5, 2026) You will be the primary (and currently sole) engineer maintaining and evolving a production-grade monorepo built with Next.js and TypeScript. The role blends feature development, bug fixing, security-first maintenance, performance tuning, and hands-on operations (managing Vercel deployments, database migrations, background jobs, etc.). You’ll inherit a well-structured codebase built over the past few years; the outgoing engineer will help get you up to speed to ensure a smooth handoff and onboarding. In this small, mission-driven team, you’ll work directly with the founder to plan features and resolve issues – strong communication and self-direction are key. Core Responsibilities - Routine maintenance of the platform, including code base check-in 1-2 times per month - Security and access control: Uphold role-based permissions, daily access limits, watermarking/content protections, and comprehensive audit logging. - Auth and onboarding: Support email-based authentication (magic links), manage role distinctions (student/reader/admin), and refine school and reader onboarding flows. - Payments and subscriptions: Maintain our Stripe integration (multiple price points, eligibility gating) and related user account flags. - Surveys and research workflows: Maintain various survey modules (clerkship experience surveys, feedback surveys, midpoint surveys, special campaigns), including background notifications, status locking, and result handling. - Background jobs and real-time edges: Operate and improve Upstash QStash jobs (reminders, locks, summaries) and manage Redis-backed session controls for concurrency and rate limiting. - Data and persistence: Write and review Prisma schema migrations, keep the database structure healthy, and use Prisma Accelerate with PostgreSQL efficiently for query performance. - Email and notifications: Use existing email templates and our Nodemailer setup to send transactional emails; update copy and templates as needed for new features or campaigns. - Operations and observability: Manage Vercel environments and deployments, monitor performance and costs, and instrument analytics where appropriate for front-end usage tracking. - Analytics and reporting: Create internal dashboards and reporting tools to visualize trends in our data and usage (e.g., aggregate survey feedback by various criteria, user activity leaderboards) for the team’s insights. - Documentation and DX: Keep the README and runbooks up to date; improve developer ergonomics, CI/CD reliability, and overall dev workflow (Turborepo, build scripts, etc.) as needed. Minimum Qualifications - Strong TypeScript and React fundamentals. - Experience with Next.js (using the pages router), Node.js, and modern frontend development patterns. - Comfortable with PostgreSQL and the Prisma ORM (writing schema, running migrations, crafting queries). - Understanding of API design, input validation, and maintaining end-to-end type safety across client and server. - Familiarity with Git/GitHub workflows (PRs, code reviews) and general monorepo management. - Awareness of web security best practices (authentication/authorization, preventing CSRF/XSS, secret management). - Excellent written communication; highly organized and dependable working in a part-time, asynchronous environment. Nice-to-Have Experience (Stack-Aligned) - tRPC v10 for type-safe client–server contracts. - NextAuth (email provider) and advanced session management/typing. - Stripe integration (Checkout, webhooks, tiered pricing and gating). - Tailwind CSS and Radix UI component libraries. - Prisma Accelerate usage and query performance profiling/tuning. - Upstash services: using Redis (for session store, rate limiting) and QStash (for scheduled jobs). - Supabase (for storage, e.g., ID photo uploads). - Nodemailer and production email deliverability practices. - Vercel deployment pipelines, environment variable management, and CI/CD best practices. - Turborepo monorepo workflows and build optimizations. - Experience with content protection techniques (watermarking, restricted UI elements, audit logging). Primary Tech Stack - Framework: Next.js (TypeScript, pages router) - API: tRPC v10 (with superjson); data validation with Zod - Auth: NextAuth (passwordless email magic links) with a Prisma adapter - Database: PostgreSQL + Prisma ORM (including Prisma Accelerate for caching) - Payments: Stripe (multiple price tiers and subscriptions) - Styling: Tailwind CSS + Radix UI - Background Jobs: Upstash QStash (for scheduled tasks) - Caching/State: Upstash Redis (for session management and rate limiting) - Storage: Supabase (for file storage, e.g., user ID uploads) - Email: Nodemailer with React-based email templates - Hosting: Vercel (multiple environments for dev/staging/prod) - Monorepo Tooling: Turborepo (for managing builds and packages) - Analytics: Google Analytics Examples of What You’ll Work On - Refine the discovery/search UX and performance for judge profiles and survey content. - Extend the survey system (e.g., add new feedback or midpoint surveys) and improve the admin interfaces around those workflows. - Preserve and tune the daily access limits and detailed access logs for sensitive content. - Maintain and adjust Stripe-based gating for user roles; improve the onboarding UX around payments and access. - Improve our Upstash QStash job pipelines (notification reminders, data locking, summary generation). - Maintain the Redis-backed session controls to ensure fair use and prevent excessive access in real time. - Keep the Prisma schema and migrations healthy; optimize critical queries using tools like Prisma Accelerate. - Update and refine email templates and transactional email flows as our programs evolve. - Implement an analytics feature to generate reports on survey trends (e.g., aggregated feedback by circuit or judge background). - Enhance email outreach tools to send survey invitations through the platform (skipping users who already submitted or opted out). How We Work - Async-first, remote-friendly. We rely on clear written updates to stay aligned, since you’ll be collaborating directly with a non-technical founder. - Lightweight process: small PRs, thoughtful code reviews, and pragmatic tests where they add value. - Security is non-negotiable: we prioritize data protection, audit logging, privacy, and traceability in every change. Compensation and Logistics - Type: Part-time contractor (approximately 5 hrs/week, mostly routine maintenance of the platform, occasional projects, and emergencies). - Equipment: BYO developer setup (we’ll provide access to any required cloud services and software). How to Apply Please submit the following: - A resume or LinkedIn profile. - Your GitHub link (or code samples of relevant TypeScript/React projects). - A few sentences about your experience with any of the following: Next.js, Prisma, tRPC, Stripe, Redis, QStash (or similar technologies). - Your weekly availability and time zone. Applications received by August 14 will be given priority. — If you’re excited to learn quickly and own meaningful slices of a mission-driven, security-sensitive product, we’d love to hear from you. The outgoing engineer is ready to help you hit the ground running – come help us protect law clerks and bring transparency to the judiciary! More information can be found about LAP here: https://www.legalaccountabilityproject.org/.

  • Less than 30 hrs/week
    Hourly
  • 6+ months
    Duration
  • Entry level
    Experience Level
  • Remote Job
  • Ongoing project
    Project Type
Skills and Expertise
Mandatory skills
Next.js
GitHub
PostgreSQL
Activity on this job
  • Proposals:20 to 50
  • Interviewing:
    0
  • Invites sent:
    0
  • Unanswered invites:
    0
About the client
Member since Aug 9, 2025
  • United States
    10:09 AM
  • Legal
    Small company (2-9 people)

Explore similar jobs on Upwork

Shopify Website Development for Arc GISHourly‐ Posted 1 month ago
HTML
Web Development
Shopify
Shopify Templates
Create Engaging Ads for SaaS Web AppFixed-price‐ Posted 2 weeks ago
HTML5
JavaScript
Web Design
Graphic Design

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers earned on Upwork in 2020

Find the best freelance jobs

Growing your career is as easy as creating a free profile and finding work like this that fits your skills.

Trusted by

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo