当前位置:主页 > 建站资讯 > 正文

我的软件开发生涯 (10年开发经验总结和爆栈人生(4)

发布时间:2018-01-10 11:37    浏览:



5. 第五份工作是来澳洲后的第一份,做能源管理的,呆了两年,老板是斯里兰卡人,公司大部分员工是印度人,部门经理是伊朗人,其它都是印度码农。在这里接触到海量数据(起码当时来看算吧,单表30亿条,每天更新数百万),数千存储过程,在这里,做了大量数据库优化,性能暴升,我的数据库技术大增,还重写了主系统,掌握了ASP.NET MVC、Bootstrap、Knockoutjs等等一票技术。

6. 第六份工作是做Care的,接触到医学方面的知识,譬如身体检查就有近20个的项目,复杂的算法,几百个问题,过百页的算法。这里呆了2年,菲律宾大妈,你还安好?在这里掌握了Service Bus、angularjs、bower、yeoman等。

 

7. 第七份工作是做金融/财务贷款/支付的,呆了4个月,老板是犹太人,比较懂得把钱用到极致。经常要我加班,有些时候加班到晚上10点多,一些时候甚至星期天凌晨。 这个公司刚上市了,同事们都成富翁了。。。我还是穷人,悲从中来。。。

 

8. 第八份工作是做GIS相关的,目前呆了快一年,这里在微博吐槽了几十回了,不再细说。在这里掌握了团队管理/GIS、增强了WPF/数据挖掘/数据仓库等技术。

 

好了,说完经历就说职场吧。一句话:职场黑暗。遇到好多不爽的事情和混帐的人,有人的地方就有浆糊,有利益就有买卖,就有手段,博弈。这么多年就只有一个半公司尚算正常能让我好好地搞研发。

 

跳槽是加薪的最佳办法,跳槽是加薪的最佳办法,跳槽是加薪的最佳办法。重要的事情要说三遍。

 

 

如何成为一名程序员

 

说明:文章中提及的技术大部分已经过时,正确点来说,应用范围已经比较小了。因此我并不是介绍新技术,只是谈谈程序人生。

 

从事软件开发,可以是科班出身,也可以不是。我知道从事软件开发的,除了计算机专业的(计算机科学/软件工程等),还有科班是学电子、化学、生物、数学、医学等等,不一而足。而我,是学英语的。

 

做开发,首先是个人的能力。个人能力可以包括很多方面,不过,我觉得最重要的两样是:学习能力、交流能力。

 

可能有一些程序员会问怎样学习好英文,除了在课堂上认真学习英文外,可以尽量多看些英文节目、连续剧、新闻、广播来练习听力,多看英文技术书籍、文章提升阅读能力,多在英文技术论坛、博客交流提升表达能力。

 

我偏好高质量的代码。刚毕业的时候,写了一篇20多页的《VB编程标准》,想发表在《电脑报》上,可惜没有给编辑采纳,可能是我的语言表达太差了,但我仍然希望能在原来公司里面推行,可惜能理解的人太少。

 

这些年来,遇到各种各样的开发人员,各有各的编程风格,水平参差不齐。中国的程序员有个性,他们中的部分人相信能凭一己之力就能把一个系统做好,实际上,单枪匹马的英雄时代已经过去,开发人员应该是实干家,不应该发白日梦。他们为什么会拒绝接受编程规范呢?理由很简单:“我有我的习惯,为什么要花时间重新学习别人的规范?别人的规范不一定就好。”是的,别人的规范的确不是最好的,但在工作实践中总结出来的规范能切合实际需求,能让开发快速进行并完成,最关键的是能满足客户需求。同时,遵循同一规范,无论在开发交流还是工作移交,都能快速领会。

 

掌握好开发语言是每个程序员必须做的。但怎样才算及格呢?很多人说,掌握越多越语言越好,一些则说掌握一种就够了。我认为都有道理,但我相信在很好地掌握一种语言的基础上,举一反三,触类旁通地学习并能应用其它语言就更好了。实际上,我们不能强求不同的客户需求使用同一种语言,开发必须为客户需求服务。现在.NET大行其道,想想在2003年很多论坛上还有大量的帖子,主题都是围绕是否放弃现有掌握的技术,去学习.NET。这种问题类似于一直以来的争论不休的两种语言之间的优劣,最后还是不了了之的。实际上,任何语言都有其存在的理由,不必去争论什么,关键是自己用得舒服,能满足客户需求就好。我在工作中也要根据不同需求用不同的工具。除了语言本身,还的掌握好IDE(开发环境)/工具,工欲善其事,必先利其器。

 





上一篇:安卓软件开发教程
下一篇:标准的软件开发过程(转载)
感兴趣吗?

欢迎联系我们,我们愿意为您解答任何有关网站疑难问题!

关注我们

扫一扫,加微信

客户服务热线:0851-88574848 点击在线咨询 地址:贵阳市南明区花果园