在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

全栈开发工程师就是个神话

  • 2015-09-15
  • 本文字数:1315 字

    阅读完需:约 4 分钟

“全栈开发工程师(full stack developer)”一词经常出现在企业招聘的岗位描述中。但 Hello Pretty 联合创始人兼首席技术官 Scott Hadfield 在近日发表的一篇博文中指出,全栈开发工程师就是一个神话,即使不完全如此,用人单位也很难找到一个这样的人。

为了进一步阐述这一观点,他列出了下面这样一个并不详尽的“栈”:

用人单位对全栈开发工程师的预期远远超出一般人的能力。全栈开发工程师至少需要对栈中的每个组件都有足够深入的了解,以便能做出明智的选择及向管理层解释。上图所示的技能表每年每层都会增加新的组件,每隔几年又会增加新的层。因此,Scott 认为,在招聘时寻找全栈开发工程师不仅不合理,简直就是愚蠢。

不过,Scott 也承认,确实有人具备全栈能力。也有许多距离全栈尚远,但仍然令人惊叹的开发人员、设计人员和项目管理人员。而有些自称全栈工程师的人也仅能列出上述一半多的组件,就更不用说组件之间的交互了。于是,他写道:

我看到的几乎所有使用全栈一词的情况(尤其是在招聘海报中),用人单位真正的意思只是寻找“令人惊叹的人”。

另外,Scott 指出,全栈开发工程师或许根本就不应该编写代码,而应该更多地充当系统架构师或集成工程师的角色。在使用“全栈开发工程师”这样一个流行术语时,应该说明是哪个“栈”,比如是 Web 栈,还是移动栈。

最后,Scott 总结道:

全栈开发工程师就是一个神话,不是因为不存在这样的人,而是因为这个术语没意义。

Scott 的博文在 Hacker News 上引发了激烈的讨论。网友 andrewstuart 对“全栈开发工程师”的理解在参与讨论的网友中具有一定的代表性:

我对全栈开发工程师的定义是,他们能够自己构建和部署一个完整的、可以工作的应用程序,而不需要其他任何人的帮助。那意味着他们能够编写前端、后端代码,能够配置服务器,当然还能够设计数据库表。

不过,有网友认为运维技术也应该是开发过程的核心部分。如果花费大量时间构建的应用程序因为运维细节无法按计划部署,那会导致大量的返工。

有许多网友都持有与 andrewstuart 类似的理解,他们认为全栈开发工程师并不是一个神话。BadassFractal 就是其中一例:

我就做全栈开发,包括 Ops(通过各种 CM 工具配置 AWS 并向上部署应用程序……)、DB(PostgreSQL 用了 5 年……)、后端(独立构建类似 Rails 的框架……)、前端(可以综合运行原始 DOM、Backbone 及 React)等所有这一切。

缺点是,我在其中任何一个方面都不是真正的核心专家,因此,其中任何一个领域中的任意一名优秀专家都比我强。

BadassFractal 的后一部分观点颇具代表性。jvehent 也认为,一个人可以成为全栈开发工程师,但却无法成为一名全栈专家。对此,有网友指出,企业应该给这两种人都留有空间。另有网友表示,如果企业在招聘时只盯准了前端和后端均是专家级的开发人员,那非常可惜,因为在一个多人团队中,他们全面的能力并不能得到有效的发挥。

网友们还有其它一些有趣的观点。感兴的读者可以自行阅读


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-09-15 19:0013078
用户头像

发布了 1008 篇内容, 共 450.8 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

架构实战营第 10 期 - 模块六:拆分电商为微服务

kaizen

「架构实战营」

迈铸半导体完成1500万Pre A+轮融资,用于实现规模化量产

硬科技星球

给webpack提了一个pr之后......

虎妞先生

前端 webpack #开源

云安全之浅谈密钥泄露

HummerCloud

云安全 密钥

神锁离线版和Bitwarden的自动填充:超级英雄 vs 被斗转星移的瞎鸟

神锁离线版

密码管理 密码管理器 密码安全 Bitwarden 神锁离线版

谈谈干前端三年的几点感受

虎妞先生

前端 成长 代码人生

云数据库 TiDB 试用实践——部署&运维

TiDB 社区干货传送门

版本测评

【SOP】新扩容节点与集群版本不一致处理

TiDB 社区干货传送门

实践案例 版本升级 管理与运维 故障排查/诊断 扩/缩容

众生皆苦,我选pnpm

虎妞先生

npm 原理 前端工程化 pnpm

微信小程序底层框架实现原理|万字长文

虎妞先生

微信小程序 前端 原理 架构、

# 文盘Rust -- rust 连接云上数仓 starwift

TiDB 社区干货传送门

开发语言

PingCAP黄东旭:Serverless是数据库的未来形态

TiDB 社区干货传送门

数据库前沿趋势

br备份时排除某个库

TiDB 社区干货传送门

实践案例 备份 & 恢复

Apipost如何快速生成并分享API实时文档

popo223344

后端

不常用但却常问的迭代器

虎妞先生

前端 ES6

辞旧岁立新年 | 展望前端工程师的2023

字节跳动终端技术

云原生 前端 前端工程师

java核心技术-多线程基础

蓦然

Spring Java

海外多语言数字货币交易app系统开发搭建

开发微hkkf5566

Vue3项目框架搭建封装,一次学习,终身受益【万字长文,满满干货】

虎妞先生

前端 前端架构 Vue 3 vue cli

十分钟用vitepress搭建项目文档

虎妞先生

前端 vite Vue 3

从零开始学习BOM&DOM

虎妞先生

前端 DOM

前端包管理工具 npm yarn cnpm npx

虎妞先生

前端 包管理工具 #面试

云数据库 TiDB试用

TiDB 社区干货传送门

七年的开源商业化探索,PingCAP 为什么选了这样一条路?

TiDB 社区干货传送门

数据库前沿趋势

TiKV RocksDB读写原理整理

TiDB 社区干货传送门

TiDB 底层架构 TiKV 底层架构

云数据库 TiDB 体验——部分故障问题与解决方法

TiDB 社区干货传送门

版本测评 新版本/特性解读 6.x 实践

软件测试/测试开发 | App自动化之dom结构和元素定位方式(包含滑动列表定位)

测试人

软件测试 自动化测试 测试开发

云原生场景下,如何缓减容器隔离漏洞,监控内核关键路径?

OpenCloudOS

Linux 云原生 服务器

畅销10年的数据库技术图书,当之无愧的霸主!还有谁?

博文视点Broadview

C++到Python全搞定,教你如何为FastDeploy贡献代码

飞桨PaddlePaddle

c++ paddle 飞桨

大型集团企业数据治理实践,推进全域数据资产体系建设 | 数字化标杆

袋鼠云数栈

全栈开发工程师就是个神话_语言 & 开发_谢丽_InfoQ精选文章