准备软件工程面试这件事,很多人都有过类似的体验:花几个小时读文档、看教程、做项目,感觉概念都懂了。可当面试官开口让你解释 JavaScript 闭包、React 渲染、TypeScript 泛型或者前端架构时,才会发现——理解一个概念,和回答一道关于它的技术题,是两件不同的事。
开发者 Mahdi Hosseini 就从这个落差里做出了一个产品:DevTire,一个用多选题练习软件工程面试题的平台。他的出发点很直接:给开发者一个地方检验技术知识、练习重要概念,用更互动的方式准备技术面试。与其只是读一个主题,不如用题目挑战自己,顺便发现哪些地方还需要多花时间。
为什么要把题目聚到一起
技术面试准备往往要在不同资源之间来回切换:一个网站刷 JavaScript 题,另一个看 React 概念,TypeScript 翻文档,前端系统设计靠一堆文章。这些资源本身都有价值,但他想把不同的前端面试主题集中到一个地方。
他也不希望平台只停留在基础编程题。前端工程远不止写组件——开发者需要理解浏览器行为、异步 JavaScript、状态管理、渲染性能、架构决策,以及不同方案背后的取舍。这些正是他希望 DevTire 帮开发者练习的内容。
目前覆盖哪些主题
当前版本聚焦前端开发,题目按主题分类:
- HTML 与 CSS:语义化 HTML、布局、响应式设计与无障碍
- JavaScript:闭包、Promise、事件循环、运行时行为与核心语言概念
- TypeScript:类型系统、泛型、工具类型与类型安全模式
- React:组件、hooks、渲染、副作用与性能
- 状态管理:Context、Redux、Zustand 与共享状态策略
- Next.js:App Router、服务端渲染、缓存与路由
- 设计模式:组件组合与可维护的前端架构
- 前端系统设计:可扩展性、性能、架构与技术取舍
这样做的目的,是让每个科目都能单独练,而不是把前端开发当成一个巨大的整体来啃。
按经验水平分层
不是所有开发者需要同样的准备强度。准备第一份前端工作的人,和面试高级岗位的资深工程师,需求并不一样。因此 DevTire 把题目按三个经验层级组织:
- 初级:打牢基础理解
- 中级:深化技术知识,理解实际取舍
- 高级:练习进阶概念、架构、性能与工程决策
他的目标是让平台在开发者的整个学习路径上都有用,从巩固基础到准备更有挑战性的技术面试。
这只是开始
DevTire 仍在开发中。目前重心是前端开发,他在逐步扩充题库、改进平台。随着项目成长,他想探索的主题还有很多,包括前端之外的软件工程领域。他也希望根据开发者的实际使用情况持续改进体验。
在他看来,做一个有用的产品不只是加功能,还包括理解用户需要什么、让体验更直观、不断提升内容质量。他特别想听到的反馈是:哪些前端主题希望继续扩展、什么样的技术面试练习平台才算真正有用、接下来应该加哪些软件工程主题。
如果你正在准备技术面试,或者只是想检验一下自己的知识,可以去 DevTire 试几道题。用他的话说,让技术面试准备更实用一点,从一道题开始。
热门跟贴