作者:Gaurav Aggarwal

—Avanade Inc,副总裁, Global Lead

目录

1、总是提出问题

2、保持好奇

3、将极简主义方法应用于软件工程

4、建立你的品牌

5、选择正确的组织

6、成为领域专家

7、建立客户心态

8、乐于接受变革-每20-30个月改变一次角色以促进职业发展

9、如果当前组织不合适,请采取下一步行动

10、学会在不舒服的情况下自在

11、持续学习:技能提升/再培训计划

12、计算和软件工程很容易,但人很难

13、建立你的社交网络

14、寻找导师

15、技术管理硕士学位

16、应用JOMO原则而不是FOMO

17、软件工程伦理

18、选择你的方向:技术或产品管理或人员管理

19、要想成为动机的头号谜题

20、花时间在软件工程模式上

在接下来的 18 个月里我会学习什么?

概况总结


给年轻时的自己的一条建议——“为你想要在生活中实现的目标设定各种目标。有了正确的计划和愿景,没有什么目标太大。”

在过去的 25 年里,我经历过成功和失败。我觉得这段旅程令人难忘,因为它让我明白了失败和成功的重要性。每一次成功都贴近我的心,它不断让我更好地理解团队合作和成就感,但每一次失败都为我提供了一种新的创新方式来寻找非凡的解决方案。

另一个帮助我达到今天的品质是冒险。我从不害怕障碍,并寻找具有挑战性的工作,而不是被动接受我遇到的第一个项目。有意识地走出舒适区教会了我比同龄人更快地掌握高级技能。

回顾十多年前,有几件事我希望我应该或不应该做。职业建议可以帮助我避免错误的决定,并以更专注、更快速的方式向前迈进。

这就是为什么我决定写下一些我会给年轻时的自己的建议,以帮助那些刚刚开始从事软件工程工作的职业生涯的人。

如果我能回到过去,作为软件工程师,我会教年轻的自己以下20件事:

1、总是提出问题

作为专业人士提出问题可以阐明您的角色、任务并展示理想的领导素质。即使您有一个愚蠢的问题、一个严重的担忧或一个简单的想法。总是提高你的声音,把你的想法放在桌子上。您需要了解的是,将您的声音带到工作场所是最重要的。

在你的领导眼中,提出问题意味着:

学习意愿:提出问题将帮助您将办公室等级制度转变为教育系统。你将能够学到与众不同的东西。

渴望参与:提出问题并认真听取回应表明您重视同行的见解,并希望在最终确定任何结果之前了解他们对事情的看法。

持久的好奇心:了解他人的思考、工作和行为方式为创造性的想法和解决方案打开了大门。

对我来说,大多数时候,提出相关问题会激发创新,并帮助我及早识别风险和挑战。

如果您是软件工程工作的新手,如果不积极主动,您可能不会意识到客户或团队遇到的问题。很容易依赖通常的模式并仅从您的角度处理挑战。但是,当您与上司和团队成员就挑战进行交流时,您可以找到各种方法来解决该问题。

2、保持好奇

好奇心是所有顶级开发人员的关键行为。对理解“为什么”和“如何”的好奇心使开发人员成为任何团队的巨大资产。历史上的大多数突破性发现和发明都是好奇心的结果。

在软件工程工作中,好奇心非常重要,因为它可以帮助领导者及其员工适应不确定的市场条件和外部压力。永远记住,了解业务需求也是必不可少的。

好奇心促使我们对决策进行更深入、更理性的思考,并提出更具创造性的解决方案。

3、将极简主义方法应用于软件工程

在软件工程中教授极简主义几乎是不可能的。但下面是我简陋的极简主义清单。

  • 最快的代码是根本不运行的代码。
  • 运行较少的 SQL 查询总是更好。
  • 当功能、工具和框架较少时,复杂性的数量就会减少。
  • 太复杂会浪费你的时间和金钱。
  • 不要浪费时间做无用的事情。
  • 软件工程师应该始终专注于避免复杂性和代码。
  • 建立一支高效的团队很困难,但至关重要。大多数工程师都错误地避免了这个过程,而是依赖于库、gems和新技术。
  • 软件工程师应该能够阐明项目需求,并能同时与许多其他团队和部门一起工作。
  • 工程师必须找到替代方案来避免技术债务。
  • 成功的软件工程师必须关注复杂的细节,例如分析和维护旧代码或开发战略方法。
  • 假设你现在软件工程师应该可以同时管理多个项目。

4、建立你的品牌

根据我的经验,软件工程师不会推销自己或专注于建立自己的个人品牌。这是因为他们中的大多数人认为品牌推广是一项不必要的任务。但是,他们需要意识到,如果没有个人品牌,软件工程师要获得真正的认可会变得非常困难。

我相信建立个人品牌是对我年轻的自己最重要的建议,因为它可以帮助任何人:从自由开发人员到企业家,再到求职中的工程师。包括软件工程师在内的每个人都需要在竞争中脱颖而出,尤其是在工作稀缺的新常态下。

软件工程师建立个人品牌的方式:

A. 更新您的 LinkedIn 个人资料:您的 LinkedIn 个人资料应包含简历中的所有信息,甚至更多。该信息的显示方式应告诉招聘人员您值得被考虑。

B. 始终如一地发帖:开始使用您的个人帐户在 LinkedIn 和 Twitter 上始终如一地发帖。当您定期发布时,您的联系人会很期待您的内容,这将导致你高度参与。

C. 传播对你的工作的热情:表现出热情并不是一个非常优秀的候选人的最佳预测指标之一;然而,招聘经理在他们的面试反馈中反复提到这一特征。

5、选择正确的组织

人们经常追逐职位而不关注公司。在求职的时候,一定要好好选择,选择适合自己的公司。

这很重要,因为您将提供服务并与该公司建立联系——他们的愿景和使命,以及他们的价值观。如果公司的价值观和你的价值观一致,你所做的工作就会给你带来更多的满足和快乐。

公司应该投资于您的职业发展。它应该有侧重于员工成长的实践,例如小型课程或讲座。

合适的组织也将拥有合适的高智商人才资源。经验丰富的工程师将帮助您阅读整洁的代码并深入理解它们。您的组织应该有一种文化,让资深同事教后辈分析创新方法和技术决策背后的原因。周围有经验丰富的同事可以显著加快您的学习时间。

因此,请记住进行研究并尝试尽可能深入。不要被公司的网站或基础设施分心。研究他们的产品、服务和客户。您对公司、其使命、愿景、文化了解得越多,您就越了解它将如何影响您的职业发展。

6、成为领域专家

领域专业知识对于项目的成功非常关键。很少讨论获得领域知识的重要性,尤其是与我们对提高技术技能的重视程度相比。成为领域专家对您的职业发展意义重大,并指导您在职业生涯中做出正确的决定。

在组织中,有时只有专家才能挽救局面。这就是为什么大多数公司对招聘领域专家而不是通才感兴趣的原因。

在当前情况下,具有技术背景的领域专家比纯技术人员更受欢迎。领域专家具有领域知识、相关挑战、领域分类、生态系统和趋势的优势。他们对不同的问题或场景有更好的理解。领域专家可以帮助交付灵活敏捷的应用程序或软件,以帮助公司提高其产品的适销性。

7、建立客户心态

对于工程领域内的任何人来说,贴近客户仍然是一项主要的竞争优势,因此,随着时间的推移,我见过的最成功的人是以客户为中心的,而不是以解决方案为中心的。解决客户问题,避免过度架构,保持简单,并关注客户的机会和愿望。

工程师应该在客户的目标范围内进行投资并致力于提供帮助 。无论是为一个奇特的问题寻找单一的解决方案,还是只是提供友好和有用的服务,这种方法都可以促进您周围的短期和长期客户的成功。

8、乐于接受变革-每20-30个月改变一次角色以促进职业发展

如果您一遍又一遍地解决相同的问题,例如构建相同样式的应用程序或相同样式的网站,则无关紧要。长时间从事相同的工作可能会使您的简历看起来停滞不前。换到另外一个新职位有助于保持您的技能新鲜。改变职位的另一个重要原因是,你通常只在最初几年学到最重要的东西,换职位可以开发更广泛的内容,可以使您的简历对雇主更具吸引力,它表示您只是愿意接受新的挑战和机遇。

9、如果当前组织不合适,请采取下一步行动

没有人在工作时期望它会变成失望。一旦你得出结论,你的工作已经成为紧张的根源,事情可能看起来确实很严峻。

如果你发现你有一个讨厌的老板,他可能不会回应反馈,否则你就会经常筋疲力尽。

不要忍受一个糟糕的雇主,也不要在害怕在情况不利时离开。你不能忍受那些不准备助力你成长的人。

10、学会在不舒服的情况下自在

“走出你的舒适区。只有当你尝试新事物时愿意感到尴尬和不舒服,你才能成长。” — 布赖恩·特雷西

安全行事可能会多次分散您对成功的注意力。学会在不舒服的情况下感到自在将有助于个人实现他的最高潜力水平。如果他远离第一个楼梯,就永远无法成长并达到新的高度。学习新技能和课程将对您的一生有所帮助。

走出舒适区的最佳方式之一就是承担明智的风险。它鼓励您发展有助于长远发展的高级技能。它还将为您提供更大的主人翁感和对工作的信心。

11、持续学习:技能提升/再培训计划

数字世界正以非常快的速度向前发展。将其视为非常重要的职业建议,因为软件工程师不仅必须了解他们的技术领域,而且还必须深入了解其他多个领域。为此,持续学习、技能提升/再培训计划是最好的方法。当个人获得各种技术学科的认证时,他可以更好地了解问题和客户要求。

持续学习和各种认证可以帮助工程师展示他们的能力、对专业的承诺,并在他们的专业领域建立专业知识。此外,认证培训和延续主题通常会定期改进,以确保在该领域执业的任何人都能跟上最新的趋势和发展。

12、计算和软件工程很容易,但人很难

对于软件工程师来说,了解和理解他们工作的社会方面对于获得成功至关重要 。通常,人类的工程师没有意识到理解社会方面的价值,后来这在某种程度上限制了他们的职业生涯 。

这背后的最大原因之一是,很多时候,我们必须与其他个人或团队合作,技术技能不那么重要,但沟通和协作更重要。这就是为什么不仅要专注于您的技术技能,而且要与周围工作的人互动并了解他们的原因至关重要。

13、建立你的社交网络

社会结构”是围绕您并支持您的团体或社区。它可以是你的家人、你的同事、你的教会或你的邻居。这是在您需要时为您服务的社区。它们是将我们联系在一起的社会纽带,或者不是,取决于每条线所蕴含的价值组合以及它们彼此之间的互动方式 。

社会结构的质量决定了一个人能够如何有效地构建其人员组织以实现包容性、可持续的繁荣。创造更强大、更有凝聚力的社会结构的关键不在于创造僵化、不妥协的价值观。它是通过有意识地更新和充电支撑社会结构的有凝聚力的价值观。

14、寻找导师

正确的指导关系可以成为职业发展的有力工具——它可以带来新工作、晋升甚至更好的工作与生活平衡。

寻找导师的最佳方法是了解您的目标(短期和长期)。您的目标越具体,就越容易找到合适的导师。制定有效、易于实现的目标的一种策略是 SMART 工作:具体、可衡量、可实现、相关且有时限。

第二个最好的方法是了解您现有的人际网络。某人对您的工作和能力了解得越多,他们对您的指导就越有效。如果有人不知道您的工作,或者您从未与他们交谈过,请寻找联系点。确保您正在考虑的人也拥有您正在寻找的专业知识。

15、技术管理硕士学位

计算机和信息技术工作岗位预计将增长 12%,并增加 546,200 个新工作岗位。获得信息技术硕士学位可能是职业发展的关键一步,特别是如果您的专业经验有限,想要改变职业,或者即使您已经在该行业工作了一段时间并希望更上一层楼。

硕士学位可以通过获得系统思维、商业道德和组织战略方面的经验,将你的战略思维技能提升到一个新的水平。此外,它还将帮助您获得终身证书,展示您在该领域的专业知识和奉献精神,同时扩大您的专业网络。

16、应用JOMO原则而不是FOMO

害怕错过或 FOMO 是您可能会错过美好时光的想法。这是一种焦虑或遗憾的感觉,它伴随着听到某个事件并需要待在那里以防万一你错过了什么。但好消息是,您可以用更健康、更快乐的版本来代替对错过的恐惧:错过的喜悦。

错过的喜悦教会我们正确的地点和正确的时间的价值。这并不意味着对每个社交活动或机会都说不,而是意味着知道何时说是或否。

17、软件工程伦理

软件开发人员是保护我们关键基础设施不可或缺的一部分。他们的工作是编写对人们的生活产生巨大影响的算法。学术和专业团体在为软件工程师制定道德准则方面处于独特的地位,但它们的影响力并不大。软件工程师的道德准则不应该看起来像一种代码或“注意”列表。

它应该更像是“所有软件开发人员都应该对编程偏见及其潜在危害进行自我教育,检查他们的计划和后续代码是否存在这种偏见,能够解释他们如何处理这些问题,愿意对他们的代码进行审查,要求对可能导致偏见的守则中发现的缺陷负责,并解决监督委员会提出的问题。”

18、选择你的方向:技术或产品管理或人员管理

在解决扩展业务的挑战时,有很多不同的思维方式。有幸接触过各种工作环境的软件工程师能够塑造他们对正确轨道的思考,以追求前进。

19、要想成为动机的头号谜题

要想成为动机的头号谜题,软件工程师需要能够清楚地描绘他的日常工作如何融入更大的图景,以及他是否想知道他们所做的工作是否相关。

第一步是列出你想要实现目标的原因。这就是为什么你需要在你的目标中扎根。此外,要为暂时的挫折或纯粹的疲惫做好准备,但不要把它放在心上,而是坚定地继续前进。

20、花时间在软件工程模式上

A.可观察性:它是一种工具或技术实践,使工程和运维团队能够勤勉地调试他们的系统。它探索了可能未事先定义或识别的新模式和属性。因为代码在生产中(和分段中)的行为可能不同,所以主动观察生产中发生的事情对用户的影响很重要。为了执行真正的系统可观察性,您需要检测代码以生成有助于提出任何新问题的遥测数据。

B.监测代码:这种做法使运维团队能够观察和理解其系统的不同状态,这通常通过预定义的指标、实时更新的仪表板报告来完成。提供给这些仪表板的数据基于组合一组对您很重要的预定义指标或日志。

我希望你觉得这些技巧很有用。让我知道您想向年轻的自己提供上述哪些建议。

在接下来的 18 个月里我会学习什么?

1. 量子计算和Q#

2. 去中心化计算

3. RUST

4. Tensor Flow

5. Snowflake

6. Unity(用于 3D 建模、AR、VR、MR)

7. 5G

8. 寻找反向导师

概况总结

您可能会想:为什么所有这些职业建议都很重要?让我的直接经理高兴还不够吗?嗯,在较大的公司中,答案通常是肯定的。但在初创企业中,答案通常是否定的。在成功的旅程中存在无法解释的挑战,但是当您从一开始就朝着正确的方向前进时,应对这些挑战就会变得更容易,并且比其他人走得更快。

我向年轻的自己和所有年轻的软件工程师保证,从长远来看,这个职业建议会带来回报。将其视为职业指南,并确保在追求梦想的同时记住这些要点。

Avanade Inc副总裁--给年轻时作为软件工程师的自己的建议相关推荐

  1. 一名大学毕业生的反思_反思我大学毕业时的软件工程师的第一年

    一名大学毕业生的反思 Note: This post is mainly targeted towards students who are about to graduate or have alr ...

  2. AI公开课:19.04.10颜水成—360副总裁《人工智能:观察与实践》课堂笔记以及个人感悟—191017再次更新

    AI公开课:19.04.10颜水成-360副总裁<人工智能:观察与实践>课堂笔记以及个人感悟 导读       颜水成,新加坡国立大学副教授.360集团副总裁.人工智能研究院院长. 颜水成 ...

  3. 百度刚刚晋升的29岁最年轻副总裁李明远

    合肥技术联盟群联最新资讯20130801 58同城再曝上市传闻:筹资至少1亿美元 匿名消息人士称,58同城正在与瑞士信贷和摩根士丹利展开合作,筹备IPO交易. 原文链接:http://hfta.sin ...

  4. 太牛了!高考失利只能进清华,35岁成阿里最年轻技术副总裁,他来自另一个平行世界!...

    点击上方"码农突围",马上关注 这里是码农充电第一站,回复"666",获取一份专属大礼包 真爱,请设置"星标"或点个"在看&quo ...

  5. 高考失利只能进清华,35岁成阿里最年轻技术副总裁,他来自另一个平行世界!...

    点击"开发者技术前线",选择"星标????" 让一部分开发者看到未来 作者:电商君 来源:电商报 高考失利只能进入清华 有人评论贾扬清,说他的笑容,让人心生恐惧 ...

  6. 原IBM最年轻全球副总裁领军实达集团战略升级

    2017年11月28日,福建实达集团股份有限公司(股票代码600734,以下简称实达集团) 宣布任命IT业界知名高管叶成辉先生为总裁(首席执行官),并经过董事会决议增选为集团董事. 实达集团股份有限公 ...

  7. 腾讯京东苏宁领投新乐视智家;百度最年轻副总裁离职;北京工商约谈抖音丨价值早报...

    第[925]期早报由[周四]赞助播出 01 今日头条 腾讯京东苏宁领投新乐视智家 完成后公司持股比例下降至33.46% 4月18日晚间,乐视网发布公告称,新乐视智家已与多家企业达成投资意向,投资方包括 ...

  8. 腾讯公司副总裁梁柱:QQ即将上线3D厘米秀等功能 继续强化年轻社交

    [TechWeb]5月21日消息,2019年腾讯全球数字生态大会在昆明开幕,腾讯公司总裁刘炽平表示:"我们希望做生态的'共建者',成为大家的'帮助者',而不是传统互联网行业的颠覆者.&quo ...

  9. 微软全球执行副总裁沈向洋:你给自己的定位是什么,你就会得到什么

    来源:AI 科技评论 摘要:沈向洋,美国国家工程院院士.微软全球执行副总裁.ACM/IEEE Fellow.多年来,沈向洋专注于计算机视觉和计算机图形学的研究,并领导和开发了 Bing 搜索.目前,他 ...

最新文章

  1. django mysql 时区_django 中的时区设置
  2. 蚊子已经很可怕了,而这些吸血昆虫能让你感受真正的恐惧
  3. Xcode7 真机免证书调试Cocos2D游戏
  4. access手工注入笔记
  5. hdu 1227(二维dp)
  6. 算法训练营02-预备知识和时间复杂度分析
  7. role cache - set data user parameter - /UI2/CACHE_DISABLE
  8. 知识点025-服务器的基础优化脚本
  9. php项目部署lnmp,如何在lnmp环境里,部署多个php项目?
  10. 用AsyncTask来获取网络图片
  11. Tensorflow--代码1
  12. php 修改input内容,JS简单获取并修改input文本框内容的方法示例
  13. linux 从github拉取更新_关于拉取请求
  14. ubuntu16.04 安装Opencv 3.1.0 import cv2 报错ImportError: No module named hdf5
  15. 哪些人可以报考公务员 哪些人不能报考公务员
  16. Replugin源码及原理深度剖析--唯一Hook点原理
  17. [渝粤教育] 北京师范大学 中国哲学 参考 资料
  18. C语言编程——输入某年某月某日,判断这一天是这一年的第几天?
  19. 手把手教你如何连接阿里云RDS云数据库
  20. (转载)虚幻引擎3--12掌握虚幻技术UnrealScript 代理

热门文章

  1. ext3 升级到 ext4
  2. Python实现线性拟合
  3. CTF之加密解密训练
  4. openmpi linux 路径,测试openmpi出错
  5. python获取当前时间戳Long类型
  6. ElasticSearch CPU100%
  7. Ripple(瑞波)杂项
  8. 设计模式之门面模式和调停者模式
  9. 使用(telemetry)ceilometer+gnocchi对openstack云平台监控数据采集和处理的实践与优化
  10. elmo驱动器使用EAS II配置教程