焦点

相关书目

全栈开发人员、全栈软件工程师、全栈网页开发人员、全栈架构师、全栈程序员、全栈专家、全栈顾问、全栈解决方案工程师、全栈开发工程师、全栈应用程序开发人员

职位描述

打造一个定制网站需要投入大量工作,这也是为什么有些开发者选择只专注于一个领域。例如,前端开发者专注于用户可见且可交互的部分,而后端开发者则负责幕后的技术细节。然而,全栈开发者则包揽了所有工作(注:全栈工程师本质上是资深级别的全栈开发者,仅供参考)。 
 
有些客户不想费心去搞清楚谁负责什么,他们只希望找到一个能包揽所有工作的人。况且,根据项目不同,前端和后端的工作职责本就可能存在重叠。话虽如此,并非所有全栈工程师都负责从零开始构建整个网站。在项目从构思阶段推进到开发和上线的过程中,他们可能仍会与团队协作。 
 
对前后端运作机制的扎实掌握,赋予全栈工程师显著的优势。无论问题出在何处,只要需要协助,他们都能迅速介入解决。 全栈工程师本质上是将两个(或更多)职业领域融合为一的复合型人才!他们精通各个领域,从HTML、CSS和JavaScript等前端语言,到PHP、Ruby或Python等后端语言。其他技能还可能包括设计、用户体验和项目管理。 

职业生涯的回报之处
  • 全面参与客户网站的开发工作
  • 精通多种编程语言和工具
  • 探索网站建设中无限的可能性
  • 打造功能强大、技术领先的网站,助力企业在各自领域占据主导地位
  • 掌握可在全球任何地方远程运用的技能
内幕消息
职位职责

工作时间表

  • 全栈工程师的工作量往往十分繁重。作为IT界相对稀缺(甚至有人称之为“传说中”的)人才,这类从业者通常需要按标准工时全职工作。目前,高素质人才的供给无法满足市场需求,因此某些岗位可能需要加班。许多开发人员选择在家远程办公或以合同工形式工作。 此外,越来越多的自由职业者正涌入这一领域,其中许多人可能在海外工作,因此能提供极具竞争力的报价。  

主要职责

  • 作为一名工程师,你需要承担项目管理工作 
  • 与客户、用户体验(UX)和用户界面(UI)设计师以及其他开发人员会面,讨论所需功能、网站设计及内容构想 
  • 规划所需的技术施工工作
  • 建立新增頁面的流程 
  • 使用多种编程语言编写实用代码 
  • 开发前端架构和后端应用程序
  • 构建数据库和服务
  • 错误检测与响应性测试
  • 确保移动端适配
  • 使用应用程序接口(API)
  • 根据其他团队成员和客户的反馈制作图形
  • 对现有网站进行升级,以添加新的设计元素或功能
  • 其他职责
  • 进行全面测试,以确保代码按预期运行
  • 为防万一,请备份文件
  • 紧跟行业相关变化与趋势
工作所需技能

软技能

  • 能够从建设性反馈中吸取经验
  • 注重细节
  • 对用户心理的了解
  • 富有创意和艺术性
  • 客户服务技能
  • 果断
  • 条理分明 
  • 领导力和管理能力
  • 耐心且善于分析
  • 电话和电子邮件礼仪 
  • 出色的沟通能力
  • 注重团队合作,以目标为导向
  • 时间管理能力

技术技能

  • 前端基础 
  • 服务器端语言
  • 掌握数据库技术
  • 自动化工具 
  • 命令行 
  • CSS 预处理器 
  • JavaScript 框架 
  • jQuery 
  • 响应式设计
  • 程序的测试与调试 
  • 版本控制软件 
不同类型的组织
  • 学术机构
  • 计算机系统设计公司
  • 公司
  • 政府机构
  • 医疗行业
  • 大型企业和机构 
  • 管理咨询公司
  • 媒体与娱乐
  • 军事 
  • 出版 
  • 自雇人士
期望与牺牲

如今,谁没有自己的网站呢?从政府机构、私营企业到电影制片厂和音乐人,网站已成为现代社会分享信息、销售产品与服务的主要途径。对于用户或消费者而言,网站往往是他们与某家机构建立联系的第一个(有时甚至是唯一)渠道。他们的使用体验将决定他们是继续留在网站上进行互动(或购买商品),还是选择离开并另寻他处。 
 
在很大程度上,这一决定取决于全栈工程师的工作完成质量。 那些缺乏吸引力、缺乏说服力、导航困难或漏洞百出的网站,往往会在用户有机会购买任何商品之前就扼杀他们的兴趣。一个构建不佳的网站还会使组织(及其用户数据)面临安全漏洞的风险。此类安全事件会剥夺用户的信任,从而摧毁品牌的声誉(尤其是当数百万人的数据同时被盗时)。 
 
全栈工程师肩负着双重压力:既要打造引人入胜、响应迅速的网站以推动销售或用户互动,同时还要保障组织和用户的安全。一旦出现问题或与预期不符,管理者就会追究网站开发者的责任。正如俗语所说:若受不了热,就别进厨房!

当前趋势

随着实体店和代理机构持续面临客流下滑的困境,企业纷纷调整策略,将业务重心日益转向线上及移动应用。众所周知,亚马逊、苹果和奈飞彻底改变了我们的购物、媒体消费和社交方式。但如今,几乎所有公司都加入了这一行列。 
 
从初创公司、小型企业到数字创业者,人人都想要一个网站,但并非所有人的预算都相同。Wix、Squarespace、Site123、GoDaddy和WordPress等自助建站平台,让快速搭建低成本网站变得前所未有的简单。与此同时,对于那些缺乏基础技能、不愿学习,或者单纯需要更个性化定制服务的客户而言,全栈工程师依然是备受追捧的热门人才。  
 
然而,并非所有企业都有能力聘请全职工程师,因此许多工程师通过短期合同接单,通常以远程方式工作。其弊端在于,部分希望控制成本的企业会转向海外和/或自由职业人才。这意味着全栈工程师必须保持技能的敏锐度,并设法让自己的服务在竞争中脱颖而出。 

从事这一职业的人年轻时喜欢做些什么……

正如你所料,全栈工程师很可能一直对计算机和技术充满兴趣,并且可能喜欢待在室内。虽然社交能力是这一职业领域的重要组成部分,但这些从业者在年轻时大概已经习惯了长时间独自工作。他们富有创造力、求知欲强,并且渴望探索新事物,尤其是在大多数人一无所知的领域。从字面意义上说,他们确实是在学习新语言,只不过这些语言是供计算机使用的,而非人类。 
 
要想成为一名成功的全栈工程师,对艺术和设计抱有浓厚兴趣会很有帮助。这些兴趣通常是在成长过程中培养出来的,无论是在家里还是在学校。这听起来似乎这份工作需要“独行侠”类型的人格,但实际上,其中涉及相当多的团队合作与协作。 全栈工程师通常乐于加入团队、参与社交活动,甚至主动组织活动。他们擅长“把握全局”,制定目标并管理任务,以确保最终目标得以实现。 

“未来工作”动态

具备自主决策能力的AI工具如今能够根据自然语言提示生成前端和后端代码,从而减少日常开发工作。全栈工程师因其在设计系统架构、集成AI工具以及解决复杂的跨平台难题方面的能力,正日益受到重视。这一角色的职责正从编写所有代码转向协调智能系统。

所需的教育和培训
  • 全栈工程师通常需要拥有计算机科学或相关领域的学士学位
  • 编程技能和实际工作经验至关重要
    • 前端基础——HTML、CSS、JavaScript 语言
    • 服务器端语言 — Python、Ruby、Java、PHP、.Net
    • 数据库技术 — MySQL、Oracle、MongoDB
    • 自动化工具(Grunt、gulp)
    • 命令行 
    • Flash
    • CSS 预处理器 — Sass、Less、Stylus
    • JavaScript 框架 — Ember、React、Bootstrap、AngularJS
    • jQuery 
    • 响应式设计
    • 程序的测试与调试 
    • 版本控制软件(Git)
  • 具备敏捷方法论的实践经验
  • 旨在培养软技能的课程,例如英语流利表达、清晰的书面与口头表达能力、团队合作以及领导力
  • 您可以通过以下方式进行自学:
    • LinkedIn Learning 的全栈课程
    • Udacity的全栈网页开发者课程
    • CompTIA IT基础认证
    • Udemy:
      • 2020年全套网页开发速成班 
    • Coursera:
      • 全栈网页与多平台移动应用开发专项课程
      • React 全栈 Web 开发专项课程 
      • 《人人都能学的网页设计:网页开发与编程基础专项课程》 
      • 响应式网站开发与设计专项课程 
  • edX 全栈网页开发课程 (edX)
  • Pluralsight
  • 供应商/技术特定认证,例如 Google Cloud、RedHat、Microsoft(MTA、MSCA、MSCE)
选择项目时应关注的要点
  • 并非所有大学学位都能为你提供该职业领域所需的实用技能,因此请考虑哪些课程能提供与编程训练营相同的实践体验 
  • 仔细查看各专业毕业生的就业情况统计数据
  • 了解所有职业服务,确保它们能为你提供简历撰写、模拟面试或其他方面的帮助
  • 阅读教师简介;了解该项目的设施、研究领域及资金支持
  • 确保该机构已获得全面认证
  • 权衡在线课程与混合课程的利弊
  • 请记住,“全栈开发者”和“全栈工程师”是有区别的。Stack Overflow 的一项调查显示,25% 的专业开发者没有本科学位。在拥有本科学位的开发者中,有三分之一并非计算机科学或软件工程专业的毕业生。工程师职位通常更倾向于要求具备学位。
高中和大学期间的活动
  • 多加练习,再多加练习!你所需的大部分基础知识都可以在业余时间自学(请参阅上文的“教育与培训”建议)
  • 我们之前提到过“实践”吗?请坚持练习,但不要过于专注于某个特定领域;全栈工程师需要掌握多种技能
    • 需要注意的是,关于“全栈开发者”这一概念,以及一个人究竟能在多大程度上真正精通如此多的技能,目前存在一些争议。其中关键在于尽早开始、有条不紊,并高效利用时间!
  • 建立一个已完成项目的作品集,其中包含详细记录:你做了什么、遇到了哪些障碍以及采取了哪些解决方案
  • 帮助你的学校和朋友搭建网站,同时获得一些免费的实战练习机会
  • 寻找能提供实践(且带薪!)工作经验的实习机会
  • 在Upwork上建立自由职业者的信誉,并开始积累评价
  • 加入计算机社团;与同龄人建立联系,并寻找经验丰富的程序员来指导你 
  • 学习沟通的艺术!学会以专业、富有感染力且充满自信的方式进行口头表达、倾听和写作
  • 不要故步自封。通过大量阅读和实践来保持技能的敏锐度。
  • 通过撰写知识性博客或制作YouTube视频,以线下或线上形式指导他人。多练习向他人讲解知识,并听取观众的反馈
  • 阅读文章并参与 Quora、Reddit、Dev.to 及其他平台上的讨论
典型路线图
Gladeo 全栈工程师职业发展路径
如何找到第一份工作
  • 参加TripleByte 测评,若通过筛选测试,他们将为您对接雇主
  • 通过Indeed、Monster、USAJobs、ZipRecruiter、LinkedIn、Velvet Jobs和Glassdoor查找职位空缺
  • 告诉你的社交圈你正在求职。请他们如果有好的职位线索,务必与你联系
  • 请向所在学院的系办公室或职业发展中心咨询有关招聘会、招聘活动、实习机会以及简历撰写和面试练习等其他协助的信息
  • 请仔细阅读招聘启事中列出的所需经验和技能
  • 竞争非常激烈,因此请将精力集中在您条件最符合的职位上,并针对申请的每个具体职位量身定制简历
  • 像招聘人员一样思考!阅读HackerEarth的《如何招聘全栈开发者》 
  • 请附上您的全栈作品集链接,其中应列出您的技术技能、个人项目以及在 GitHub、CodePen 或其他网站上的项目
  • 提供背景信息——说明“谁、什么、哪里、何时、为何、如何”
  • 没必要从头开始制作简历;网上有大量优秀的可自定义模板
  • 在面试中留下令人难忘的第一印象,并展现你的软技能
如何步步高升
  • 如果你在某家机构工作,请明确表示你对更高层级的职位感兴趣,并希望了解实现这些目标所需的内部流程
  • 攻读网页开发硕士学位或许是个不错的选择;不妨与你的主管或经理沟通,了解他们对晋升的具体要求  
  • 作为全栈工程师,你需要了解有哪些高级职位可供选择。有些公司可能没有晋升机会
  • 为了职业发展,可能需要考虑其他雇主的职位
  • 如果你是自雇人士,唯一的限制就是你自己设下的!尽情设定高标准,并去获取实现目标所需的教育和培训
  • 在这个领域,紧跟最新动态至关重要。变化并非一蹴而就,但往往会悄然发生
  • 始终按时交付,并为客户提供卓越的服务
  • 将自己打造成该领域的专家。创建个人网站、YouTube频道和社交媒体账号,以此提升个人品牌的知名度
  • 去教课。如果你有时间且具备相关资质,不妨找一份兼职讲师的工作。在简历上,与大学的关联总是能加分不少
  • 作品刊载于《Net》、《How》、《Layers》、《Computer Arts》、《Digital Arts》、《Web Designer》、《CMYK》等行业印刷杂志
推荐资源
备选方案

成为全栈工程师并非易事。正如我们所提到的,这基本上是将两个职位合二为一。许多人更倾向于专注于前端或后端开发。与此同时,也有一些从业者决定彻底离开网页开发领域。美国劳工统计局提供了许多替代职业路径,例如:

  • 计算机与信息系统经理
  • 计算机程序员
  • 计算机支持专员
  • 计算机系统分析师
  • 数据库管理员
  • 平面设计师
  • 信息安全分析师
  • 多媒体艺术家和动画师
  • 软件开发人员

新闻动态

在线课程与工具

薪资与就业前景
选择子区域:

预期年薪

$115K
$156K
$170K

新员工的起薪约为11.5万美元。年薪中位数为15.6万美元。经验丰富的员工年薪可达17万美元左右。

来源:加利福尼亚州就业发展部

预期年薪

$172K
$205K
$220K

新员工的起薪约为17.2万美元。年薪中位数为20.5万美元。经验丰富的员工年薪可达22万美元左右。

来源:加利福尼亚州就业发展部

预期年薪

$108K
$146K
$180K

新员工的起薪约为10.8万美元。年薪中位数为14.6万美元。经验丰富的员工年薪可达18万美元左右。

来源:加利福尼亚州就业发展部

预期年薪

$112K
$149K
$173K

新员工的起薪约为11.2万美元。年薪中位数为14.9万美元。经验丰富的员工年薪可达17.3万美元左右。

来源:加利福尼亚州就业发展部

预期年薪

$103K
$138K
$173K

新员工的起薪约为10.3万美元。年薪中位数为13.8万美元。经验丰富的员工年薪可达17.3万美元左右。

来源:加利福尼亚州就业发展部