北大青鸟通州校区

手机网

|

微信公众号

质量软件学院

全国咨询电话:400-008-1781

支持你成为一个受人尊重的IT人才
首页 详情

一位合格的软件工程师应该具备哪些修养

2018-09-28 11:11:11 课程:JAVA

程序员很多,但成为了合格软件工程师的却不多,每天敲着代码,修着bug,程序员们可曾有过一些职业规划?如何成为一名合格的软件工程师


今天,小编整理了几位软件工程师大牛的一些经验之谈,希望对程序员的你能有一些启发与帮助。


合格软件工程师必备素养的文章目录:


一:自我能力方面的经验总结:

  • 学历代表过去,能力代表现在,学习力代表未来

  • 一定要确定自己的发展方向,并为此目的制定可行的计划

  • 软件开发团队中,技术不是万能的,但没有技术是万万不能的!

  • 详细制定自己软件开发专业知识学习计划,并注意及时修正和调整

  • 书籍是人类进步的阶梯,对软件开发人员尤其如此。

  • 养成总结与反思的习惯

二:在与人交往中的注意事项:

  • 第一印象很重要

  • 知道如何做出好的估算

  • 负责任

  • 你的老板想要你做什么?

  • 你的老板不希望你做什么?


自我能力方面的经验总结


        一:自我能力方面的经验总结


“学历代表过去,能力代表现在,学习力代表未来。”

其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友对这个道理有些体会吧。但我相信这一点也很重要:“重要的道理明白太晚将抱憾终生!”所以放在每一条,让刚刚毕业的朋友们早点看到哈!


一定要确定自己的发展方向,并为此目的制定可行的计划。

不要说什么,“我刚毕业,还不知道将来可能做什么?”,“跟着感觉走,先做做看”。因为,这样的观点会通过 你的潜意识去暗示你的行为无所事事、碌碌无为。一直做技术,将来成为专家级人物?向管理方向走,成为职业经理人?先熟悉行业和领域,将来自立门户?还是先 在行业里面混混,过几年转行做点别的?这很重要,它将决定你近几年、十年内“做什么事情才是在做正确的事情!”。


软件开发团队中,技术不是万能的,但没有技术是万万不能的!

在技术型团队中,技术与人品同等重要,当然长相也比较重要哈,尤其在MM比较多的团队中。在软件项目团队中,技术水平是受人重视和尊重的重要砝码。无论你是做管理、系统分析、设计、编码,还是产品管理、测试、文档、实施、维护,多少你都要有技术基础。算我孤陋寡闻,我还真没有亲眼看到过一个外行带领一个软件开发团队成功地完成过软件开发项目,哪怕就一个,也没有看到。倒是曾经看到过一个“高学历的牛人”(非技术型)带一堆人做完过一个项目,项目交付的第二天,项目组成员扔下一句“再也受不了啦!”四分五裂、各奔东西。那个项目的“成功度”大家可想而知了。


详细制定自己软件开发专业知识学习计划,并注意及时修正和调整(软件开发技术变化实在太快)。

请牢记:“如果一个软件开发人员在1、2年内都没有更新过自己的知识,那么,其实他已经不再属于这个行业了。”不要告诉自己没有时间。来自时间管理领域的著名的“三八原则”告诫我们:另外的那8小时如何使用 将决定你的人生成败!本人自毕业以来,平均每天实际学习时间超过2小时。


书籍是人类进步的阶梯,对软件开发人员尤其如此。

书籍是学习知识的最有效途径,不要过多地指望在工作中能遇到“世外高人”,并不厌其烦地教你。对于花钱买书,我个人经验是:千万别买国内那帮人出的书!我买的那些家伙出的书,100%全部后悔了,无一本例外。更气愤的是,这些书在二手市场的地摊上都很难卖掉。“拥有书籍并不表示拥有知识;拥有知识并不表示拥有技能;拥有技能并不表示拥有文化;拥有文化并不表示拥有智慧。”只有将书本变成的自己智慧,才算是真正拥有了它。



养成总结与反思的习惯,并有意识地提炼日常工作成果,形成自己的个人源码库、解决某类问题的通用系统体系结构、甚至进化为框架。

众所周知,对软件开发人员而言,有、无经验的一个显著区别是:无经验者完成任何任务时都从头开始,而有经验者往往通过重组自己的可复用模块、类库来解决问题(其实这个结论不应该被局限在软件开发领域、可以延伸到很多方面)。这并不是说,所有可复用的东西都必须自己实现,别人成熟的通过测试的成果也可以收集、整理、集成到自己的知识库中。但是,最好还是自己实现,这样没 有知识产权、版权等问题,关键是自己实现后能真正掌握这个知识点,拥有这个技能。



在与人交往中的注意事项



二:在与人交往中的注意事项:


第一印象很重要

一份新工作要有一个好的开端。不要迟到,不要当“混球”,别一上来就说:我们需要抛弃公司正在用的框架。

抵制住那些试图证明自己的诱惑,会有更好的,更谦逊的方式。


知道如何做出好的估算

业务和技术之间沟通,一般都是确认需求和工作量的估算。

工作量的估算归结为两点:

你认为什么时候能完成,以及你对那个日期有多自信。


这是需要从经验中磨练的技能,但我有两个秘诀:

1.工作量越大,估算就越难。我总是把一个大的任务分成更小的部分,每一个有1-3天的工作量。

2.如果你说要花一个星期,他们会问: “好的,你能在3天内完成吗?”要时刻准备为你的估算辩护。


负责任

负责一个服务。负责一个领域。理解服务背后的业务原因。

发现问题并开始改进,一点一点地改进。别幻想在最后时刻扭转乾坤。

你可能需要一段时间才能感觉到自己完全掌握它。我想这有点像收养一只流浪狗,刚开始对它有点感觉,但随着时间的推移,你会越来越了解它。

如果你的服务出现故障或发现一个严重的bug?-?停止手上的工作,无论是多有趣或无聊,马上修复它。这是基本的职业道德。这不容易,成熟后才能理解。你需要慢慢适应。

有些事情会发生并可能影响到你的服务,你需要时刻关注它们。

例如,你的服务在等待另一个人在开发的的功能。要么客气地催促他,要么自己去做。努力设法推进工作。



你的老板想要你做什么?

细节会因工作和公司而异,但不管你在哪里,有些事情都是一样的:

没有人喜欢一个爱发牢骚的人。不要因为他们让你“更新15个不同模板的措辞”就抱怨,或吐槽任何其他种类的粗活。抱怨越多,你会发现你的同事比你在事业上发展地更快。你不想每一次都做这些工作,但是除了抱怨之外,还有更好的方法来得到更好的工作。

完成任务。“完工了,就等着合并到主分支(master)了”,这意味着工作还没有完成。合并到主分支并部署到预生产/生产环境。你的老板会很感激你,如果你说“完成”就代表确实完成了。

了解与你领域相关的关键数据。它会给人一个深刻的印象,你确实了解你的领域。是的,这也适用于软件工程。不用说,捏造数据是你能做的最糟糕的事情。如果你不知道就直说,然后说“给我10分钟查一下”。


你的老板不希望你做什么?

当一个重大问题出现时,不要隐藏。直接告诉你的老板, 有些事情不正常,你正在处理。告诉业务在解决此问题之前,你不能进行任何其他的工作。

对任务不要过度承诺。如果你认为业务给你的工作可以在3天内完成,承诺他们6天,而不是2天。因为总会有其他的事情出现,它们会花掉你5天时间。但是你答应了他们要6天,这意味着你仍然“超过预期”,因此你很“擅长估算”。


年轻的却是一笔最好的财富,而多数时候,我们不知道如何运用这笔最宝贵的财富,将之挥霍一空了。所有平凡的日子加起来,就将汇集成了你的一生。如果不希望平淡的生活下去,就要更加努力的去拼搏。找到自己的偶像,追赶他,榜样的力量是无穷的;找到自己的竞争对手加朋友,与之一起战斗,你能走多远,在于你和谁一起同行。虽然现实残酷,时常迷茫,不知所措,但我总提醒自己,要乐观的生活,也许,机会就在眼前。

继续阅读

更多相关文章