Skip to main content

Full-Stack Engineer (Frontend)

Tecnología
Zipdev
Hace 1 mesesHasta 7/4/2026
Tiempo completo100% Remoto

Descripción del puesto

Role Overview

Our client is building a greenfield web platform that delivers modern, cloud-based experiences aligned with Sensei Cloud. The application is modular in nature and will grow over time.

As a Full-Stack Engineer with a frontend focus, you will be a core contributor shaping the user experience and frontend architecture from the ground up — while remaining capable of working across the entire stack when needed. Your primary ownership area is the React/TypeScript frontend: building customer-facing features, implementing responsive layouts, and integrating with the Rails API. You will also contribute to backend work as the team and product evolve.

This is a full-product ownership role in a HIPAA-regulated healthcare environment, requiring strong technical judgment, attention to compliance, and close collaboration with your fellow engineers and product stakeholders.

You will work within a Human → AI → Human engineering workflow, using AI tools to accelerate development while maintaining full accountability for code quality and correctness.

Key ResponsibilitiesPrimary (Frontend)

Design, build, and maintain React components for a dental practice scheduling application

Implement responsive, mobile-first layouts using Tailwind CSS and standard breakpoints (sm, md, lg)

Integrate frontend features with a Rails-based API using Axios and TanStack Query for data fetching, caching, and mutations

Implement Azure AD B2C authentication using MSAL, including protected routes, token acquisition, and Axios interceptors

Maintain clean, readable TypeScript code that conforms to ESLint and Prettier standards

Shared (Full-Stack)

Contribute to Rails API endpoints, data models, and background jobs as needed

Collaborate closely with backend-focused engineers and product stakeholders throughout feature development

Participate in AI-augmented development workflows, reviewing and validating AI-generated code against acceptance criteria

Follow Git best practices: feature branches, pull requests for all changes, and conventional commit messages

Proactively update documentation when behavior or architecture changes

Core Technical Skills

Strong experience with TypeScript and React, including functional components and custom hooks

Experience consuming REST APIs using Axios, including authentication header injection

Proven ability to build responsive UIs using a utility-first CSS framework (Tailwind or similar)

Experience with server-state management libraries such as React Query, SWR, or RTK Query

Working knowledge of a server-side framework (Rails, Express, Django, or similar) — you don’t need to be an expert, but you should be comfortable reading and contributing to backend code

Familiarity with relational databases (PostgreSQL preferred) and REST API design

Familiarity with Git-based workflows, including pull requests and conventional commits

Comfortable reading and maintaining Markdown documentation

AI-Augmented Development (Required)

Hands-on experience using AI coding assistants (e.g., Claude Code, GitHub Copilot, Cursor) as part of daily development

Clear understanding of the Human -> AI -> Human review loop, with human ownership of all decisions

Ability to maintain supporting documentation such as READMEs, architecture notes, and AI configuration files (e.g., CLAUDE.md)

Awareness of AI traceability practices, including commit trailers, review checklists, and prompt hygiene

HIPAA & Compliance Awareness (Required)

Strong understanding that Protected Health Information (PHI) must never appear in code, tests, logs, commits, or error messages

Comfort working exclusively with synthetic or mock data (e.g., SYNTHETIC_-prefixed data)

Awareness of secure coding practices, including no hardcoded credentials, no PHI in browser storage, and structured logging

Technologies & Tools

You will work with the following technologies as part of the CSD Cloud Apps stack:

Frontend (Primary)

Language: TypeScript 5

Framework: React 19 (functional components, hooks)

Build Tooling: Vite 7

Styling: Tailwind CSS 4, clsx, tailwind-merge (cn() helper)

Server State: TanStack Query (React Query) v5

Routing: React Router v7

HTTP Client: Axios (with authentication interceptors)

Authentication: Azure AD B2C via MSAL

Code Quality: ESLint 9, Prettier 3

Backend (Collaborative)

Framework: Ruby on Rails 8.1 (API-only mode)

Database: PostgreSQL 16

Background Jobs: Sidekiq with Redis 7

Testing: RSpec, FactoryBot, WebMock, VCR

Shared

Development Environment: Docker Compose

Version Control: Git with feature branches and pull requests

Preferred / Nice-to-Have Qualifications

Familiarity with Azure AD B2C and MSAL authentication flows

Experience with Ruby on Rails, especially API-only mode

Healthcare or dental domain experience

Experience optimizing Vite builds and implementing code splitting

Exposure to WebSockets or real-time updates (e.g., ActionCable)

Experience contributing to a greenfield product from early stages

Work remotely Monday - Friday, 40 hours a week (no weekends)

Health Care Reimbursement

Active Lifestyle Reimbursement

Quarterly Home Office Reimbursement

Did we mention it's REMOTE?!!

One of our core values at Zipdev is "Be authentic." that's why we encourage you to answer the application form in your own words; we are interested in getting to know you, not a digital assistant.

Wondering how our remote environment or our payment method work? We've put together some helpful answers in our FAQs at the bottom our our career site. Take a look and let us know if you have any other questions!

Keywords
TypeScriptReactTailwind CssRailsAxiosTanstack QueryAzure Ad B2cMsalGitHipaaResponsive LayoutsFunctional ComponentsCustom HooksRest ApisPostgreSQLDocker ComposeFull-Stack EngineerFrontendGreenfieldWeb PlatformCloud-BasedSensei CloudRails ApiEslintPrettierProtected Health InformationAi Augmented DevelopmentGithub CopilotSidekiqRedisRspecFactorybotWebmockVcrRemote

¿Te interesa este puesto?