Skip to content

Instantly share code, notes, and snippets.

@rayhu
Last active April 9, 2026 17:19
Show Gist options
  • Select an option

  • Save rayhu/7e248a5e0ac6c0f410715f2d2fab612d to your computer and use it in GitHub Desktop.

Select an option

Save rayhu/7e248a5e0ac6c0f410715f2d2fab612d to your computer and use it in GitHub Desktop.
Software Engineer (Full-Stack / Backend) — Job Description · 工程师职位描述

Software Engineer (Full-Stack / Backend)

Contract / Freelance · Remote · TypeScript + Node.js


我们是一个小而专注的工程团队,正在寻找能独立交付、有产品判断力的工程师加入。 我们不需要你执行规格书——我们需要你理解问题、提出方案、推动落地。

We're a small, focused engineering team looking for engineers who can ship independently and think like product owners. We don't need spec executors — we need people who understand problems, propose solutions, and get things done.


关于这个角色 / About the Role

这是一个偏后端的全栈工程师职位,主要负责构建和维护面向生产的 REST API 服务,以及与之配套的前端交互层。

This is a backend-leaning full-stack engineering role focused on building and maintaining production-grade REST API services and the frontend surfaces that consume them.


职责 / Responsibilities

中文

  • 设计并实现清晰、可扩展的 REST API 接口
  • 参与功能从需求讨论到上线的全流程
  • 在模糊需求下做出合理的技术决策,并主动沟通
  • 编写可读性强、易于他人维护的代码
  • 在 code review 中提供有建设性的反馈
  • 发现系统中的问题并主动推动改进,而不是等待被安排
  • 与产品和设计紧密协作,理解用户需求而不仅仅是功能需求

English

  • Design and implement clean, extensible REST API endpoints
  • Own features end-to-end — from requirements discussion to production
  • Make sound technical decisions under ambiguity and communicate them clearly
  • Write code that others can read, extend, and maintain with confidence
  • Give constructive, substantive code review feedback
  • Identify system-level problems proactively — don't wait to be assigned
  • Collaborate closely with product and design to understand user needs, not just feature specs

我们在找的人 / What We're Looking For

中文

  • 3 年以上使用 TypeScript / Node.js 的工程经验
  • 熟悉 REST API 设计原则,理解什么是好的 API 契约
  • 能在有限上下文下独立推进工作,不需要手把手
  • 能清晰表达技术决策的依据,无论是在 PR 描述还是异步讨论中
  • 有分层架构意识:知道什么应该放在哪一层,为什么
  • 英语书面沟通流畅(口语不作要求)

English

  • 3+ years of hands-on experience with TypeScript / Node.js
  • Solid understanding of REST API design — knows what a good API contract looks like
  • Can drive work forward with limited context and minimal hand-holding
  • Communicates technical decisions clearly, in PRs and async discussions
  • Thinks in layers — knows where things belong architecturally and why
  • Proficient written English (spoken English not required)

加分项 / Nice to Have

  • 有独立产品或开源项目经验
  • 熟悉 PostgreSQL 或其他关系型数据库
  • 了解 API 限流、缓存、认证等生产环境常见问题
  • 写过真正有价值的测试(不是为了覆盖率)
  • 能读懂并改进别人写的烂代码

  • Prior experience building an independent product or open-source project
  • Familiarity with PostgreSQL or another relational database
  • Awareness of production concerns: rate limiting, caching, auth patterns
  • Has written tests that are actually useful (not just for coverage metrics)
  • Can read and improve messy code written by someone else

我们不适合 / This Probably Isn't For You If

  • 你需要详细的规格书才能开始工作 / You need a detailed spec before you can start
  • 你把"完成任务"定义为"代码合并了" / You consider "done" to mean "PR merged"
  • 你不习惯在 PR 里解释自己的决策 / You don't like explaining your decisions in writing
  • 你期望非常稳定、变化很少的工作环境 / You prefer a stable, low-change environment

如何申请 / How to Apply

我们通过一个小型技术评估来了解你的工作方式——不是算法题,是真实的工程问题。

We evaluate candidates through a short take-home exercise — not algorithm puzzles, but real engineering problems.

👉 评估仓库 / Eval Repo: https://github.com/accessible-justice/eng-eval

请完成至少 Issue 1,其余根据时间和兴趣选择。通过 PR 提交,PR 描述里告诉我们你的思路。

Complete at least Issue 1, then pick from the rest based on your time and interest. Submit via pull request — use the PR description to walk us through your thinking.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment