首页 » 编程知识 » 程序员的工作经验真的有那么重要吗?

程序员的工作经验真的有那么重要吗?

admin 编程知识 84 次浏览 没有评论
程序员精选俱乐部

现在这个社会,就是这么无情吧,没有工作经验就好像没法找到一个好一点的工作。但谁又一开始就拥有熟练的工作经验,你说大学就是一个学习工作经验的地方,但很多地方它是不一样的,大学被说成是象牙塔,也不是没有道理的。

程序员的工作经验真的有那么重要吗?

第一点:经验是从工作中来的

公司是有其自己的业务和产品的,每个公司都是这样对外宣称的。这些事每个公司对外介绍自己最值得骄傲的地方,也是使自己不同于其他公司的杀手锏。即使都是外包公司“那我们的外包模式和针对的行业也是不同的,我们有自己的特色”每个公司都在尽最大努力来时自己变得这么个性。

第二点:工作经验中存在很大的水分

“工作经验中的水分”这样说有些太白话了。但是我相信大家还是能理解其意思的。

第三点:经验不等于能力

经验和能力是成正比吗?在我看来答案是否定的。甚至有时候是成反比的。假如你在公司工作了 3 年,但是这 3 年都在重复着相似的劳动,如果不去拓展你自己的能力,这项劳动就会阻碍你自身的提升。即使你在重复几年,依然如此。

关于程序员的几个阶段

每个程序员、或者说每个工作者都应该有自己的职业规划,如果看到这里的朋友没有自己的职业规划,希望你可以思考一下自己的将来。

第一阶段:三年

我认为三年对于程序员来说是第一个门槛,这个阶段将会淘汰掉一批不适合写代码的人。这一阶段,我们走出校园,迈入社会,成为一名程序员,正式从书本上的内容迈向真正的企业级开发。

第二阶段:五年

五年又是区分程序员的第二个门槛。有些人在三年里,除了完成工作,在空余时间基本不会研究别的东西,这些人永远就是个Coder,年纪大一些势必被更年轻的人给顶替;有些人在三年里,除了写代码之外,还热衷于研究各种技术实现细节、看了N多好书、写一些博客、在Github上分享技术,这些人在五年后必然具备在技术上独当一面的能力并且清楚自己未来的发展方向,从一个Coder逐步走向系统分析师或是架构师,成为项目组中不可或缺的人物。

总结的十条经验教训

1、从小事做起,然后再扩展

无论是创建一个新的系统,还是添加功能到现有的系统中,我总是从一个简单到几乎没有任何所需功能的版本启动,然后再一步一步地解决问题,直到满意为止。我从来没有妄想过能够一步登天。相反,我一边开发一边学习,同时新掌握的信息还可以用于解决方案中。

程序员的工作经验真的有那么重要吗?

2、一次只改变一件事

当我们在开发时,碰到测试失败和功能无效的情况,如果你一次只研究一个问题,那将会更容易找到问题的关键。换言之,就是使用短迭代。必须确保这个问题解决之后,再转移到另一个问题上。这适用于向下提交。如果在你添加新功能之前需要先重构代码,那么先提交重构,然后再添加新的功能。

3、尽早地添加日志记录和错误处理

在开发新系统时,我做的第一件事就是添加日志和错误处理,因为这两者从一开始就非常有用。如果系统不能照常工作,那么你就需要知道程序中发生了什么——这是日志的作用。错误处理也是如此——错误和异常越早处理越好。

4、每一行新代码必须至少执行一次

在你真正完成一个功能之前,你必须对它进行测试。不然,你怎么知道它是不是按照你的想法在执行呢?通常情况下,最好的方法是通过自动测试,但并非总是如此。不过,不管怎么说,每一行新代码必须至少执行一次。

5、在整体测试之前先进行模块测试

先进行部分模块测试可以节省时间。通常说来,我们在整合不同的模块时也会出现问题,例如模块之间的接口不匹配。但是如果我们能够信任各个组件的话,那么跟踪集成问题就会变得简单得多。

6、客户在接触到产品之后,才会真正明白自己的需求。

这是我在我的第一份工作上面学来的。只有当我们给客户展示产品的时候,他们才会意识到哪些是必须的。给出一个功能性原型设计远远比一张长长的文字表格要好。

7、只要有充足的时间,所有安全防御系统都将失败。

安全防御现如今是全世界都在关注的大课题、大挑战。我们必须时时刻刻积极完善它,因为黑客只要有一次成功,就可以彻底打败你。

8、安全防御是否失败取决于及早规划。

假设有黑客会彻底破坏你的防御系统,那你就得提前做好准备。这样即便真的让他们侵入了系统,也盗取不了任何有价值的东西,因为你已经对服务器做了安全设置,比如对数据库中的内容进行了加密,并且对每台有可能遭受攻击的服务器进行了隔离。

记住,再强大的防御都会有它的薄弱之处,关键是要有备无患。

9、良好的安全防御系统不要在乎它的费用,因为这是战略投资;不及格的安全防御才是被浪费的资源。

在我的职业生涯中,经常听到有人抱怨说安全防御是多么多么的复杂和昂贵,他们没有意识到的是,如果防御失败,公司将损失的可能不止几十亿美元。为了节约几块钱而导致企业破产,这种做法毋庸置疑是非常愚蠢的。

10、将复杂的东西整理成简单的,是很难的,但是要是把复杂的捣鼓成更加复杂的,那就简单了。

这一条适用于编程、设计和几乎所有的创造领域中。我一直以来都希望自己的代码能越易于理解越好。如果你的代码过于复杂和晦涩,那十之八九它正常工作的可能性很低。我曾非常有幸地见识到有些程序员费劲千辛万苦,反而让代码更加难以捉摸了。

义乌奥美编程,转载链接。

本文永久链接: http://code.ywbb.com/82.html

发表评论

Go