如何成为一个成功的软件工程师

如何成为一个成功的软件工程师

背景 上周,我参加了印度德里最值得期待的会议——C# Corner annual conference。如果你需要了解更多,那么请点这里。当我知道我有机会聆听大师级谈话的时候,真的非常惊喜。我学到了很多。下面我会把我听到的来自于Mr. Glenn Block的关于“如何成为一个成功的软件工程师”的要点分享给大家。这些内容激励了所有的与会者。Mr. Glenn Block是一位前微软员工,他曾在微软工作了近10年,并且他一直是Azure、WCF、.NET等的一部分,目前,他正担任着Splunk的首席产品经理。 我在写这篇文章前得到了Mr. Glenn Block的允许。 如何成为一个成功的软件工程师? 我发现Mr. Glenn Block提出的所有建议都非常有意义,并且我们每个人都应该好好学习。 不要害怕失败 我们是开发人员和程序员。我们也是人,我们也会犯错。你是不是没有任何错误就创建好了软件无关紧要。反倒是如果你这么说了,那么你可能需要确定你的软件是否能够正常工作。记住爱因斯坦有一句名言:“不要害怕失败。”

不要害怕失败,失败是你最好的老师。我们都曾犯过一些导致我们失败的错误,但更重要的是要从错误中学习。如果你这样做了,那么也许你的下一次尝试就成功了。 如果你从来没有失败过,那么说明你畏头畏尾,从来没有尝试过任何新的东西。 不要害怕寻求帮助 我们都工作在一个会犯错会失败的环境中。所以,你不应该害怕寻求别人的帮助。这样可以减少你的工作压力,并让你能够按时交付产品!而这正是你的经理对你的要求。有时候,你的后辈也能指引你走向正确的道路。所以,不要害怕寻求帮助。让你的自负随风而去吧。

做一个持续的学习者 这个时代每时每刻都有新事物被发明被创造。这在IT行业也是如此。每一天都有新的东西需要学习。在一天结束时,你学到了什么才是最重要的。你应该尝试所有与开发相关的技术。同时,重要的要掌握其中一些技术。

你不能掌握所有内容 在看完以上几点之后,你的脑海中可能会出现这样一个念头:“我怎么才能学习所有的内容呢?”当我说要成为一个持续的学习者时,其实这受你真正能学到什么的限制。你只需要去尝试你认为对你的编程生涯有帮助的技术。当然,正如我在上面所说,你必须掌握其中的一些技术。 重视你的代码 在你写代码的时候,只要确保代码确实能用一种清晰和易于阅读的方式如愿实现目标即可。我的朋友,Mr. Dhananjay Kumar说Mr. Glenn Block写代码就像是诗人在写诗歌一样,非常值得我们借鉴。此外,代码的可维护性也非常重要,否则维护这些代码的人搞不好在几天/月/年之后就得经历一场求生不得求死不能的痛苦。

找导师,成为导师 老师能够传业授道解惑,能帮助我们理解学习的内容。因此,找到一个能指点正确方向的导师尤为重要。向你的导师学习,因为导师可以教你许多他/她从他/她的生活中总结出来的内容。正如大家都知道的,“经验让人完美”!一旦你学会了,那不妨也成为别人的导师,分享你从你的导师那里学到的知识。当然,在做导师的时候,请确保不要误人子弟。

不要拖后腿 不可否认我们周围有不少拖后腿的人。虽然没有强制要求说所有人都必须优秀。但是有时你可能会不得不和一个消极被动的人一起工作。但是重要的是,你得保持住自己的乐观和主动性。 不要过度承诺 我们的项目都有时间期限,这是我们都知道的。你在时间框架中能做什么是有限制的。要去理解那些。当你接受需求列表时,你应该清楚你需要付出什么样的努力以及多少时间才能完成工作。如果不能满足你的经理/客户给出的时间框架,那就随时告知报告人。发布如他们期望那样而非满是bug的产品很重要。所以,千万不要过度承诺。如果你这样做了的话,那就准备好再找一份工作吧。因为你可能会被炒鱿鱼。

永远不要在你想说“No”的时候违心地说“Yes”。 正确的想法不必是你的想法 这一点还需要我解释吗? 我们都在工作,我们都有脑子,我们都有自己的想法。有时候你的后辈也可以教你很多,有时候他解决问题的速度快于你。承认这一点,并赞同他们给出的解决方案。集思广益将有助于按时交付项目。重要的是,这能帮助你做到不以自我为中心。

做一个良好的倾听者 做一个良好的倾听者,意味着你可以通过他人的角度来看事情。这将丰富你的阅历提高你的声誉。如果他们错了,你就向他们解释他们错了以及为什么。 测试,测试,还是测试 测试是软件开发周期中最重要的角色之一。没有经过适当测试之前永远不要发布你的产品,因为测试是捕获bug的阶段,而bug是为客户和管理者所不喜的。如果你认为你已经做完测测试了,那么再做一次。 问:开发人员说的最多的谎言是什么? 答:我已经做过单元测试了。 模式 始终追求适合你项目的最相关的模式。如果你根据自己的要求选择模式的话,它可能会在最后的周期使你功亏一篑。 问:软件开发中最重要的阶段是什么? 答:需求收集或需求理解。 成为社区的一部分 这一点也非常重要。你需要成为一些社区的一份子,因为这些都能给我们提供帮助。推荐一些很不错的社区:

  • C# Corner
  • MSDN
  • ASP.NET
  • Stack Overflow
  • Code Project

这种方式可以让你在网络世界中被大家所关注。分享你的所有知识,并尽可能地从各种资源获取知识。 致力于OSS(Open Source) 如果你得到一个机会可以致力于开源项目,那么一定不要错过,一定要勇往直前。这将增加你的声誉,因为开源项目正在被数十亿用户使用。

原文发布于微信公众号 - Java学习网(javalearns)

原文发表时间:2016-04-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏镁客网

微软Build 2017首日总结:无处不在的云服务和AI

1122
来自专栏云计算D1net

如何抓住一片云:云计算成科学家宠儿

计算机学家Mark Howison正在准备分析提取自24个管水母目动物的RNA,这种海洋动物与水母和珊瑚关系密切。但美国罗得岛州布朗大学的本地高性能计算机在维修...

3727
来自专栏BestSDK

VR画面再完美,也少不了这款全景语音SDK助力

时代拓灵的全景声解决方案正是从低成本、易使用切入。硬件方面,时代拓灵主打面向 B 端的全景声录制设备 Twirling720,其最大特点是一体化程度高、便携易用...

3524
来自专栏云计算D1net

成功案例研究:混合云到底应该怎么搞?

混合云计算一向被誉为是企业IT基础设施的未来之道。这种混合模式让任何企业都能较之对手获得竞争优势。采用混合云的理由各不相同,通常包括如下: 可扩展性方面更高的要...

2704
来自专栏MasiMaro 的技术博文

毕业两年的反思

到今年6月份,已经毕业两年了,在这两年中换过一家公司,从银行外包到安全行业,经历过加班,也经历过无所事事,心中有些感慨和想法与大家分享

1272
来自专栏互联网数据官iCDO

无需购买广告,25种方法教你驱动更多的电商流量(下)

促使紧迫感的内容效果有14%的点击打开率,59%的交易点击率,并且是其他营销邮件转化率的两倍。

852
来自专栏腾讯云技术沙龙

常青:小程序音视频技术实现以及在相关行业的实际应用

我演讲的内容是小程序音视频背后的一些技术支持。先讲一些术语,解释一些术语的概念,最后再说这些技术怎么去用起来,但是我觉得这比较容易陷入到大家都开始睡着的阶段。所...

76410
来自专栏云计算D1net

为用户提供太多选择是云的致命缺陷吗?

过去几年涌现出了大批“颠覆性”的新型科技初创公司,它们扎堆进入市场,为小公司和大企业推出各种各样的软件即服务(SaaS)和应用软件解决方案。乍一看,这是个好消息...

3285
来自专栏鹅厂网事

在苦难中的成长--从某宝某程故障看互联网业务系统可用性

"鹅厂网事"由深圳市腾讯计算机系统有限公司技术工程事业群网络平台部运营,我们希望与业界各位志同道合的伙伴交流切磋最新的网络、服务器行业动态信息,同时分享腾讯在网...

2709
来自专栏SDNLAB

SD-WAN领域16个热门网络产品

新的SD-WAN产品闪亮登场 随着网络蓝图逐渐向软件定义的方式转变,厂商们都发布了新的产品旨在降低成本,提高网络自动化并提高效率。 解决方案提供商需要着眼于新的...

38712

扫码关注云+社区

领取腾讯云代金券