跳转到内容
Vocaid
产品集成职位挑战API 文档合作伙伴招聘
Vocaid

将面试转化为可量化的进步。

产品

  • 口语练习
  • 推荐好友,赚取 Vocoins

开发者

  • API 参考

公司

  • 关于我们
  • 研究社区
  • 企业版
  • 赞助商
  • 挑战
  • 合作伙伴
  • Vocaid 宣言

法律

  • 隐私政策
  • 使用条款
  • AI透明度

© 2026 Vocaid. 保留所有权利。

本网站受reCAPTCHA保护,适用Google隐私政策和服务条款。

Vocaid LLC — 30 N Gould St, Ste R, Sheridan, WY 82801
    Fullstack Software Engineer — 招聘 | Vocaid
    ← 返回招聘列表

    Fullstack Software Engineer

    EngineeringRemote (Global)远程中级
    申请此职位

    必备技能

    • TypeScript
    • React
    • Next.js
    • Python
    • FastAPI

    加分技能

    • Tailwind CSS
    • PostgreSQL
    • Vercel
    • shadcn/ui
    • i18n

    职位介绍

    ABOUT VOCAID Vocaid is an AI voice interview platform. Candidates hold a real spoken interview with an AI interviewer that responds in the moment, scores the conversation, and returns structured feedback — in any of 10 languages. The same engine powers our B2B hiring product. We are early-stage and remote-first, and we run the company on our own product: the role you are reading about was posted, and will be screened, through Vocaid itself. THE ROLE You would ship user-facing features the whole way down: the component, the endpoint behind it, the table behind that, and the tests over all three. In practice that means moving between a Next.js 16 App Router codebase and a Python/FastAPI service several times a day. What you would touch: • Next.js 16 (App Router, RSC), TypeScript, Tailwind, shadcn/ui • Python 3.12, FastAPI, SQLAlchemy 2.0, PostgreSQL • next-intl across 10 locales, with parity enforced in CI • Vercel for the client, Azure Container Apps for the API Problems genuinely open right now: • Server/client component boundaries on pages that mix cached marketing content with live authenticated data, where getting the split wrong is either a stale page or a needless round trip. • Caching that has to be invalidated deliberately. A page can render fresh and still serve stale data from a separate fetch cache — we have been bitten by exactly this and now purge by tag. • Ten locales as a first-class constraint, not a translation chore: a missing key renders a dotted path to a real user, so parity is enforced rather than hoped for. • Interview surfaces that must degrade honestly when the network wobbles mid-session — a candidate is speaking, and a silent failure is the worst possible outcome. • Accessibility and responsive behaviour on a product people use under genuine stress, often on a phone, often not in their first language. You would work directly with the founder and own features from design through to production. JOB REQUIREMENTS • You have shipped production React, ideally Next.js, and are comfortable with TypeScript beyond sprinkling `any`. • You can write the backend for your own feature in Python — FastAPI, Django or similar — rather than handing it over. • You can model relational data and write a migration you would run on a live database. • You have opinions about responsive layout and accessibility, and you test them rather than assuming. • You write clearly for an async remote team. We do not require a degree and we do not filter on where you worked. Point us at something you built and can reason about. DESIRED None of these are required. Any one of them is interesting to us. • Tailwind and shadcn/ui in a real codebase, not a tutorial. • Vercel specifics: ISR, edge runtime, and how its caching actually behaves. • i18n at scale — next-intl or comparable, ICU message formats, RTL. • SQLAlchemy and async Python. • Design sense: you can take a rough sketch to something shippable. • Early-stage experience where you set the conventions. HOW WE HIRE, AND YOUR DATA We use our own product in this hiring process. If you apply, your CV is parsed and scored automatically to produce a match score, and you may be invited to an AI-conducted interview that is recorded, transcribed and scored. That is an automated employment decision tool, and we tell you so up front rather than in the small print. A human reviews every decision that affects your application. Automated output informs that review; it does not replace it. You may ask for a human-only review, or ask what an automated score was based on, by writing to support@vocaid.ai — asking will not count against you. How the models are used, and what we do and do not claim for them, is set out at /ai-transparency. What we collect, how long we keep it and how to have it deleted is at /privacy-policy. Where local law gives you further rights over automated decisions or your data, those rights apply and we will honour them. Vocaid hires on ability. We do not discriminate on race, colour, ancestry, national origin, religion, sex, gender identity or expression, sexual orientation, age, disability, medical condition, marital or veteran status, or any other characteristic protected by applicable law. Tell us at support@vocaid.ai if you need an adjustment to any stage of this process, and we will arrange it. This posting is not an offer of employment and does not form a contract. Engagement type, jurisdiction and compensation are settled in writing before any offer.