About the role
A true full-stack role - you'll work across both the frontend and backend of a live, evolving product in roughly equal measure, owning features end-to-end rather than staying in one lane and handing off.
What you’ll do
- • Build and maintain features across a React/Next.js/TypeScript frontend and a Node.js backend, moving fluidly between the two as the work demands
- • Design and implement REST APIs, including data modeling, schema design, and migrations on a relational database
- • Identify and resolve architectural inconsistencies in the existing codebase - state management patterns, duplicated logic, accumulated technical debt - as part of regular feature work, not as a separate cleanup project
- • Build and maintain systems that require real transactional precision - some of what you'll touch isn't a typical CRUD flow
- • Close the loop end-to-end: build a backend service and the frontend feature that consumes it
- • Contribute meaningfully to technical decisions and architecture direction, with real autonomy given the team's early stage
- • Work directly with the founder and other engineers to turn product priorities into shipped features
What you’ll bring
- • 4-5+ years of professional full-stack experience, with genuine depth on both sides - not a frontend developer who's dabbled in backend, or vice versa
- • Strong React/Next.js/TypeScript fundamentals
- • Strong Node.js backend fundamentals - comfortable designing REST APIs from scratch, not just consuming them
- • Real experience with a relational database and an ORM, including schema design and migrations
- • Comfortable with a state-management approach (Zustand, Redux, Context, or similar)
- • Experience with authentication/authorization fundamentals
- • Comfortable working in a codebase with real, existing technical debt, not only greenfield work
- • Self-directed - able to take ambiguous product direction and turn it into a technical plan without heavy oversight, given the team's size
