官方服务微信:dat818 购买与出租对接

软件开发人员职业转型指南:探索多种职业道路与技能应用

2万

主题

2

回帖

8万

积分

管理员

积分
86548
发表于 2025-1-17 18:23:00 | 显示全部楼层 |阅读模式
    作者 |卡尔

    译者|于冬

    规划|蔡芳芳

    很多学过或者做过软件开发的人都不想再从事软件开发工作了。本文将为软件开发人员介绍许多可行的职业道路。我将解释每项工作的作用、如何入门、如何利用您已有的开发技能和知识来发挥自己的优势,以及这些工作的长期前景。

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

    在过去的五年里,我已经做过数十次客座讲座。每个人总是会问这些问题:“接下来我应该学习哪种语言?”,“如何准备技术面试?”,“你在招聘吗?”

    但有一个问题我一直没有一个好的答案,那就是“如果我不想成为一名开发人员并编写软件,那么我应该去哪里?”

    我最近一直在思考这个问题。在领导产品和工程团队近十年后,我意识到我已经准备好迎接新的挑战,所以今年夏天我开始了自由技术写作。

    当我签下第一个客户时,我并不觉得技术写作可以像许多职业道路一样成为前软件工程师的新职业道路,但没过多久我就意识到这确实是可能的。

    软件开发人员还能做什么?

    这个发现让我思考:“软件工程师除了写软件还能做什么?”答案的数量是惊人的。

    本文将向您介绍软件开发人员可以选择的多种职业道路。我将解释每项工作的作用、如何踏入这门工作,以及从长远来看前景如何。

    无论您是因为没有找到合适的软件工程工作而正在寻找另一条职业道路,还是您已经意识到软件开发不适合您,本指南都将帮助您根据自己的能力找到合适的职业。

    面向客户的职位

    人际交往能力是许多职业都可以受益的软技能,软件工程师也不例外。但有很多软件工程师对此并不满意,而且我采访过的一些人也不想整天坐在那里安静地编写代码。如果您希望您的职业道路包含更多与人互动的机会,以下工作可能适合您。

    1. 开发者关系、宣传或传播

    随着越来越多的公司努力与作为其客户、用户或拥护者的开发者建立关系,开发者关系领域正在迅速发展。

    开发人员关系专业人员(一些公司称他们为开发人员倡导者、开发人员布道者、社区经理或“开发人员”)负责帮助建立以公司软件为中心的社区。

    他们经常参与开发应用程序演示、撰写博客文章、在会议上发言以及管理技术公司的社交媒体帐户。许多知名科技公司(如谷歌、亚马逊等)都聘请了开发者关系专家团队。

    如果您对此领域感兴趣,请查看 Mary 和 PJ 现在正在做什么。他们是这个领域我最喜欢的两个人,极具影响力,他们一起推出了社区脉动播客。

    2. 开发者营销

    虽然与开发者关系有一些重叠,但开发者营销更注重外部。

    向开发商进行营销尤其棘手,因为我们不喜欢人们向我们“推销”东西,因此许多可能在其他市场有效的更激进的营销策略在这里是禁忌。作为一个有技术出身的人,自然会更了解开发者的思维方式,也会比传统营销人员有更大的优势。

    发表了很多关于开发者营销的内容,包括 2018 年一本关于该主题的书。如果您想开始这个领域,请了解在线营销:SEO、社交媒体、内容营销、影响者营销等。您可以在申请工作之前在博客上练习这些技能并展示您的能力。

    3.销售工程师

    许多工程师对任何标有“销售”的工作都不感兴趣,但这只是因为我们遇到的都是糟糕的销售人员。

    其实大家都在卖。无论您是在面试过程中“推销”自己作为候选人,还是宣传您的工程团队正在采用的新框架,这都是推销。销售就是通过适当的解决方案来满足客户的需求。

    在某种程度上,具有一定技术专长的销售工程师将会是独一无二的。对于不想整天编写代码但仍了解软件工程的开发人员来说,这是一个很好的选择。

    从事销售工作的另一个好处是您不需要任何专业认证。我做了一个很好的介绍,介绍了一些技巧和资源,大家可以根据它开始学习。随着越来越多的公司围绕工程师开发软件工具和服务,未来十年对销售工程师的需求可能会更大。

    4、技术招聘

    还有一个职业在软件工程师中口碑并不好,那就是技术招聘。

    我遇到过一些诚实、真诚的技术招聘人员(比如来自我家乡芝加哥的马特),但我也遇到过一些糟糕、无知的招聘人员,他们只关注合格的候选人以满足他们的配额。人们。

    好消息是,拥有软件开发背景的你将比其他技术招聘人员拥有更多的同理心和可信度。与销售一样,这个行业需要更加外向、以关系为导向的个性,并且不需要专门的认证或课程。

    坏消息是,许多入门级职位的技术职位空缺都在低端公司,因此在申请之前一定要在网上检查他们的声誉。

    以产品为导向的岗位

    如果您想留在产品团队,但不确定是否想成为软件开发人员,那么有很多方面需要考虑。这些职位要求您与工程师密切合作,因此您的编码知识会很有帮助,但这些职位还需要一些其他专业知识。

    5. 质量保证或测试工程师

    虽然质量保证和测试工程师之间存在细微的差异,但他们的共同点是他们在软件上线之前对其进行测试。

    如果您目光敏锐并且喜欢想出创造性的方法来自动执行重复性任务,那么这可能是一条很好的职业道路。它可能需要一些编码以及一些手动测试工作。

    小公司一般会让软件工程师互相测试,所以基本上只有在大公司才能看到专门的测试和QA职位。公司进行测试的方式差异很大,因此请务必询问他们使用的工具、测试的自动化程度以及您的角色需要多少手动测试和自动化测试。

    6.业务分析师

    产品开发生命周期的另一个端点是业务分析师。他们通常充当业务和技术团队之间的桥梁,以确保充分理解需求、约束和时间表。根据团队的结构,他们还可能参与一些测试和质量保证,因此他们需要拥有丰富的产品知识。

    如果您具有业务、产品开发或设计背景以及一些编码技能,您可能非常适合担任初级业务分析师角色。如果你还不具备这些条件,我建议你找一些在线课程来帮助你对这个角色有一个大概的了解,以及这个职位的基本要求是什么。

    7. 项目经理

   


    与业务分析师一样,项目经理必须了解产品的业务需求和技术约束。

    主要区别在于项目经理通常深入参与项目。他们经常为项目团队定义任务和资源,并在项目临近发布日期时跟踪项目的进度。

    较小的公司可能会以各种方式组合业务分析师、项目经理、Scrum 和产品经理的角色,而较大的公司可能会单独定义各自的工作职责。

    作为一名项目经理,出色的组织能力、业务理解力和人际交往能力是成功的关键。在这个角色中,您有能力管理期望并激励那些可能比您资深或经验丰富的人,因此您必须快速与他们建立信任关系。该角色的多功能性使其成为不再想编写代码的分析、技术专业人员的理想选择。

    8. Scrum

    在敏捷团队中,Scrum 有助于确保每个人都理解并同意 Scrum 理论、最佳实践和规则。

    这看起来很像项目管理,但重要的是要注意它是针对构建产品的其他团队的。与上述许多角色一样,该角色可能并不总是单独负责这些任务,还可能承担其他职责,但在较大的组织中可能有一个专门的职位。

    管理期望和约束的能力对于成为一名成功的 Scrum  至关重要。您还需要了解敏捷最佳实践,因此我建议您找到有关此主题的课程或书籍。敏捷已经在各种规模的组织中得到广泛采用,因此这种职业道路很可能在未来十年继续发展。

    9.产品经理

    2019年我花了很多时间学习产品管理,以改善我们在网络中的产品交付流程。

    产品经理从整体上审视公司的产品,以确保它们是预期的(客户想要的)、商业上可行的(具有商业意义)以及技术上可行的(我们可以做到)。像这样的高层次思考能力是很少见的,所以如果你有这个能力,并且有一定的技术背景,你可能会成为一名优秀的产品经理。

    初级产品经理可以从产品的较小组件开始,或者首先成为项目经理。这可以让您初步了解产品开发,并帮助您在被委派管理自己的产品之前与所有必要的利益相关者建立关系。

    10. 设计师

    如果您有设计或艺术背景,请考虑成为一名具有编程技能的 UI 或 UX 设计师。这是在该领域脱颖而出的好方法。这些技能的结合将使您能够更有效地与工程师沟通,并使用 HTML/CSS 而不仅仅是静态图像文件创建交互式模型。

    如果您在设计方面没有太多经验,可以参加课程并建立一个作品集。许多公司也会雇用没有相关学位的人,只要他们能够证明自己的知识和技能。在我见过的投资组合平台中,这是最常用的,但当然,您也可以选择使用自己的网站。

    11.无代码或低代码开发人员

    过去几年,无代码和低代码开发工具的激增使得一些公司无需雇用开发团队即可快速构建软件。这些工具可让您在数小时而不是数周内创建移动或网络应用程序。而且,随着越来越多的公司采用无代码应用程序,它们每年都在进步。

    和无代码工作是尝试开始此类工作的不错选择。因为这是一个新领域,你会发现它有各种不同的技能要求和薪资水平,但你的编码背景无疑将是一个竞争优势。

    支持角色

    事实上,保持服务器、网站和运营顺利运行需要许多员工的帮助,而许多新软件工程师并不知道这些幕后角色。其中一些角色需要编写自动化脚本或对服务器管理有深入的了解,但如果您正在传统产品开发周期之外寻找更具技术性的角色,这些角色可能是一个不错的选择。

    12.系统管理员或工程师

    大型软件公司每年都有数百或数千台服务器需要修补、升级和轮换。虽然云计算的广泛采用改变了这项工作,将其从物理地插拔服务器转移到处理类似的软件,但在这一领域仍然有很多工作要做。

    传统上,系统管理员负责根据工程团队的需求维护和管理服务器。随着组织的发展和服务器迁移到云托管,许多组织已经采用工程师的头衔来表明该过程中自动化程度的提高。事实上,这两个角色之间有很多重叠之处。

    无论您选择哪一种,您都需要对操作系统、托管平台、自动化工具、bash 脚本和系统架构有基本的了解。在这个领域找到入门级工作很困难,因为它需要大量的技术知识,但如果您喜欢解决工程问题而不诉诸 UI/UX,那么这是一个很好的过渡角色。

    13. 数据库管理员

    有些公司将数据库管理员与系统管理员混淆,​​但实际上它们是不同的角色。

    数据库管理员负责底层数据存储系统的安全、配置、扩展和优化。对于此角色,您需要了解 SQL 和 NoSQL 数据库、安全最佳实践以及一些基本的脚本编写技能,但您不太可能整天编码。您还需要注意一些非常小的优化问题,例如调整索引和缓存。

    如果您是软件开发新手,请在开始时尽可能多地了解数据库。您需要知道哪个数据库适合哪种类型的应用程序以及如何大规模优化每个数据库,因此您自己很难做到这一点。如果您正在寻找一些可以使用的大型数据集,请查看。

    14.网站可靠性工程师

    站点可靠性工程师负责对生产环境中出现的关键问题进行故障排除。这通常意味着他们必须轮班,以便有人随时可以“随叫随到”,因此您的工作时间可能与其他人的工作时间略有不同。从好的方面来说,您将非常擅长解决异常问题、编写自动警报以及理解服务器日志。

    由于网站可靠性工作需要时刻立即响应,因此很难让经验丰富的软件工程师长期担任这样的职位。也就是说,如果您在寻找第一份软件开发工作时遇到困难,那么这可能是一个不错的起点。您甚至可能会发现您喜欢快速解决问题的挑战和兴奋。

    15. 技术或客户支持

    虽然有些工程师害怕与客户合作,但其他工程师却发现整天帮助人们解决问题充满活力。您的编码经验将使您成为软件公司客户支持职位的理想候选人,该公司需要具有技术背景的人员来回答问题并提出解决方案。

    在支持团队中工作的缺点是,您可能必须在人们最不开心的时候与他们打交道。心怀不满和怨恨的用户可能不愿意与技术支持团队交谈,因此您需要很大的耐心和厚脸皮才能长期担任这个角色。

    教学和写作角色

    我一直热爱教学,所以我喜欢那些给我机会的职位。如果您喜欢分解复杂的主题、简化它们并将其呈现给其他工程师,那么这里有一些可能适合您的职业道路。

    16. 技术作家

    我在大学的第三次实习是在一家大公司担任技术作家。这是一项非常无聊的工作,但我喜欢每天学习新东西。

    我发现技术写作不仅仅意味着编写文档。您可以将目光投向技术博客或文案写作;您可以编写内部或外部文档;您可以编写应用程序演示和教程。这是作家收入最高的领域之一,因此值得考虑。

    显然,如果你走这条路,你需要善于写作,在这里你还需要能够有条不紊地组织复杂的想法,并且善于学习新的东西。你自我修正的能力越好,你的工作就越有价值,所以一定要投资于工具来帮助你变得更好、更高效。

    您可以从为一些付费社区写作项目写作开始,然后建立并完善您的网络和作品集,在此过程中将经验转变为全职工作。

    17. 老师

    您可以采取多种途径从软件开发职业过渡到教学。您可以在编码训练营找到一份教书的工作,您可以在大学或高中教书,您可以加入 .io 这样的平台。或者您可以使用或创建您自己的课程网站。您选择哪条道路取决于您的背景和承担风险的能力。

   


    无论如何,教师必须能够快速学习新知识,并以易于理解的方式呈现给学生。为了获得成功,您必须处于适合受众的水平并建立他们成功的信心。教学的报酬可能不如软件开发,但它也可以是一条非常令人满意的职业道路。

    18. 训练师

    企业培训是另一种教学形式,也是一个值得考虑的选择。培训师可以是独立顾问或大公司的员工,他们经常前往客户场所提供特定软件的实践培训。

    培训师可能拥有深厚的专业知识,但他们也可能只是技术精湛的沟通者。进行企业培训通常比教学报酬更高,但也更以销售为导向。培训师经常在峰会上发言、在社区研讨会上授课或参加培训课程之间的聚会。

    如果您喜欢在舞台上谈论技术概念,这可能是一条理想的职业道路。

    分析角色

    科技公司的许多职位都需要分析能力。尽管其中大多数需要一些专业教育,但如果您想放弃软件工程,那么它们值得考虑。您的工作节奏将与大多数以产品为中心的工程师不同,并且像上面提到的支持角色一样,您可能会与公司中的其他角色进行互动。

    19. 数据科学家或工程师

    这两个角色(有些公司将它们合并)的主要工作是利用大数据帮助企业或客户做出更好的决策。

    数据工程师通常围绕数据摄取和数据组织管道进行工作,而数据科学家则设计实验和算法以将这些数据处理成有用的结果。数据科学(人工智能、机器学习等)是一个基于数学、软件工程和统计学的广泛领域。

    数据科学和工程有专门的课程、训练营和大学学位,但如果你有很强的数学背景,你也可以自学基础知识。如果您没有该领域的背景,请考虑首先温习数值分析、矩阵代数和统计学。

    由于这些技能需要很长时间才能掌握,而且数据科学家的需求量很大,因此这个职位的薪酬很高,而且不太可能很快消失。

    20. 证券分析师

    如果不出什么问题,信息安全角色通常很少受到关注。虽然每个开发人员都应该对安全漏洞和风险有一定的认识,但通常会专门聘请安全分析师来查找安全问题、对其进行分类并提出修复建议。

    有些工作是由独立顾问完成的,但在较大的公司中,可能有内部安全团队。这个角色很有趣,因为它既需要掌握技术,又需要掌握法律法规,还需要业务和风险评估能力。

    安全职位也是最难招聘的,所以你在这份工作中会非常有保障。信息安全是一个非常广泛的领域,因此如果您有兴趣从事该领域的职业,有很多选择。

    21. 研究与开发

    对于那些具有软件工程技能的人来说,在研发部门工作可能是一次独特的经历。像谷歌和亚马逊这样的大公司将一部分利润分配给研发团队来进行高风险和潜在高回报的实验。这些跨学科团队可能包括软件开发人员、数据科学家、业务分析师和项目经理。

    进入一支优秀的研发团队并不容易。这些职位通常面临激烈的竞争,并且需要非常专业的知识,而这些知识在编码训练营中可能无法学到。因此,一些公司聘请有道德的黑客、创始人或多语言者来帮助改进他们的团队,并向团队注入一些创造性思维。

    独立、灵活的角色

    虽然有些职业通常允许我们远程工作,有时甚至可以休假,但您可能希望给您的生活更多的灵活性和自由度。如果你有创业的动力,你可以选择每周只工作 4 小时,每年出差 6 个月,或者花一半的时间从事开源项目。创业并不容易,但成为一名软件开发人员会给你带来比大多数人更大的优势。

    22. 自由职业者或顾问

    如果你想要更多的自由,一种方法是辞去朝九晚五的工作,成为一名自由职业者。作为一名自由职业者,您将自己雇佣给一个或多个客户,他们按小时付费为您编写代码。公司经常聘请自由职业者来从事特定的短期项目、清除技术债务或在正式员工休假期间填补空缺。

    顾问是为客户解决特定问题的高端自由职业者。虽然他们可能会编写代码,但他们的卖点主要是他们的专业知识或独特的背景。自由职业者和顾问之间的界限非常模糊,所以不要太在意这个名字。

    作为自由职业者或顾问进入该行业是最困难的。如果您没有庞大的人脉网络,您可以依靠这样的平台来寻找客户。这些平台的佣金占了你收入的很大一部分,而且你还必须与世界各地的许多其他自由职业者直接竞争。

    如果您获得了口碑和声誉,并且拥有熟悉的客户,他们的推荐可以帮助您获得更多工作。推荐的好处是客户基于信任的关系来找你,而不是盲目地在互联网上搜索。如果你真的擅长自由职业或咨询,请将你的工资提高到足够高,这样你每次完成工作就可以有更多的休息时间。

    23. 初创公司创始人

    互联网上充斥着软件工程师创业的故事(1、2、3),因此您可能会认为创业很容易,甚至是个好主意。

    其实这要看具体情况。

    创业通常需要很长时间才能产生收入,因此在您成功之前可能几个月甚至几年都没有收入。话虽这么说,如果你想创办自己的软件公司,好处几乎数不胜数。

    工作之余也可以创业。虽然这很难做到(并且可能会产生法律后果),但这并不罕见。如果你能找到一两个其他创始人一起创业,可能会增加你成功的机会。

    结论

    软件工程是一个令人兴奋的领域,但并不适合所有人。即使你离开这个领域并决定做其他事情,你所获得的技能也不会被浪费。

    许多人对在软件开发之外寻找工作持谨慎态度,我鼓励您走自己的路。在务实(赚足够的钱来维持生计)和你的兴趣之间找到平衡,希望你能找到一条让工作不再像“工作”的职业道路。

    我们很想听听您的想法。如果你有不同的职业道路,欢迎在评论区留言。

    关于作者:

    卡尔曾是一家初创公司的首席技术官,现在是一名作家。的创始人,帮助创建高质量的软件工程博客。

    原文链接:

    译者简介:

    董宇,一名科技小极客,从事研发流程改进和质量提升,专注于编程、软件工程、敏捷、云计算等领域。他很乐意与大家分享新鲜的国外IT资讯和深入的技术文章翻译,我们翻译出版了《深入敏捷测试》和《持续交付实践》。

    你也在“看”吗?

更多帖子推荐

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|小黑屋|关于我们

Copyright © 2001-2025, Tencent Cloud.    Powered by Discuz! X3.5    京ICP备20013102号-30

违法和不良信息举报电话:86-13718795856 举报邮箱:hwtx2020@163.com

GMT+8, 2025-4-23 05:43 , Processed in 0.062485 second(s), 18 queries .