微信号:programmer_club

介绍:程序员第一自媒体,与你探讨码农人生路上遇到的各类泛技术话题,定期为你推荐码农人生思考、感悟以及启迪!

优秀程序员的炼成记!

2017-11-17 22:09 程序员之家

要想成长为一名优秀的程序员,其过程是艰巨的,其道路是漫长的。


不经过悉心栽培,花儿开不出鲜艳的花朵;不经过时间的历练,幼苗长不成参天大树。在软件行业更是如此。


本文内容分为五点,深入浅出分析了程序员一步步地成长过程所需修炼的技能




1
程序员必须具备的性格特点



最基本的要求是能自主地编程。只有在经过多年的学习实践之后,我们才能超越写一些简短程序的基础水平。而仅靠上课或者看书是不足以构成能力卓群的程序员,不断的练习和实践才是唯一的正途。


作为一个程序员,还得有执着钻研的精神,能做到不懈地排除故障、开发软件和修复bug。


特别是某个阶段经常会有毫无进展的感觉,而这个时候唯有坚忍不拔的品质才能支持我们排除万难再接再厉。这也是一道门槛,将很多不具备这一品格的程序员拦之门外。


擅长数学,善于解决问题。编程就是解决问题的过程。


有很棒的短期(和长期)记忆能力。这样就能在大脑中同时处理多个事情,并且记得月前自己写过什么代码。


超强的理解能力。理解事物是如何相互作用的,理解为什么这么设计和架构的原因。


关注细节。在编程中真正演绎了什么叫做细节决定成败的真理。在某处忘写了一个分号?程序就不会编译!拼错了某个函数名?那你的程序的运行结果可能就会与你原先设想的大相径庭。


上述性格特点方面的要求就像大浪淘沙一样会淘汰掉很多人。





2
程序员必备的主要技能



深刻理解数据结构和类,知道什么情况下以及怎么运用它们。

熟悉已经开发完成的库,这样就可以站在巨人的肩膀上,不必重新浪费时间了。


熟悉各种基础和高级的算法,理由同上条。


了解硬件的原理,这样就能正确管理内存避免内存溢出,或者正确消除无关数据以加快处理进程。


当然还得会编程。Web前端程序员最好知道数据包格式、TCP/ IP、HTML、CSS、用户界面设计和数据库等,因为程序不能孤立运行。


我们需要学习很多东西,但是还有一点,你必须谨记在心,事物是在不断变化发展的。我们只有专心致志竭尽全力地学习,才有可能在这一行出人头地大放光彩。三天打鱼两天晒网,是行不通的。





3
程序员的工作和生活环境



安静,不被打搅的环境。当我们在编程或者学习编程的时候,一旦中断,想要重拾思路并不是那么容易的。比方说,手机响了,然后你可能要花上15分钟才能继续沿着原先的思路走。但是很多工作和家庭环境都很难提供这样的条件。


能在忙碌中权衡轻重然后做决策。当然你也可以为每一种情况单独写一个程序,不过这不大现实,所以要有侧重点。再则,当落后于进度时,最好能快速实现程序并运行起来。




4
管理问题也是重中之重



很多管理人员将程序员当做工厂工人一样对待,很多并没有编程天赋和商业能力的人站在了项目责任人的位置上,在他们眼中,程序员就像机器上面的齿轮一样,干的事情毫无技术含量。


一旦发现项目超出预算或者落后于计划进度,就要求程序员无偿加班,结果往往只能是出来设计拙劣测试不完全的产品。


事实上,程序员是技术 人员,要是你想得到关于项目的明智建议,那么请教专家级程序员才能得到最棒的结果。


由于某些管理层辨别不了程序员之间的优劣,所以有能力的人就会发现他们做的贡献更大但是得到的薪酬却没有更多——最重要的是,他们总是要做更多的工作以弥补拖后腿的那些家伙。


而当伟大的程序员提出建议以望改进的时候,那些管理层则会觉得这是在对自己权威的挑战,而会选择“除之而后快”。


这种情况举不胜举。这也是为什么很多优秀人才不愿意待在这一行业的原因——特别是在有其他就业机会的情况下。而且做程序员很能锻炼人,哪怕是最普通的,转行之后也能干的风生水起。





5
真正优秀的程序员不喜欢随便跳槽



找程序员很容易,但要想发现优秀人才就很难了。劣质的程序员似乎总是在找工作,而优秀者,只要这家公司能发现他们,肯定会不惜一切代价留住他们,所以他们不会去频繁找工作。


而当他们去找工作的时候,大多规划长远,所以会显得很挑剔。这就是为什么很多公司都会不约而同地表示“没有优秀程序员可用”的原因—— 因为找到的尽是些“普通货色”。


正如有句话说得好,优秀程序员的价值是普通程序员的几倍,而劣质程序员则是负值。



优秀人才不缺工作机会,只缺适合自己的好机会。但是他们往往没有精力从海量机会中找到最适合的那个。

100offer 会对平台上的人才和企业进行严格筛选,让「最好的人才」和「最好的公司」相遇。

扫描下方二维码,注册 100offer,谈谈你对下一份工作的期待。一周内,收到 5-10 个满足你要求的好机会!

 
程序员之家 更多文章 程序员怎么升职加薪?十年技术高管的过来人经验! 编程语言中的超级英雄们 程序员就是这样聊天把女朋友聊没的。。。 关于财富的焦虑:除了买房,还能买啥? 马云单挑“叶问”吊打“战狼”,网友:原来天下武功,唯富不破~是贫穷限制了我的想象力
猜您喜欢 ["数"读峰会] HTML5峰会上海站报名突破3500人,开发者占比64.9% Excel技巧:好用到哭的多级菜单 给创业码农的话--如何提升开发效率 使用gettext来支持PHP的多语言 阿里史上首款AI硬件设备,为何如此“听话”?