① 有哪些话一听就知道一个程序员是个水货
有hover切换功能,不能直接换成png ,现在的官网取消了hover才换的png
首先,有些公认的水货,比如熊节,根本就是一个文艺编辑,就不用废话了。其次,有争议的,比如陈皓。这货的博客多年保持livelock状态。什么意思呢,就是看起来系统还是在跑,但没有任何有用功。常年都是给入门马农做科普的内容。这种属于大自然的搬运工,把搜索引擎里的资料编译一下就拿来做自己的内容。然后是比较隐藏的水货。比如陈硕。言必让读者看自己的书第几页。但他那本书纯属基础知识和常识列举。看几个man page和rfc就够了。另外,他的书里错误很多,言之凿凿的地方其实都是挂一漏万,把特例当公理。云风当属最隐蔽的水货。都是实打实的产品,代码,难题,分析。内容都是网络,高性能,并发,分布。但不幸的是,老子才是这方面的行家。就拿他最新那个所谓的乐观悲观锁来说吧,里面每个结论每个分析我都指出其不靠谱之处。还有其他一些水货,就不一一列举了。他们有如下显着特征:话题以程序科普为主。内容都是在其他它地方能轻易获得的,缺少自己的思想。问题分析流于猜测,不能达到问题本质。轻易下结论,下过多总结陈词。缺乏量化分析,以主观感受和特例作为依据。如果有不服的,欢迎讨论。我可以具体问题具体分析给你看,他们的思想有多毛糙,基本功有多不扎实。
② 公司怎么识别水货程序员
是看着简历问他的项目经历,现场写代码这样的,时间上受不了。另外招人不是要招最好的,而是要招合适的,薪资职位都要能谈拢的。实际上招人都有一定期限,过期这个职位作废,所以双方都有压力。每个人的定位和价码不同,没有水货的概念,看你想找什么样的人。我一般把程序分几类:毕业生级别(工作一年以内):能分清基本概念,能答对笔试题上的大部分题就可以了,主要还是看工作方面的态度和对知识的渴望,只要肯学,都能练出来;初级程序员(三年以内):这类程序是我们招聘最多的,一方面相对价格低些,一方面可塑性强,转什么语言都快,但也是差别最大的,好一点的能力丝毫不比一些高手差,差的比毕业生还不如,这块招聘通常看面试官的水平的,笔试通常没什么意义,主要还是靠面试,主要是几个方面:前面的工作经历、专业技能的深度、其他语言技术等掌握的广度;中级程序员:很多工作有一些年限的程序,能力通常都不差,这时候最重要的反而不一定是能力,主要是工作态度了,举个例子:有的程序讨厌修改所有其他人的代码就想推倒重做,有的程序就想找个地方领工资实际外包收入比工资高多了,还有的则是不愁工作就想找个清闲的地方混混,这里我不想评价什么对错,每个人经历不同生活态度也就不同,到了这个级别的程序,除了面试掉的一部分太差的太贵的,剩下的只能看试用期了;高级程序员:这类通常可以自己带项目,带小弟,面试的方法跟前面差不多,不过我觉得,面试官需要考虑的是他想做什么,他想要什么。
③ 如何辨别一个程序员水平的高低呢
有的时候单纯靠一个面试很难辨别一个程序员的水平是什么样的。原因很简单,因为很多面试题在网上都有,如果刻意准备那么一般都能回答的不错。所以想辨别一个程序员的水平需要一定的方法。
上述几方面我们称为应能力,还有一些软能力也是非常重要的,比如责任心,对技术的态度,学习能力等等。当然,这些就更难考量了,本文暂不介绍。
如果上述几方面都比较不错,那么这个程序员的水平应该是不错的。即使对目前的工作的知识储备可能还有欠缺,但经过一段时间后必然可以
④ 如何判断程序员是流水线上的,还是科班出身
从专业课上看,这个最准
科班出身的的基础知识储备是非常完备的,比如计算机组成原理、数据库、编译原理、数据结构、C语言、算法、操作系统、设计模式、汇编、计算机网络、离散数学、模拟电路、数字电路、软件工程。
这些大学里学的东西,当时感觉一点用没有,学这玩意干嘛?
不如学一学怎么写网站,学一学语言,直接上手编程做开发。
当你做了几年之后,才发现这些东西的价值,就跟学钢琴时要注意坐姿、练习琶音、音阶一样,基础的东西,只有你弹大曲子时,才突然意识到,原来那些基本功那么有用。
上面基本上是废话,怎么从专业上判断一个程序员是不是科班的呢?
问他几个专业性的问题就好了,培训班那种流水线,是不学这些知识的。
比如算法题:说一下深度优先搜索和广度优先搜索之间的区别,举例。
比如数据结构:用一句话说一下栈和队列之间的区别,说一下什么是二叉树。
比如数据库:内链接和外链接的区别,举例说明。
比如设计模式:说一下什么是单例模式,什么是工厂模式
比如操作系统:说一下操作系统中几种常见的进程调度算法
上面五个问题,如果对方听都没听过,那么这个人一定不是科班出身的,这个是100%能下定论的。
你可能不是每个问题都能答上来,如果你是计算机专业的,你一定会对这些问题有印象,因为要考试啊,不为别的,至少你听过这些术语的名字,就这么简单。
⑤ 如何才能观察得出一个人是不是程序员
首先我们都知道程序员是一个非常辛苦的职业,因为他们常常要熬夜,并且在电脑前一坐就是一整天对他们的身体影响是非常大的久而久之,他们就会发现他们有脱发的行为,在我们县程序员的时候,我们会发现程序员的发际线一般都比较的高。这是因为他们不规律的生活习惯所造成的。因此,当我们看到一个年轻的人,但是她的头发却非常的少,那么他一定是程序员。
⑥ 《怎样识别水货程序员》说的是真的吗
作者的分析方法很正确,我面试别人时就经常使用这种方法,虽然识别成水货后不能百分百确定这是一个水货程序员,但可以保证能通过这样的程序员基本靠谱,即使他们能力不足,也很容易培养起来。
虽然真的大牛,出书的很少,但还是有部分大牛会出书,作为大牛的出版物,有很多初级错误,这个也是很正常的,一方面是他们没时间,更重要的是他们很多东西也真的不懂,但出个编程书要求把东西写全,不能只写自己擅长的那部分,他们可能也是去其它书上抄的。
⑦ 如何辨别一个程序员水平的高低
java">辨别一个程序员的水平唯一的办法就是看产出质量。
关键字:普通程序员
——————————————无耻割————————————————————
算法和数据结构都是锦上添花,并非是雪中送炭。而一个程序员的水准大致上是可以通过之前的代码质量估算出来的。【如果你可以获得此程序员的真实编写的代码,比如原创的Github】。
举个栗子:下面是我最近在单位一个同事写的代码,Java语言
(Stringstr,Integergrades){
Stringproportion=str;
for(inti=1;i<grades;i++){
Stringst=proportion.substring(proportion.lastIndexOf(",")+1);
if(st.equals(""))
returnfalse;
proportion=proportion.substring(0,proportion.lastIndexOf(","));
}
if(proportion.equals(""))
returnfalse;
str=str.replace(".","");
str=str.replace(",","");
for(inti=str.length();--i>=0;){
intchr=str.charAt(i);
if(chr<48||chr>57)
returnfalse;
}
returntrue;
}
大致上的功能就是将1,2,6.2,4,1的字符串判断每一‘,’内是数字,而且长度符合规定
这样的代码看上第一眼就觉得非常的丑陋。所以在我的要求之下,进行了一次重构。
(Stringstr,intgrades){
String[]proportions=str.split(",");
if(proportions.length!=grades){
returnfalse;
}
for(Strings:proportions){
if(!NumberUtils.isNumber(s)){
returnfalse;
}
}
returntrue;
}
这里看上去差不多就Ok。这样的代码其实也并没有用到什么数据结构和算法,就是很简单的字符串处理。
实际情况:在我们写的绝大多数的代码里面,大部分属于业务逻辑,极少部分的代码需要使用到算法和数据结构,在这样的情况下,我们能使用的到的技能最为关键的是让代码如何更加合理。而让代码更加优秀的方式是通过千锤百炼的重构,而重构是极大的考验一个程序员耐心和能力的东西。
—————————————————————————————————————
质量的范围广泛,我从下面几个小方面聊聊。
出货能力:如果一个程序,算法再精妙,不能出货都是扯淡,我看过某某大神,算法溜得很,但是一个人完全做不到按照工程需要把事情给做完。
优化能力:并没有一个程序是一步到位的,一个工程的交出去可运行了,那才是第一步,很多时候随着业务的增大,对性能的要求越来越高,有一定对于代码优化的能力也是比较重要的。
调错能力:项目越大,遇见的Bug也就是越离奇,这个时候需要强大的Debug能力,找出那个最为关键的错误点,甚至于追溯底层框架的源码。
技术掌控:你项目能用Spring,Hibernate等等框架,但是有没有想过,这些技术你真的可以掌控么,如果有一天你的框架版本需要升级,真的做得到么?甚至于从Hibernate转为MyBatis。
算法和数据结构是影响到一些核心区的问题,但是其他的一些技能,比如面向对象的架构设计,代码的低耦合,那都是对整个项目有着直观改善的技能。并非是贬低算法,而在实际工作中,有太多比算法更重要的问题了。
最后补充一点吧:从善如登从恶如崩,毋以恶小而为之,此古人诚不欺我
⑧ 如何判断自己是否适合当程序员
当程序员并不是说你会计算机对这方面有研究就可以当的计算机这一个工作非常的枯燥,而且是需要你有一定的耐心和忍耐力的。很多兴趣都是一开始让心满满,到最后却被困难给打倒了。程序员这项工作,我身边就有同学在做,一开始也是觉得自己是很牛的,他后面还不是被现实所打败了。
在使用计算机和调程序上肯定是很酷的,但你一定要有心理准备,你将来会变成什么样?我建议你可以去网上搜索一下程序员工作五年之后的状态,如果你能接受,那么我觉得你就合适当程序员。
⑨ 有哪些话一听就知道一个程序员是个水货
其实如果要严格说起来,工作经验少于一年半的程序员基本上可以算是“假”的程序员。这里的“假”可以这样来理解。
你的编程能力只有复制粘贴的水准
刚工作的程序员大致可以分为两类人:1 高校毕业;2 培训班出身。对于第一类的人来说,在读书期间老师和学校教的内容都是基础内容,而且要学的内容非常的多。但学校只让你学广,并没有让学生专研一门学科。毕竟学校并不能保证每个学生对某个方向一定感兴趣,只能把基础知识教给学生。让学生自己去选择自己感兴趣的方向,自己自学。所以在校期间对于大部分学生来说,实战能力基本为零,都是像刚重生在新手村,无知茫然,这也是许多企业爱招应届生的原因。开始工作,基本只能靠谷歌、靠网络上网找代码,复制粘贴。这段时间就比谁找代码能力强了。而对于培训的人来说更是如此。不要看你在培训期间学习了非常多的编程知识,好像做了非常多的练习,甚至还自己写了一个实战项目。但这些都是在短时间内,靠着培训老师手把手带你们写的。你只管跟着老师走就好,不懂的问下老师就行。你根本就没有过自己的思考,就只懂:好!今天老师叫我们写这个代码!我们就写!换个角度来看,培训机构就像富士康工厂一样,批量制造编程机器,没有自己的思维。
想要摆脱“假”程序员的身份,你只有努力提升自己的编程水平,让自己有更好的能力。在工作上能靠自己的实力,去完成分配的任务。你只有这样才能提升,才能突破薪水的瓶颈,达到更高的层次。