0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一位软件开发工程师的十项工作经验

工程师人生 来源:网络整理 作者:工程师吴畏 2018-07-09 16:35 次阅读

0. “面向对象”比你想象的要难得多

也许只有我有这种想法,不过我曾经以为计算机科学课上学过的“面向对象”是很简单的东西。我的意思是,创建一些类来模拟现实世界能有多难啊?其实,那还真是挺难的。

十年之后,我仍然在学习如何合理地建模。我后悔以前我没有花更多的时间来学习面向对象和设计模式。优秀的建模技术对于每一个开发团队都是非常有价值的。

1. 软件开发的难点在于沟通

这里的沟通是指与人的沟通,而不是socket编程。有时你的确会遇上棘手的技术问题,但是这种情况根本不常见。常见的问题在于那些你和项目经理之间的、你和客户之间的、还有你和其他开发者之间的误解。培养你的软技能吧。

2. 学会拒绝

当我刚开始工作的时候,我非常急切的想要去讨好别人。这也就是说,我几乎不能去回绝别人对我的要求。我加了很多班,但是还是不能完成他们交代给我的所有事情。结果他们表示不满意,而我也表示要崩溃了。

如果你从不回绝别人,你的答应就显得毫无意义。承担能力所及的事情,如果别人不停地指派给你更多的事情,你需要明确的表示那意味着将会耽误其他的工作。

为了应付这种事情,我会随身携带一张列有待办事项的纸(To-do list)。当人们叫我去做什么事情的时候,我就给他们看这张纸,并且问他们我应该为他们挤掉哪个事情。这是我用来拒绝别人的一种好办法。

3. 如果每件事都重要,那就什么事都不重要

我们这一行,总是强调每种特性都是同等重要的,其实并不是这样。敦促你的同事,让他们承担起工作。

如果你不强迫他们选择该做和不该做的事情,你会轻松很多。相反,让他们来为你选择你这周的任务。这会让你生产出来的东西变得最有价值。如果其他的部分都还是乱糟糟的,至少你已经完成了最重要的。

4. 不要过度考虑问题

我可以站在白板前面一整天策划事情,但是这并不意味着事情会向更好的方向发展,这仅意味着事情将变得更复杂。

我的意思并不是“你不应该去做任何策划”,只是如果我会在实现程序的时候会很快遇到我没考虑过的问题的话,那为什么我不去尝试把它做好呢?像戴夫·法洛所说的,“魔鬼居住于细节中,而驱走魔鬼的方法是实践,而不是理论”。

5. 去钻研一些东西,但不要钻牛角尖

克里斯和我花费了大量的时间钻研SQL服务器的深层部分。那真的很有趣,我也学到了很多知识,但是过了一段时间我意识到,知道了那么多的知识并不能帮助我解决业务上的问题。

举个例子:我知道在数据表层次,SQL服务器不会接受IU锁——它只会接受IX锁。这是一个性能调整,因为在大多数情况下,IU锁都会升级成IX锁。为了了解这些,我花掉了无数天做实验,我读了很多的书,还在会议上向微软的员工了解情况。然而我用过这个知识吗?没有。

6. 了解软件开发系统的其他方面

这对成为一个优秀的开发者是很重要的,但是若要在一个开发软件的系统中成为优秀的一员,你还需要去了解开发系统中剩下的部分在干什么。QA是如何工作的?项目经理在干什么?业务分析员在忙些什么?这些知识会让你与其他员工产生联系,并使你和他们之间的互动顺畅。

向你周围的人寻求帮助,以便学到更多的知识。有什么好书呢?大多数人都会为你的关注而高兴,并且很乐意帮助你。在这上花一点小时间会对你有很大的帮助。

7. 同事是你最好的老师

在我找到第一份工作的一年后,我们和另一所公司合并了。突然之间身边就多出很多聪明又经验丰富的人。我深刻的记得这是我感到多么自卑和愚蠢。我努力地学习,读了一本又一本的书,还是还是赶不上他们。我发现他们和我比起来有非常突出的优势。

现在,我不会因为和优秀的人一起工作而感到难受。我认为我有一生的时间去学习。我提出问题,并且非常努力地去了解我的同事们是怎么做出结论的。这也是为什么我加入了 ThoughtWorks。把你的同事们看成财富,而不是竞争对手。

关于学习,不论是哪个行业,都是永恒的话题,正如 Jonathan Danylko 在总结自己 20 年的编程经验时所说到,“诚然,总有很多你不知道的技术,你可以从中学习以保持不落后。如果你有一种灵巧的方式来获取你需要的新技术,那你每天都应该坚持学习。”(编注:ThoughtWorks是一家全球知名的IT咨询公司。)

8. 做出可用的软件是最终目标

不管你的算法有多酷,不管你的数据库模式有多棒,不管你的什么什么有多么多么好,如果它不能搔到客户的痒处,它就不值一文。专注于做出有用的软件,同时准备继续做出后续软件,这才是正轨。

9. 有些人真的不可理喻

在你身边的大多数人总是很优秀的,你向他们学习,他们也向你学习。共同完成一件事情的感觉总是很好。然而不幸的是,你也有可能遇到例外。因为某些原因,人可能会变得冷漠刻薄。萎靡不振的老板啊,满口谎言的同事啊,无知愚昧的顾客什么的。不要把他们看的太重。尽量避开他们,尽量把他们所带来的痛苦和影响降到最小,但不要自责。只要你保持诚实并且尽力去工作,你就完成了你该做的事情。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1553

    浏览量

    67495
收藏 人收藏

    评论

    相关推荐

    优秀电源工程师需要哪些必备技能?

    随着电源市场的不断扩张,开关电源行业飞速发展,企业对电源工程师的需求日益增加,对电源工程师的技能要求也日渐提高,相信没有一位电源工程师会错过让自己变得更优秀的机会。作为
    发表于 01-29 11:29

    嵌入式硬件和软件哪个好?

    方案,要求理解嵌入式系统架构,有定的C语言基础,熟悉ARM、protel设计软件,有四层板开发经验。 成为优秀的嵌入式硬件开发
    发表于 12-05 15:17

    【热招】苏州,单片机工程师

    【单片机工程师】 3年及以上经验,要求有智能产品经验。 岗位职责: 1、根据MRD,与产品部等部门的需求,负责对新开发的产品进行可行性分析,主要负责分析产品的
    发表于 11-28 14:02

    【社区之星】彭仲维:扎实的基本功与时间的沉淀才是工程师成功的关键!

    入了电子行业。 社区小助手:作为名从业多年的工程师,能否分享你的工作经历和些比较成功的工程项目或优秀作品?
    发表于 10-13 14:15

    Rockchip RK3399软件开发指南

    本文档主要介绍 Rockchip RK3399 软件开发指南,旨在帮助软件开发工程师更快上手 RK3399 的开发及调试。
    发表于 10-10 07:15

    电源工程师常用的几个典型电路分享

    具有电源知识水平的工程师来完成设计和开发。作为名合格的电源工程师平时工作经验的积累很重要,但同时也应该提高理论水平,通过积累几个常用的电源
    发表于 09-20 07:59

    嵌入式软件好还是硬件好?

    架构,有定的C语言基础,熟悉ARM、PROTEL设计软件,有四层板开发经验。 成为优秀的嵌入式硬件开发
    发表于 09-18 15:31

    Linux开发工程师是吃青春饭的吗?

    Linux开发工程师怎么样?都说程序员是吃青春饭,Linux开发工作35岁之后还能做吗? 坦白说,如果程序员在35岁的时候,“工作经验
    发表于 08-24 09:59

    热门推荐:硬件工程师必备工具

    硬件开发工作流程般可分为:原理图设计、PCB Layout设计、采购电子BOM、PCB板生产、PCBA组装、功能调试及测试、小批量试产、大批量生产正式投放市场等步骤。 作为名优秀
    发表于 06-21 10:15

    招labview工程师 (广州)

    招labview工程师1-2名,工作地点:广州天河 负责仪器设备系统软件开发工作; 协助公司已有产品软件的维护及改进; 协助模块功能调试及系
    发表于 06-08 18:48

    个电子工程师

    我司主要设计生产电动车和摩托车的灯具,日常工作主要配合产品电路板的绘制,焊样品。要求会看原理图,会使用AD画板软件,最好有灯具相关的工作经验。会3D设计软件(UG,CREO)优先录用。
    发表于 06-08 01:36

    上位机软件开发工程师

    岗位职责: 1、负责上位机软件程序设计和开发; 2、参与产线的需求分析和设计,满足客户需求; 3、根据技术协议配合电气工程师,提出上位机解决方案; 4、与电气工程师共同研发程序,完成通
    发表于 06-05 10:59 674次阅读

    【社区工程师专题系列第期】坚持兴趣成就嵌入式工程师——杨永胜

    经历: 2018年7月-2019年7月 杭州海康威视数字技术股份有限公司,嵌入式 Linux BSP 开发工程师2019年7月-至今 连云港杰瑞电子公司,嵌入式软件开发工程师 技能专长
    发表于 05-19 10:25

    礼赞五一 | 平凡的岗位,不平凡的坚守!致敬每个努力奋斗的电子工程师!

    工作经验的电子工程师老兵,他重视新人培养,发扬“传帮带”精神,近年来培养的工程师超百人。他就是电子领域的优秀人才——戴上举。 他,0-1组建了
    发表于 04-28 10:08