程序员的成长过程应该保持什么样的心态和掌握哪些技能

来源:V型知识库 2017年08月22日 09:00 浏览:3284

昔日产品谤我、欺我、辱我、笑我、轻我、贱我、恶我、骗我,如何处治乎?”

“只是忍他、让他、由他、避他、耐他、敬他、不要理他,再待几年你且看他。”

“还有什么可以躲得”

“舍得”

一个伟大的程序员

如果能用Y语言写代码,就能用X语言写代码。

可以迅速地解决问题,其中大多数能在一分钟内搞定。

不会写有缺陷的代码。

不需要编写测试代码。

喜欢深夜还在为客户编写代码。

不在电脑旁或办公室里也能调试代码。

了解关于硬件、最新的IT趋势以及框架等的一切,无所不知。

不与客户交流就能够理解客户的意思。

熟悉各种操作系统,从底层到上层,包括每一种移动设备上的系统。

可以编写运行在每一种设备上的代码,并且无需重新编译,无需设备转换,无需付出额外的努力。

1,改变思维方式

这个需要终生学习。距离说“目标达成”差很远。如果一直在思考奋斗目标,你就迷失了方向,要将程序员开发看作是一场“修行”。虽然你偶尔会迷路,但终归你将回到正途。不要试图做一个完美的流浪者,更不要抱怨这个世界不公平以及自我期望值太高,跟随自己内心的方向最重要。

2,良好的心态

如果你遇到无法摆脱的开发困境,你就该反思:“是什么导致这样的结果?是什么导致你一到下班的点就想回家,早晨叫醒你的是梦想还是闹钟?“因为我们无法躲避现实的工作,那就应该以良好的心态去面对。

3,优秀的团队

如果你在一个创业型团队里面,那么很多问题是避免不了的。大家也许都很优秀,但是当其中某个人因为报酬的问题,或者因为迭代过程中的开发需求感到厌烦的时候,很可能会破坏团队的氛围。如果每个人只顾自己的话,那么这个开发团队将会变得非常糟糕,所有人都会觉得在替别人做事,而不是在提升自我价值。如果团队中一位成员的水平跟不上团队的整体水平,也有可能会出现被排挤的现象,如果是因为自身能力不够,我建议还是尽早离开,避免不必要的矛盾,毕竟人生的路还很长,每个人都希望自己工作的团队气氛和谐,如果你目前在一个有”梦想“的团队工作,那么一切将非常美好,如果你只是一个狂妄自大的开发者并且破坏了团队气氛,请记住

“出来混迟早是要还的”

4,当遇到PM荒诞的需求

一些产品的开发文档看起来简直就是天马行空的想象,很多需求描述的不清楚,很多功能的实现不现实,这个时候不要想着和产品经理开撕,应该试图去和产品经理沟通如何将产品的每一个功能点需求用一句话描述清楚,而不是夸下海口:

“我可以很快实现,这只是个简单的功能而已,这个只是和那个什么什么类似”

5,不要和外行一般见识

没有做过程序开发的人总是觉得程序员是超人,可是程序员们应该也清楚并不是什么功能都是可以迅速实现的,当你刚刚接手一个项目开发时,根本不可能成功调试100000行代码的程序。先不谈产品层面的问题,每一个程序员都需要大量的时间来读懂代码,那么当Bug出现的时候才能第一时间修复。当遇到不懂开发的人说出:

“这只是一个简单的功能按钮而已”

“这么简单的功能那还不分分钟搞定?”

你的第一想法不应该是生气,而是告诉他任何事情都不像想像中那么简单。

6,经常熬夜请注意休息

很多时候,程序员需要加班来把开发任务完成,这似乎已经成了这行的行规。如果产品存在一个致命性的鼓掌,那么程序员应该第一时间修复,但是这往往需要额外加班甚至工作到半夜。很多程序员的生物钟甚至是日夜颠倒的,我知道调整生物钟很难受,但是如果可以,请务必善待自己的身体,很多程序员说我喜欢深夜写代码,但长此以往会导致严重的问题,身体在不断的透支,总有一天会垮,这时你应该合理的处理紧急事情,闲暇的时光尽量不要坐在电脑前。

7,非工作状态下

程序开发不可能没有Bug,这太正常了,既然知道无法避免,那就坦然接受吧。据心理专家分析,正常人可以同时思考三件事情,但是如果超过三个,大部分人的思维会出现错误。但是程序员往往需要记住的事情很多,例如:

1,项目经理的工期需求

2,产品经理的功能需求

3,敏捷开发的沟通会议

4,功能迭代的产品压力

5,照顾不到的家庭财务

一个程序员受到的外在干扰因素越多,写代码出错的可能性就越大,所以善于规划处理这些分心的事情非常重要,不要被他人影响。例如家庭,是每个人生命中最重要的组成部分,虽然有时候生活会欺骗你,但是家庭永远是你心灵的港湾,无论工作再忙都要安排一些时间来顾及家庭。不能仅根据工作量来计算工作精湛,需要考虑现实状况如何,如何正确的生活方式,你应该知道家里是否有哪些紧急情况,家人是否都平安健康,自己是否刚从疲惫的项目开发中恢复了元气,忽视生活就意味着忽视风险或机会。给一个精力充沛的程序员布置大量无聊的任务,意味着你错过了一个机会。而给一个家庭出现变故的程序员布置高度复杂的任务,则会增加风险。相比之下,程序员应该注重平时非工作状态下的生活。

8,需要居安思危的理念

适当合理的压力或许是程序员进阶的动力,虽然很多人说:

“如果你不能熬夜加班,你就不配当一名程序员,你应该去回家养猪。”

适当的威胁和压力会让人产生恐惧,害怕失去生存基础是人类最强烈的恐惧之一。但千万不要让自己一直在职业恐惧中生存,那会让你产生职业倦怠感。

9,不得不面对的现实

在当下社会,如果你不能像僧人一样生活,起码的世俗金钱是必须需要的,很多时候公司都想着怎么压榨程序员,此时你需要想开一点,在国外即使你负责的项目开发很成功,为公司带来了丰厚的利润,你可能还是被迫一直住最廉价的酒店,坐最廉价的交通工具,而且使用最廉价的办公设备。很多程序员受不了管理层的施压,毕竟开公司的都想开源节流,从而证明公司的盈利能力强,这时候需要想开一点。

10,小心“职业倦怠”综合症

马蒂亚斯·布里奇是一位德国科学家,他写了一本关于职业倦怠症的伟大的著作(Burisch,2006)。他在德国家喻户晓,其研究表明,职业倦怠根源于错乱的工作时间、即刻的工作搞定、紧迫的任务期限,还有竞争。程序员对这些都非常熟悉,但实际上,布里奇几乎研究了所有职业群体。

他还提到,有人在令人疲倦的环境中工作,但并没有遭受职业倦怠症的困扰。例如,与在其他地方工作的护士相比,在重症监护病房工作的护士反倒更不容易患上职业倦怠症。为何有此差别?

布里奇推断,职业倦怠是一种结合了多种因素的复杂的综合症。不是每一个紧张的环境都必然会导致职业倦怠。

而且每个人应对处境的方式不同。在同一环境下,一个程序员可能遭受职业倦怠症,但另一个程序员却可以应付而不出现任何严重的问题。在这种情况下,第二个程序员可能会认为第一个程序员不够坚强。这是一个错误的结论,因为它可能是多种因素交织而导致的问题。除了所面临的一般问题,第一个程序员也许还承受着别的社会压力。根据根据布里奇的研究,以下因素可能会导致职业倦怠症:

1,长时间的超负荷工作。

2,失去控制。

3,付出和回报不成正比。

4,成长期望值不匹配

5,职位晋升不公平

导致职业倦怠症的基本因素:

职业倦怠并不局限于高层管理人员,每个人都可能患上。有一个案例记录,一个牧羊人放牧二十年患上了职业倦怠症。虽然患上的是职业倦怠症,但报刊杂志常称之为“疲劳综合症”。作为一名程序员,存在很多致病因素,其中很多与这五点的有联系。

共勉:活在当下淡然、自律、务实、高行、微言、修身、脚踏实地是每个程序员必备的软技能。