程序员能力

华为资深工程师:码农很多,但程序员并不多......

匿名 (未验证) 提交于 2019-12-03 00:30:01
本文来自《华为人》,转载请注明出处 作者: 于志国 期间一位驰骋商界多年的老友问:“你现在在华为做什么工作呀?”我很骄傲地说:”系统架构师“,可是他却愣了很久。 但当我老婆在旁边补上一句“码农“时,老友瞬间秒懂,却把我受伤的心孤独地留在风中凌乱。 作为与 UNIX 同年代的人,我当初选择计算机专业仅仅是因为抓到什么就学什么罢了。 本科毕业遇到互联网危机,便没有想法地去读了研,研究生毕业找工作,面试官问为什么要做软件开发。 答曰: “不给钱都喜欢做的事情,何况还给钱” ,从此便踏入了编码这一行,只是从来没想到一做就是十几年。 但凡一件事情做久了,无论成功与否,都会有一些真切的体验和心得。以前也读过一些工作中如何成功、快乐,诸如马斯洛理论之类的文章。 也许是因为自己领悟能力比较差,唯一的收获是庆幸自己当初选择了编码作为自己的工作,因为编码天生就具有让人愉悦的工作内容和工作氛围,快乐如影随从。 1 编码世界:规则简单有效,粗暴却完美 从事编码,可以锻炼逻辑思维能力,教会你如何思考。就像学习法律一样,学法律的人未必都是为了成为律师,但法律教会了你一种思维方式。 同样的,通过编码可以学习到这个世界上最严谨的思维方法。因为 在编码的世界里,对错是简单甚至绝对的。 只要敲下键盘,计算机就会判定孰是孰非,0 或 1,规则简单有效,粗暴却完美。 从事编码,可以获得持续的创造力。跟写作、绘画、作曲一样

年薪40W的程序员必会的技术有哪些?

匿名 (未验证) 提交于 2019-12-03 00:25:02
很多人在问我,程序员如何拿高薪,如何做到年薪40W+,其实总结出来还是一句话,你的技术决定你的能力已经薪资。 那么什么样的技术人才才能拿到一份Java行业里面的高薪呢? 下面是我的一个总结技术: 最后、是我总结出的阿里面试必备知识点: 掌握Java编程语言,包含io/nio/socket/multi threads/collection/concurrency等功能的使用; 熟练掌握jvm(sun hotspot和ibm j9)内存模型、gc垃圾回收调优等技能; 精通JVM,JMM,MVC架构,熟练使用struts2。 熟练使用spring、struts、ibatis构建应用系统。 熟练使用Servlet,jsp,freemark等前端技术。 熟练使用axis搭建基于SOAP协议的WebService服务接口。 熟练使用MAVEN构建项目工程。 熟练使用tomcat等web服务。 熟练使用mysql等关系型数据库,熟悉mysql集群搭建。 熟练使用redis等NOSQL技术。 熟悉tcp、http协议。 熟悉nginx、haproxy等配置。 熟悉javascript、ajax等技术。 熟悉主流分布式文件系统FastDFS等。 熟悉JMS,可熟练使用ActiveMQ。 底层计算机理解内存管理/数据挖掘系统 可靠性和可用性如何理解~ jsp和sever lap对比 数据库到界面

程序员工作中复制粘贴就是技术不够么?很多人都误解了

匿名 (未验证) 提交于 2019-12-02 23:43:01
程序员的本质是解决实际问题,和是不是粘贴复制没有多大的关系,在实际编程中特别是应用级的开发复制粘贴的比例一定少不了,特别是一些常见的编程模式或者方法,如果有现成代码当然可以直接拿过来去使用,没有必要重新去写,现在就在多年的软件开发经验,常见的程序员编写代码一般有几种方式 1.初级入门阶段的程序员 主要经历还想着如何能实现,属于挣扎在温饱线上的还在为一些简单功能的实现代码而愁眉苦脸,初级的程序员为了实现一个简单的排序功能还要在网上搜例子,最好能找个直接能够拿来使用的例子,然后对着例子研究如何实现的,如果让自己单独去写是不是能够完成,基本上刚入行一年的程序员都属于这种状态,代码绝大部分是从网络上搜到一些源码在心里没底的情况下,拿过来验证使用,还在琢磨着如何实现最基本的功能而苦恼。 2.能独立做单元模块的工程师 这个阶段的软件工程师已经具备独立做小模块的能力,知道大概如何去做,自己先构思一个基本的框架,或者干脆全部的代码直接全部自己来搞定,或者在网上找到能够和自己功能匹配的代码,然后根据自己的想法进入进去,不影响整体的功能,这个时候复制粘贴的代码已经为我所用了,对于常见的代码已经具备自己的独立思考能力,已经在慢慢渗透是不是有更好的实现代码,在琢磨着代码如何能高效的实现,这个阶段对于代码实现时间已经相比第一阶段压缩了许多了。目前国内的程序员绝大部分处于这种阶段。 3.把代码当作工具使用

二三线城市的程序员如何走向高薪?

匿名 (未验证) 提交于 2019-12-02 23:40:02
作为一个在一线城市混了8年的程序员,现在回到了三线城市写代码生活,的对于这个问题更加有深刻的感受,从开始抱着伟大的理想来到了一线城市才知道这个世界真大能人真多,严重怀疑自己的能力不足,几乎入行的第一年就是在自我的否定中熬过来的,好在坚持住了,熬到了自己开窍,如果中间再退缩一点基本上就告别编程了,看样子无论切入什么行业先苦逼的坚持一段时间,先不要这么快的否定自我。 在一线城市学技术的确快,主要整体节奏快,加班强度大所以学起来比较快,开始的前几年算是兴奋期主要工资长得快,而且技能涨的也快,等到五年之后就会慢慢发现如果要在一线城市守住现在的这份工作,需要不停的升级技能库,而且发现周围的年轻人比自己加班还猛,而且工资还低整体处在这种无形的压力之中,于是心中萌生了离开一线城市的想法,但离开容易归宿却是很难找到,回到哪里去,回到家乡能够干点什么,能不能适应低工资的生活,于是在这种踌躇中又度过了些年,等到真的回去的时候都是因为身体或者家庭的原因被迫回去。 自己的离开主要还是家庭原因,当然可能是个借口主要还是自己想折腾事情了,回去也是改变的一种方式,说起来容易做起来难,毕竟回到三线城市技术氛围全没了,而且还要面对很多不规范,回到三线城市先给自己找了个方向,然后全力以赴进行下去了,中间遇到了很多在一线城市都不会发生的事情,经常的工资不能正常发技术问题经常夹杂着人际关系在里面

华为资深工程师:码农很多,但程序员并不多

匿名 (未验证) 提交于 2019-12-02 23:35:02
一位驰骋商界多年的老友问:“你现在在华为做什么工作呀?”我很骄傲地说:”系统架构师“,可是他却愣了很久。 但当我老婆在旁边补上一句“码农“时,老友瞬间秒懂,却把我受伤的心孤独地留在风中凌乱。 作为与 UNIX 同年代的人,我当初选择计算机专业仅仅是因为抓到什么就学什么罢了。 本科毕业遇到互联网危机,便没有想法地去读了研,研究生毕业找工作,面试官问为什么要做软件开发。 答曰:“不给钱都喜欢做的事情,何况还给钱”,从此便踏入了编码这一行,只是从来没想到一做就是十几年。 但凡一件事情做久了,无论成功与否,都会有一些真切的体验和心得。以前也读过一些工作中如何成功、快乐,诸如马洛斯理论之类的文章。 也许是因为自己领悟能力比较差,唯一的收获是庆幸自己当初选择了编码作为自己的工作,因为编码天生就具有让人愉悦的工作内容和工作氛围,快乐如影随从。 编码世界:规则简单有效,粗暴却完美 从事编码,可以锻炼逻辑思维能力,教会你如何思考。就像学习法律一样,学法律的人未必都是为了成为律师,但法律教会了你一种思维方式。 同样的,通过编码可以学习到这个世界上最严谨的思维方法。因为在编码的世界里,对错是简单甚至绝对的。 只要敲下键盘,计算机就会判定孰是孰非,0 或 1,规则简单有效,粗暴却完美。 从事编码,可以获得持续的创造力。跟写作、绘画、作曲一样,编码也是一种创造性的工作。 只要有一台计算机,掌握了基本技能后

花费上万转行当程序员,却找不到工作,程序员吐槽:这技术白学了

匿名 (未验证) 提交于 2019-12-02 23:34:01
互联网红利时代,激发了越来越多的人投身其中就业与创业,其中程序员这一职业也被推上了高薪职业风口。除了科班毕业的程序员,也有不少传统行业从业者转行进入互联网行业,这些半路转行的有的会通过自学,有的则会通过花钱上培训班达到速成的效果。然而俗话说转行穷三年不是没有道理的,毕竟从事一个全新的岗位是需要从头积累经验的,对于公司招聘员工来说需要的有经验的。 就有一名网友花费数万元上了一年培训班学习php(编程语言)开发,本以为出来能顺利就业收获高薪,没想到面试了十几家公司,最后都告诉他公司不想要没有工作经验的初级程序员。对于自己花费金钱与时间转行干程序员,现在却找不到工作,这名新晋程序员表示:感觉太不公平了,打算放弃了,就当这几万块钱学的技术白学了,唉! 对于这名转行程序员培训班出来找工作处处碰壁,面试十几家公司都没找到工作,想退出的想法。一些程序员表示:你要明白,花几万耽误时间转行那是你自己的事情,企业要有经验的员工无可厚非,毕竟企业招人是要求员工能给公司创造利益的。楼主你既然当时打定主意转行学习编程,现在已然花费了时间与金钱,就该再坚持。可以先找小公司,钱不多没关系,工资够温饱就可以了,熬两年等简历上有经验了,也就有了跳槽的资本。 还有一名与楼主有着相同经历的程序员给楼主支招,称:同php,学历比你低,也是转行干程序员的。要想面试通过,还是要包装一下自己的简历,记住是在能力范围之内包装

谁才是21世纪的弱势群体?

ε祈祈猫儿з 提交于 2019-12-02 13:04:26
今天看到一个新闻,让做程序员的笔者很有感触。事情是这样的。笔者的校友,一个中科大博士最近被警察抓去了。事情的原委是这哥们博士毕业之后感觉工资太低,就做一些业余项目。没想到遇人不淑,找的合伙人都是一些做游戏外挂的灰色产业的江湖人士。这个博士同学负责游戏外挂的核心代码,三年间居然该软件做的非常不错。项目整体收入非常可观,一下子盈利了300W。按正常逻辑这个哥们是核心人员,赚钱又那么多,怎么也该分个百十万吧。没想到的是,这个哥们三年居然只分到了15W钱,是他们团队中收入最低了。看了这个报道,真是非常同情这个哥们。唏嘘之余,陷入了深深的思考,都说程序员工资高,那是网上的讹传。现实情况确是,力气程序员出的最多,很多时候锅也背的不少啊。看来,程序员才是这个社会的弱势群体。   由于自己是程序员,对这个哥们的经历真是深有感触啊。不知不觉间,程序员已经超越了农民工,成为社会的弱势群体之首了。很多程序员给人的印象就是人傻好骗。搞营销的经常骗程序员帮忙免费写代码,做老板的经常骗程序员去加班,就连嫁不出去的妹子也是最后才找个程序员嫁了。程序员怎么沦落到这种境地呢?通过笔者多年的观察反思,发现这个和群体的特殊性有很大关系: 太沉迷于技术:特别是刚毕业几年之内的程序员,很多都非常沉迷于技术,认为技术能够改变一切,早日实现财务自由,能够帮他当上CEO,迎娶白富美。上班解bug,下班练写代码,哪有时间干别的呢

自学的程序员一点竞争力都没有么?

六眼飞鱼酱① 提交于 2019-12-02 05:25:14
想做好程序员需要把握住两点,第一点在入门阶段需要保持足够的耐心,中间遇到各种语法细节不明白,包括怀疑自己是不是真的适合做程序员; 第二点在成为真正的程序员之后继续保持学习力,程序员停止更新自己的知识库就意味着距离脱离这个行业已经不远了。先从第一点开始认识下如何才能成为一个程序员。 在现在社会要成为一个程序员基本上需要两个途径,一直是通过自学,一种是通过参加培训机构,选择第二种方式的人也越来越多,很多人觉得这种这是社会退步,以前的程序员很少参加什么培训直接就能找到一份还不错的工作,现在几乎很难了,不是社会退步了恰恰相反是整个软件行业的门槛提升了,而且要带着中性客观的观点来认识培训,培训的目的查漏补缺让技能更加完善,未来很多职业上岗之前都要参加培训,这是一种社会的进步,这样能够保证直接进入工作岗位上尽快的适应环境最早的有产出。 但现在的很多培训基础打着从零基础开始几个月的时间就能改变命运之类的话来招生,参加培训不一定是零基础的很多基础不错的一样来参加培训,就是为了让自己的知识体系有更好的认识,最近几年发现很多高级的培训班兴起,不是针对的初级程序员,主要面向在职的程序员通过培训打破一些技术壁垒,让自己获取更高的薪水,说明软件行业的整体水准在提升,距离话题扯得有点远了,回到自学的程序员的市场竞争力问题,如果一个程序员是自学找到工作的,一般来讲会比参加培训的在对待新事物更加有主见一些

程序员修炼之道读后感(二)

Deadly 提交于 2019-12-02 05:20:43
俗话说,工欲善其事,必先利其器。作为软件工程师掌握好几门工具是取得成功的根本。花时间去学习这些工具,你会有意想不到的收获。用纯文本来保存知识,但其也有一些缺点如所占空间较大,但其优点也很明显如永不过时,杠杆作用,易于调试。 学会使用shell,使你的生产力提高。至少用好一种编辑器,彻底了解他,掌握它,因为它是可扩展,可配置,可编程。 使用源码控制系统来追踪你在源码和文档中所做的每一项变动,将自己日常工作保存在仓库中。不要恐慌,当调试时产生了BUG,要理清自己的思路,不要在一些不切实际的地方浪费时间。 作为程序员要明白自己不可能写出完美的软件,但是你可以让自己的程序变得更好,所以当有问题出现时不要害怕,去勇敢的解决他,你自己将会变得更加完美,能力将会更强。 学会断言时编程,计算机是不会说谎的,跟它打交道比与人更简单,它会如实的反应你的问题,你只需要改正就可以了。因此在编程是不要进行自我欺骗,而是尽快找到它的问题,加以解决,而断言则可以帮助你更好解决这一问题。 注重实际的程序员谁也不信任,包括我们自己。 来源: https://www.cnblogs.com/haheihei/p/11731605.html

月薪5k与月薪15k程序员的区别

ぃ、小莉子 提交于 2019-12-02 00:18:42
月薪5k与月薪15k程序员的区别https://blog.csdn.net/qq_30225725/article/details/86740740同一个城市,同一个行业,同一个公司,为什么有的程序员可以拿到3万的薪水,而有的却只能拿到3千?这里我们首先排除一系列的杂的东西,比如裙带关系,我们只谈能力和技术,假设公司已经给到程序员能力匹配的薪水,那么薪水高的程序员和薪水底的程序员,在思维模式、行为举止、做事方式上到底差别在哪里呢? 代码和注释 看一个程序员的技术水平,不用问他太多问题,看下写的代码就知道了。有些语言的代码,比如像ruby这种的,一个新手的代码和一个老手的代码高低立判,就像学钢琴的音乐生一样,看他们的技术水平,不用讲和声、曲式,现场来一段琶音就知道你水平了,一样的道理。不用说两个级别的程序员,就是我们自己日常进步的飞快,我们在项目里看到半年前自己写的代码,都会很嫌弃:“这谁写的?我?不可能吧,我怎么会写这么烂的代码?好吧,我当时到底怎么想的?”除了代码以外,另外一种就是注释,注释是一个很好的编程习惯,大部分程序员都很不注意这个问题,相信所有的程序员一开始都很不喜欢写注释,因为在程序员眼里,代码就是语言,语言就已经说明了他要讲什么内容,没必要写注释,还有一个原因就是写注释太麻烦,浪费时间。但注释,真的很重要,对一个项目来讲,它不仅仅能让后来的人能看懂你这里写了什么