登录  | 加入社区

黑狼游客您好!登录后享受更多精彩

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 883|回复: 0

软件工程师除了写代码,还能做什么工作?

[复制链接]

946

主题

946

帖子

0

现金

黑狼菜鸟

Rank: 1

积分
0
发表于 2020-12-24 03:44:07 | 显示全部楼层 |阅读模式 来自 法国

原标题:软件工程师除了写代码,还能做什么工作?

作者 | Karl Hughes

译者 | 冬雨

筹谋 | 蔡芳芳

许多学过、做过软件开辟的人不想再从事软件开辟工作,这篇文章将向软件开辟职员先容很多可行的职业门路。我会表明每一份工作是做什么的,你可以怎样跨入这一职业的大门,你已经把握的开辟技能和知识在此中可以或许发挥什么上风,以及这些工作的恒久远景。

本文最初发布于 freeCodeCamp.org,经原作者及网站授权由 InfoQ 中文站翻译并分享。

在已往的五年里,我做过几十次客座演讲。各人总会问到这几个题目:“我接下来应该学哪种语言?”、“怎样预备技能口试?”、“你们招人吗?”

但是其时有一个题目我不停无法给出很好的答案,那就是,“假如我不想当个开辟职员去编写软件,那么该何去何从呢?”

近来,我不停在思索这个题目。在带过近十年的产物和工程团队后,我意识到本身已经做好了欢迎新挑衅的预备,于是本年炎天,我开始举行自由的技能写作。

当我签下第一个客户时,还没以为技能写作可以像很多职业门路一样成为前软件工程师的新职业,但没过多久我就意识到了这确实是大概的。

软件开辟职员还能做什么?

这一发现令我陷入沉思:“除了写软件,软件工程师还能做什么?”答案之多令人咋舌。

这篇文章将向软件开辟职员先容很多可行的职业门路。我会表明每一份工作是做什么的,你可以怎样迈入这一职业的大门,以及从久远来看远景怎样。

不管你是由于没有找到符合的软件工程师工作,照旧由于你意识到软件开辟不得当你,正在探求另一条职业门路,这个指南都会帮你依据本身的本领找到符合的职业。

面向客户的岗位

人际来往本领是一项软技能,许多职业都能从中受益,软件工程师也不破例。但有许多软件工程师并不甘于此,我采访过的一些人不盼望整天悄悄地坐在那边写代码。假如你盼望你的职业门路有更多的时机与人交换,大概以下工作会得当你。

开辟者关系,宣传,或传道

如今越来越多的公司在积极创建与开辟职员的关系,开辟职员就是他们的客户、用户或附和者,开辟者关系范畴也因之敏捷发展。

开辟者关系专家(一些公司称他们为开辟职员提倡者、开辟职员传道者、社区司理或“DevRels”)负责资助创建一个以公司软件为中央的社区。

他们常常到场开辟应用步伐 Demo、撰写博客文章、在集会上发言,以及管理科技公司的交际媒体账户。很多着名科技公司(如 Facebook、谷歌、亚马逊等)都约请了开辟者关系专家团队。

睁开全文

假如你对这个范畴感爱好,可以相识一下 Mary Thengvall 和 PJ Hagerty 如今正在做什么。他们是这个范畴中我最喜好的两个人,具有很高的影响力,一起推出了社区脉搏播客。

开辟者营销

固然这一工作与开辟者关系有一些重叠,但相比而言开辟者营销更偏重于对外。

针对开辟者举行营销特殊棘手,由于我们不喜好人家给我们“卖”东西,以是很多较激进的营销计谋在其他市场大概有用,但在这里却成了禁忌。作为一个有技能配景的人,你天然更明白开辟职员的头脑方式,会比传统的营销职员有更大的上风。

SlashData 发布了许多关于开辟者营销的内容,包罗在 2018 年就这一主题出书的一本书。假如你想在这个范畴起步,可以学习一下网络营销:SEO、交际媒体、内容营销、影响者营销,等等。你可以在你的博客上训练这些技能,在应聘岗位之前先把本身的本领展示出来。

贩卖工程师

很多工程师对任何标有“贩卖”字样的工作都不感爱好,但那只是由于我们碰到过的都是些糟糕的贩卖职员。

实在,每个人都在做贩卖。无论你是在口试过程中身为求职者“倾销”本身,照旧鼓吹你的工程团队接纳的新框架,这些都是在做贩卖。贩卖,就是用适当的办理方案去满意客户的需求。

在肯定水平上,拥有一些技能专长的贩卖工程师会很独特。对于那些不想整天写代码但又相识软件工程的开辟职员来说,这是一个很不错的选择。

从事贩卖的另一个利益是你不必要任何专业认证。Hubspot 做了一份很不错的简介,内里先容了一些技能和资源,你可以据此举行入门学习。由于越来越多的公司在围绕工程师开辟软件工具和服务,使贩卖工程师在将来十年大概会变得更加抢手。

技能雇用

另有一份职业在软件工程师中的口碑也不太好,那就是技能雇用。

我碰到过一些老实、朴拙的技能雇用职员(比方,来自我的故乡芝加哥的 Taylor Dorsett 和 Matt Hoffman),但我也碰到过一些糟糕、无知的雇用职员,他们只是专注于为完成指标而去筛选候选人。

好消息是,具备软件开辟配景的你,会比其他技能雇用职员更有同理心和可信度。和贩卖一样,这个行业必要更外向、注意人际关系的个性,而不必要专门的证书或课程。

坏消息是,很多技能雇用的入门级职位都是在一些低端公司,以是在求职之前肯定要先在网上查查他们的荣誉。

面向产物的岗位

假如你想继承留在产物团队,但又不确定是否想成为一名软件开辟职员,那么也有很多范畴可以思量。这些脚色在工作中必要与工程师精密协作,以是你的编码知识会有所资助,但这些岗位也必要具备一些其他的专业知识。

质量包管或测试工程师

固然质量包管和测试工程师之间存在着渺小的差异,但他们的共同点都是在软件上线之前从事测试工作。

假如你眼尖心细,喜好想些创造性的方法来主动化重复的工作,这大概是一条很好的职业门路。它大概必要一些编码以及一些手工测试工作。

规模较小的公司一样平常会让他们的软件工程师相互之间互测,以是根本上都是在大公司中才气见到专门的测试和 QA 岗位。公司举行测试的方式有很大的差别,以是肯定要问问他们利用的工具,他们的测试的主动化水平,以及你的岗位必要做多少手工测试和主动化测试。

业务分析师

产物开辟生命周期的另一个端点是业务分析师。它们通常充当业务团队和技能团队之间的桥梁,以确保需求、限定和时间安排得到充实明白。取决于团队的布局,他们另有大概到场一些测试和质量包管,因此他们必要具备丰富的产物知识。

假如你具有业务、产物开辟或计划方面的配景和一些编码技能,你就可以胜任低级业务分析师的脚色。假如还不具备这些条件,我发起你去找一些在线课程来资助你对这个脚色有一个大概的相识,知道它的岗位根本需求是什么。

项目司理

与业务分析师一样,项目司理必须相识产物的业务需求和技能束缚。

它们的关键区别在于,项目司理通常会深入到场到某个项目中。他们常常为该项目标团队界说使命和资源,在项目邻近发布日期时跟踪项目标希望。

较小的公司大概会以各种方式归并业务分析师、项目司理、Scrum Master 和产物司理的脚色,而较大的公司大概会单独界说各自的岗位职责。

作为一名项目司理,良好的构造本领、对业务的明白和人际来往本领是其取得乐成的关键。在这个职位上,要具备管理盼望的本领,而且,可以或许鼓励那些大概比你更资深或更有履历的人,以是你必须与他们敏捷创建起相互信托的关系。这个脚色的多面性使得它非常得当那些不想再写代码的分析型、技能型职员。

Scrum Master

在灵敏团队中,Scrum Master 资助确保每个人都相识并认同 Scrum 理论、最佳实践和规则。

看起来这很像是项目管理,但必要特殊留意的是,它是为其他构建产物的团队提供服务的。与上述许多脚色一样,这个岗位不肯定总是只负责这些工作,大概还要负担其他的职责,但在较大的构造中,大概会设有专岗。

管理盼望和束缚的本领对可否成为一名乐成的 Scrum 管理员至关紧张。你还必要相识灵敏的最佳实践,因此我发起你就这一主题找一些符合你本身的课程或册本。在各种规模的构造中,灵敏已经得到了广泛的接纳,因此在将来的十年中,这条职业门路大概会继承发展下去。

产物司理

我在 2019 年花了许多时间学习产物管理,以改善我们在 Graide 网络的产物交付流程。产物司理从团体上看公司的产物,以确保它们是符合预期的(客户想要的),在贸易上是可行的(有贸易意义的),在技能上也是可行的(我们能做得出来)。像如许能在高条理上思索的本领是很稀缺的,以是假如你拥有如许的本领和一些技能配景,大概会成为一名精彩的产物司理。

低级产物司理可以从产物中比力小的组件开始入手,大概先来当当项目司理。这可以让你对产物开辟有一个开端的相识,并在被委派管理你本身的产物之前,帮你与全部须要的长处相干者打好关系。

计划师

假如你有计划或艺术配景,可以思量当一名具有编程本领的 UI 或 UX 计划师,这是一个令你在这一范畴脱颖而出的好方法。综合运用这些技能将使你可以或许更有用地与工程师交换,利用 HTML/CSS 创建交互式模子,而不但仅是静态图像文件。

假如你在计划方面没有太多履历,那就上上课,动手做一个作品集。很多公司也会雇佣没有相干学位的人,只要他们能展示出本身的知识和技能。在我见过的作品集平台中,最常用的是 Dribbble,固然,你也可以选择利用本身的网站。

无代码或低代码开辟职员

在已往的几年里,无代码和低代码开辟工具的激增使一些公司可以无需雇佣开辟团队即可快速构建软件。这些工具可以让你在数小时内就能创建一款移动或网络应用步伐,而不必再耗费数周的时间。而且,它们每年都在进步,越来越多的公司开始拥抱无代码应用步伐。

Makerpad 和 No Code Jobs 是实验入手这类工作的不错选择。由于这是一个新的范畴,你会发现它有着各种差别的技能要求和工资尺度,但你会写代码的配景毫无疑问会是一个竞争上风。

支持类脚色

实在,要保持服务器、网站和运维的顺畅运行必要很多员工的资助,许多新入行的软件工程师都不知道这些幕后的脚色。此中一些脚色必要编写主动化脚本,大概对服务器管理有深入的相识,但是假如你正在探求传统产物开辟周期之外且又偏技能型的岗位,那么这些脚色大概非常得当。

体系管理员或 DevOps 工程师

大型软件公司每年都有成百上千台服务器必要打补丁、升级和轮换利用。固然云盘算的广泛接纳改变了这项工作,将它从物理插拔服务器酿成了与 Terraform 和 Kubernetes 如许的软件打交道,但这个范畴仍有大量的工作要做。

传统上,体系管理员负责根据工程团队的必要维护和管理服务器。随着构造的发展,服务器迁徙到云上托管,很多构造都接纳了 DevOps 工程师这个头衔,表现提拔了这个过程中的主动化水平。现实上,两个脚色之间有许多的重叠。

无论是此中哪一个,你都必要对操纵体系、托管平台、主动化工具、bash 脚本和体系架构有根本的相识。想在这个范畴找到入门级的工作是很困难的,由于它必要大量的技能知识储备,但是假如你喜好不借助于 UI/UX 来办理工程题目,这是一个很好的过渡脚色。

数据库管理员

一些公司将数据库管理员与体系管理员等量齐观,但实在它们属于差别的脚色。

数据库管理员处置惩罚底层数据存储体系的安全性、供应、扩展和优化。假如从事这一岗位,你必要具备 SQL 和 NoSQL 数据库的知识、安全最佳实践以及一些根本的脚本技能,但整天都去编写代码的大概性不大。你还必要关注一些非常小的优化题目,好比调解索引和缓存。

假如你是软件开辟方面的新手,那么入门的时间请尽大概学习数据库方面的知识。你必要知道哪款数据库实用于哪类应用步伐,以及怎样对每个数据库举行大规模优化,因此你靠本身一个人是很难做到的。假如你想找一些大型数据集来利用,可以到 Kaggle 看一看。

网站可靠性工程师

网站可靠性工程师负责办理生产情况中出现的致命题目。这通常意味着他们必须轮番值班,以便时时有人待命以便能“随叫随到”,以是你的工作时间大概会与各人有点差别。积极的一面是,你将真的可以或许善于办理各种差别平常的题目、体例主动预警和看懂服务器日记。

由于网站可靠性的工作要求随时立刻做出相应,以是很难做到让富有履历的软件工程师恒久担当此类岗位。也就是说,假如你在寻求第一份软件开辟的工作时碰到困难,那么它大概是你入行的不错选择。你乃至大概会发现本身喜好上这种快速办理题目的挑衅,喜好上这种刺激的感觉。

技能或客户支持

固然有些工程师畏惧与客户打交道,但也有一些工程师以为整天资助人们办理题目能让他们活力满满。在软件公司中,你的编码履历将使你成为客户支持这一职位的抱负人选,这些公司必要有技能配景的人来答复题目并提出办理方案。

在支持团队工作的缺点是,你大概不得不在人家最不爽的时间与人家打交道。心怀不满、满腹怨气的用户大概不肯意与技能支持团队交换,因此你必要极大的耐烦和极厚的脸皮才气恒久担当这个脚色。讲授与写作类脚色

我不停都很喜好讲授,以是我很喜好那些让本身有时机去做这件事的工作岗位。假如你喜好把复杂的话题拆解简化并先容给其他工程师,那么下面几条职业门路大概会得当你。

技能写手

我在大学的第三个练习工作是在一家大公司做技能写手。这是一份非常枯燥的工作,但我喜好天天学习新东西。

我发现技能写作不但仅意味着写文档。你可以将眼光瞄向技能博客或文案;你可以编写内部或外部文档;你可以编写应用步伐演示和教程。对于写手来说,这是收入最高的范畴之一,以是值得思量。

显然,假如你走这条路,必要善于写作,此处还必要可以或许将复杂的想法有条理地构造起来,并善于学习新东西。你自我改稿的本领越强,你的工作就越有代价,以是肯定要在相干工具上投资,让它们资助你变得更好、更有服从。

一开始,你可以先为一些付费的社区写作项目写作,然后创建和美满你的关系网和作品集,在此过程中把这些履历转化为一份全职工作。

西席

有几种途径可以使你从软件开辟的职业转向西席。你可以在编程练习营找到一份讲授的工作,你可以在大学或高中教书,你可以参加 egghead.io 如许的平台。大概你可以利用 Teachable 或 Educative 创建本身的课程网站。选择什么门路,取决于你的配景和负担风险的本领。

无论怎样,西席必须可以或许快速学习新知识,并普通易懂地出现给门生。你必须得当听众的程度,他们树立起乐成的信心,如许才气取得乐成。讲授的报酬大概比不上软件开辟,但它也可以成为一个非常令人满足的职业门路。

培训师

企业培训是另一种讲授情势,也是一个很值得思量的选择。培训师可以是独立的咨询师,也可以是大公司的员工,他们通常会到客户办公场合提供特定软件的实操培训。

培训师大概有深厚的专业知识,但也有大概只是一些技能高超的流传者。做企业培训通常比讲授收入高,但它也大概更受贩卖导向的影响。培训师常常在峰会上演讲,在社区讲习班授课,大概在培训课程间隙到场些集会。

假如你喜好在台上报告技能概念,这大概是一个抱负的职业门路。

分析类脚色

科技公司的许多职位都必要具备分析本领。固然它们大多都必要担当一些专门的教诲,但是假如你想不再从事软件工程方向,照旧值得思量一下的。你的工作节奏将与大多数以产物为中央的工程师差别,像上面提到的支持脚色一样,你大概要与公司的其他脚色举行交互。

数据科学家或工程师

这两个脚色(有些公司将它们归并在一起)的重要工作是利用大数据来资助企业或客户做出更好的决议。

数据工程师通常是围绕数据摄取和数据构造流水线开展工作,而数据科学家则是计划实行和算法,将这些数据处置惩罚成有效的效果。数据科学(人工智能、呆板学习等)是一个驻足于数学、软件工程和统计的广阔范畴。

关于数据科学和工程,有一些专门的课程、练习营和大学学位,但是假如你有很强的数学配景,也可以自学一些底子知识。假如没有这方面的配景,可以思量先温习一下数值分析、矩阵代数和统计。

由于这些技能必要花很长时间才气把握,而且数据科学家的需求量又很大,以是这个职位薪水很高,而且短期内不太大概消散。

安全分析师

假如不出现题目,信息安全脚色通常得不到关注。固然每个开辟职员都应该对安全毛病和风险有肯定熟悉,但一样平常都会专门雇用安全分析职员来查找安全题目,对这些题目予以归类,并提出修复发起。

有些工作是请独立的顾问来开展的,但在大公司,大概会有内部的安全团队。这个脚色很故意思,由于它既必要把握技能和法律法规,也必要把握业务,可以或许做风险评估。

安全岗位也是最难雇用的岗位,以是你从事这一工作会很有保障。信息安满是一个非常广泛的范畴,因此,假如你有爱好致力于此,可以有许多选择。

研发

对于拥有软件工程技能的人来说,在研发部分的工作会成为一种独特的履历。像谷歌和亚马逊如许的大公司会拿出一部门利润由研发团队举行一些高风险且大概会有高回报的实行。这些跨学科团队大概包罗软件开辟职员、数据科学家、业务分析师和项目司理。

进入一个良好的研发团队并不轻易。这些岗位每每要面临很强的竞争,而且它必要非常专业的知识,这些知识大概在编程练习营是学不到的。以是说,有些公司雇佣道德黑客、首创人或多语言达人来资助团队更加美满,并为团队注入一些创造性头脑。

独立的、机动的脚色

固然有些职业经常答应我们长途办公,偶然乃至有学术休假,但你大概想让本身的生存更加机动、自由。假如你有动力创业,可以选择每周只工作 4 小时,一年花 6 个月的时间来观光,大概把一半的时间花在开源项目上。创业并不轻易,但是作为一名软件开辟职员,相比大多数人有很大的上风。

自由职业者或顾问

假如想要更加自由,有个方法是辞掉朝九晚五的工作,成为一名自由职业者。作为一名自由职业者,你可以把本身雇佣给一个或多个客户,他们会按小时付费请你为他们写代码。公司常常雇佣自由职业者从事特定的短期项目,清算技能债务,大概在正式员工休假时补个缺。

咨询师是为客户办理特定题目的高端自由职业者。固然他们大概会编写代码,但他们的卖点重要是他们的专业知识或独特的配景。自由职业者和咨询师之间的边界黑白常含糊的,以是不要在名称上太过纠结。

入行做自由职业者或顾问是最困难的。假如你没有一个巨大的关系网,大概将依赖 Upwork 或 Toptal 如许的平台来探求客户。这些平台的抽成占你收入的很大一部门,而且你还必须得与天下各地很多其他自由职业者直接睁开竞争。

假如你赢得了口碑和荣誉,有了本身熟络的客户,他们的保举能让你得到更多的工作。保举的利益在于,客户是基于可信的关系来找你的,而不是在网络上盲目搜刮。假如你真的很善于做自由职业者或咨询,可以把你的报酬尺度提得充足高,如许每次做完一项工作就可以苏息更多的时间了。

创业公司的首创人

互联网上充斥着软件工程师创业的故事(1, 2, 3),以是你大概会以为创业很简朴,乃至是个好主意。

究竟上,这要视环境而定。

创业通常必要很长一段时间才气产生收益,以是在你取得乐成之前,大概几个月乃至几年都没有收入。话虽云云说,但假如你想开一家本身的软件公司,险些有数不清的利益。

你也可以一边上班,一边开一家公司。固然这很难做到(大概会有法律结果),但也并不稀有。假如你能找到一两个其他的首创人一起创业,大概会增长乐成的时机。

结 语

软件工程是一个令人高兴的范畴,但它并不得当全部人。纵然你脱离这一范畴,决定做些别的事变,你已经把握的技能也不会白白浪费。

很多人对于在软件开辟范畴之外找工作布满顾虑,而我鼓励你走本身的路。在务实(赚充足的钱来生存)和你的爱好之间找到均衡,盼望你能找到一条让工作感觉不像是“工作”的职业门路。

我们很想听听你的想法。假如你有着差别的职业门路,接待在批评区留言。

高朋先容:Karl Hughes,前创业公司的 CTO,现转行成为作家。http://draft.dev 的首创人,资助打造高质量的软件工程博客。

好内容要分享:点一个「在看」,让更多技能管理者一同受益。返回搜狐,检察更多

责任编辑:





上一篇:你可以在推特头像里玩《宝可梦红》了
下一篇:什么是跨屏版网站?它和电脑版网站有什么差别?
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

 

QQ|申请友链|小黑屋|手机版|Hlshell Inc. ( 豫ICP备16002110号-5 )

GMT+8, 2024-5-6 00:34 , Processed in 0.185271 second(s), 44 queries .

HLShell有权修改版权声明内容,如有任何爭議,HLShell將保留最終決定權!

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表