V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
isno
V2EX  ›  程序员

[得罪人贴] 招聘程序员有感

  •  
  •   isno · 2015-10-16 12:09:25 +08:00 · 17974 次点击
    这是一个创建于 3360 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我有一段时间的招聘经历, 沟通过的程序员没有几十个,也有十几个!

    项目都属于 WEB 性质,招聘的工种没有局限于某个语言,简历最多的是 php 程序员,高低深浅都有,招聘到后期, 我发现可以用一句话来总结大部分 php 程序员:太爱某个框架, title 由 php 程序员改为 xx 框架使用能手比较合适, 沟通中谈框架非常来劲, laravel 非常优雅, yii 如何, xx 怎么样, 问到 int 几个字节, 犹犹豫豫的回 8 个?(32位系统1个字节几个位, 原话这么问的,回答不上来的很多啊)

    不是我鄙视 php 程序员, 我本身也有很长的 php 开发经历(不装逼,技术一般), 正常的程序员不应该是 谈数据结构,避坑经验么?

    偏激点,但对语言来说,这种弱类型帮你高容错的语言渐渐的有点难以接受, float+ Int 或者 int + string 这种做法,在业务线必须要报错出来
    第 1 条附言  ·  2015-10-16 14:15:44 +08:00
    抱歉: 32 位系统 1 个字节几个位 这句话写错了
    原意是:一个 int 占多少位 (我问的是 32 位系统一个 int 多少位, 不要再因为 short int , long int , 64 位, 32 之类的争执了)


    再补充下,在我看来,数据结构是计算机学科最基础的知识,对于任何种类的程序员,这些是最起码的要掌握的!

    一些涉及二进制的数据存储业务,你需要用位移来解析,
    设计数据库,你要清楚 手机号不能存在 int 类型的字段里面
    你要知道 gbk 和 utf8 的区别吧

    再往具体业务看, 你操作 google protobuf , mongodb bson , redis ,遇到点问题,稍微深入一点查,哪些不是类型结构代码。

    作为一个 phper ,不能被要求掌握上面的技能点么? 把自己定位搬砖的,造轮子的, 抬杠的,请忽略我的话!
    第 2 条附言  ·  2015-10-16 18:09:05 +08:00
    这个帖子可以结贴了, 不知道其他面试官看了这些内容作何感想?
    PHP 面试内容是否包含算法,结构内容是个大问题啊!

    作为年轻人的我们,多学点东西总不是坏事对吧!谢谢各位的参与,千人千条路,希望帖子里面的内容对 V 友有所帮助!
    第 3 条附言  ·  2015-10-17 10:37:24 +08:00
    我发帖子几乎不和咬文嚼字的解释,但帖子中有一半的人争执字节位的问题,上面已经解释过,我以为程序员都会理解这种最最基础的知识,还真没想到!看来我解释的也有问题! 质疑者看好了,问 32 位 系统 int 几个字节,回 8 个,又问,那 32 位系统一个字节几个位,回答不知道! 另外回帖贬低别人既抬高不了自己,更不会影响我, 7 , 8 年前就已经不会再网上试图改变别人的想法,爱怎么想就怎么想吧!回帖的内容确实刷新了我的世界观,看来我的想法也得跟着改变了!
    196 条回复    2015-10-19 11:42:43 +08:00
    1  2  
    zhangdawei
        101
    zhangdawei  
       2015-10-16 16:10:14 +08:00
    炸了好多鱼出来,
    这题考刚毕业的,和搞嵌入式的还行,考工作好几年的,不合适。
    工作久了,尤其是业务相关的,问这种细节题,真想不起来。

    类似经历:
    我之前面过中兴系统工程师, JD 写的模糊,我就去了,直接问了 BSP , linux 网络驱动什么的,我就蒙圈了,虽然我既能写单片机也能写 android app ,这 linux 确实没搞过。
    isno
        102
    isno  
    OP
       2015-10-16 16:13:41 +08:00
    @ffwalle
    技术聊深了我也不懂,发个帖子就是唠叨一下, 我问个 int 几个字节,如果能联想到因为装逼,鄙视别人,我也是没别的话好说!
    menc
        103
    menc  
       2015-10-16 16:18:07 +08:00   ❤️ 23
    “再补充下,在我看来,数据结构是计算机学科最基础的知识,对于任何种类的程序员,这些是最起码的要掌握的! ”

    我对你说的没有异议,只是,
    1.一个字节多少位的问法是一点问题没有的,不像你说的那样有问题
    2.问一个 int 有多少位逻辑上是没有问题的,但是, php 和 C 都没有指定一个 int 究竟多少字节,多少位,这个看平台实现
    3.以上知识,都属于计算机组成的知识,和数据结构毫无半点关系
    4.我对你的说法非常认同,但是我对你有没有资格说这个话持保留态度。

    另,
    php 有 PHP_INT_SIZE 和 PHP_INT_MAX 来表示 int 字长和 int 最大值,是可变的,所以对于 php 程序员,你的问题应当是不成立的。

    再另
    语言苦心积虑让人摆脱二进制的烦恼,为什么你还要苦苦追求人家 想要摆脱的东西?
    sun2920989
        104
    sun2920989  
       2015-10-16 16:20:07 +08:00
    @menc V2 首个感谢 给你了 (我一向很抠门的 签到到现在一个金币都没有........)有理有据使人信服
    shakoon
        105
    shakoon  
       2015-10-16 16:26:01 +08:00
    说明了这一行业半路出家的人实在太多,普遍没有根基
    zhujinlong
        106
    zhujinlong  
       2015-10-16 16:28:36 +08:00
    一个 int 占几个字节,取决目标平台的 ABI
    robinlovemaggie
        107
    robinlovemaggie  
       2015-10-16 16:28:53 +08:00
    @menc 赞同 2 , The C Programming language 里有这么一句“ Each compiler is free to choose appropriate sizes for its own hardware, subject only to the restriction that shorts and ints are at least 16bits, longs are at least 32bits, and short is no longer than int, which is no longer than long.” C 语言之父都没定死啊,就好比你不能再开放试题里寻找固定答案。
    womaomao
        108
    womaomao  
       2015-10-16 16:34:06 +08:00
    @fxxkgw 是啊,python 太简洁了, 想往 python 方向转, 能说下转型经历吗?
    nellace
        109
    nellace  
       2015-10-16 16:40:31 +08:00   ❤️ 1
    我觉得面试还是问一下当时自己学起来用起来比较吃力,遇到坑比较多的地方,这些地方能反映出应试者的经验,解决问题和学习能力我觉得在工作中还是最重要的,有一些不容易记住但是记一下又不需要大量时间的,就真心跳过去吧
    ericyl
        110
    ericyl  
       2015-10-16 16:41:01 +08:00
    看到这,我还是默默的决定先不跳槽了,万一碰到问 int 有几位,我又答不上来岂不是泪崩了。不说了,重看基础去...
    isno
        111
    isno  
    OP
       2015-10-16 16:45:23 +08:00
    @menc 你也看到了, “在我看来“ 这句话代表个人想法, 与资格没有关系, 但如果我作为招聘筛选方,是绝对有资格要求求职者知道 int 几个字节

    面试谈 字节问题,求职者能说出 32 位 int4 个字节,一个字节 8 位, 我个人就认为有一定的基础知识,面试谁无聊的会谈到 PHP_MAX_INT, C 的 limit.h !

    最后一个扯皮的话:现代语言的发展已经已经不是为了摆脱二进制,二进制也绝对不可能被摆脱!我作为面试方,只是要求一个普通 phper ,给你十几 K ,没要求你加班,只要求你技术上基本的计算机知识要理解,能做东西,条件就属于符合。深入的东西我不会问,问深了我也不懂!

    另外我这个帖子是因为一部分 php 程序员,基本的计算机知识都不知道,很多人也认为不必知道而感叹, 然并卵,后面又被升级到了 装逼 这一次层次
    m8syYID5eaas8hF7
        112
    m8syYID5eaas8hF7  
       2015-10-16 16:47:56 +08:00   ❤️ 1
    @gamingcat1234 完全不同意你这个观点。我们部门 leader 说过,如果你工作两三年以后再去面试,当面试官还是问你这些基础知识的话,你就可以走了,这是对技术的一种侮辱。这时候大多聊的都是思路,和解决问题的能力。至于 Int 占几个字节,用的实在是太少太少了。
    zhangdawei
        113
    zhangdawei  
       2015-10-16 16:50:59 +08:00
    @ericyl hahahah
    m8syYID5eaas8hF7
        114
    m8syYID5eaas8hF7  
       2015-10-16 16:54:20 +08:00
    @isno 其实大家意思很明显。
    这个确实是你的个人想法。但是你的个人想法不一定合适。
    工程师 是利用现有工具,将问题完美解决的一群人。
    死记硬背的东西,你觉着会考察出“工程师”的水平来吗
    visonme
        115
    visonme  
       2015-10-16 16:54:32 +08:00
    我很赞成楼主的观点。

    按我理解,楼主不知道是不是想表达现在人太过分依赖框架了而失去了原生语言的编程能力。觉得自己会熟练几个框架就觉得自己就是高手,大师级人物,就应该拿高薪了。

    其实在我一段 JS 招聘中也有跟楼主相同的经历,应试者会熟练各种 js 框架但是让用原生 js 写一段应用却很难。

    最让人不能接受的就是熟悉框架却对框架后面发生的事情一无所知。

    至于数据结构,算法这些东西其实无处不在,很开发人员觉察不到他们的存在,我想是因为你用了别人封装的东西,如果自己写原生其实会发现这些东西时刻都在使用的
    sun2920989
        116
    sun2920989  
       2015-10-16 16:54:44 +08:00
    既然楼主也说了自己是面试官有权利要求面试者具备任何素质 只能说楼主开心就好 不回复了你们继续讨论 o(∩_∩)o
    baconrad
        117
    baconrad  
       2015-10-16 16:55:54 +08:00   ❤️ 9
    前陣子招聘了幾位廚師,
    有的喜歡中式、有的喜歡西式,談起來非常來勁,
    一問到「水稻從插秧到收割需要多久的時間?」
    居然猶猶豫豫的回我:「一年?」

    不是我鄙視廚師,
    我本身也有很長的下廚經歷(不裝逼,口感一般),
    正常的廚師不應該是談採購驗收,食品安全嗎?

    偏激點,但對食物來說,
    這種連食材來源都不清不楚的狀況漸漸的令人難以接受,
    沒殺過鴨卻說會做烤鴨的這種做法,
    在進廚房前必須要把他趕出來。
    gamingcat1234
        118
    gamingcat1234  
       2015-10-16 17:00:40 +08:00   ❤️ 1
    各位不要咬文嚼字了, int 在不同平台,长度可能不同,这一点本身也很基础。我如果是面试官,这种题我是希望回答者能自己指出这一点的。况且楼主明确提示了 32 位系统,这还答不上来,该怎么说呢。

    @LINEX
    如果我去面试,有人问我这个,我确实觉得是被侮辱了,不过那是在我答的出来的情况下。如果我答不出来,那才是彻底的被羞辱了。不知道 int 的容量,你怎么知道业务中的某个值能不能放在 int 中呢,等出 bug 了再来改么?这种事和语言是无关的,和你有什么思路也是无关的。


    @sun2920989
    c 语言下 int 最大值是定义在 limits.h 里的,在 32 位系统下,大多数情况下 limits.h 看起来是这样的:
    #define SHRT_MIN (-32768) /* minimum (signed) short value */
    #define SHRT_MAX 32767 /* maximum (signed) short value */
    #define USHRT_MAX 0xffff /* maximum unsigned short value */
    #define INT_MIN (-2147483647 - 1) /* minimum (signed) int value */
    #define INT_MAX 2147483647 /* maximum (signed) int value */
    msvc, gcc 都如此。当然,我不能排除你用的某编译器在 32 位系统下, int 也是 16 位的。不过我觉得你恐怕没想到这一步。
    另外,作为 php 程序员,也不应该看到 32 位 int ,却联想到 32767 。
    PHP_INT_MAX (integer)
    The largest integer supported in this build of PHP. Usually int(2147483647). Available since PHP 5.0.5
    PHP_INT_MIN (integer)
    The smallest integer supported in this build of PHP. Usually int(-2147483648) in 32 bit systems and int(-9223372036854775808) in 64 bit systems. Available since PHP 7.0.0. Usually, PHP_INT_MIN === ~PHP_INT_MAX.
    m8syYID5eaas8hF7
        119
    m8syYID5eaas8hF7  
       2015-10-16 17:01:15 +08:00
    @visonme 可是, int 在 32 位下占几位,压根就没有涉及到数据结构和算法的东西啊,这只不过是死记硬背啊
    menc
        120
    menc  
       2015-10-16 17:02:25 +08:00   ❤️ 1
    @isno 说句不适当的话,五十笑百,仅此而已,也不说了,既然做了面试官,就选择你想要的人吧,不过恕直言,你也不是很属于你觉得应该具备基本素质的那种程序员
    sun2920989
        121
    sun2920989  
       2015-10-16 17:03:07 +08:00
    @gamingcat1234 本来不想回这个帖子了 你还圈我 我没质疑你的意思 不过隐约记得当初学 C 语言的时候记过这东西 32 位系统下 C 语言 INT 范围-32768~32767 就是和你求证下对不对 当然对不对我现在也用不到这玩意了.......o(∩_∩)o
    visonme
        122
    visonme  
       2015-10-16 17:03:21 +08:00   ❤️ 1
    @LINEX
    因为我们太注重字眼了,这应该只是楼主举个例子说明一种目前招聘中存在的现象而已,实话我也觉得这样的问题如果不是在真需求的情况下,可以判定为很无聊的~
    baconrad
        123
    baconrad  
       2015-10-16 17:04:58 +08:00
    拿前端來說,
    在遇到網頁跑版時,
    你會要求工程師:

    1. 能立刻想出幾種方法並解決的。
    2. 能立刻回答 position 有哪些值可以用。( https://www.v2ex.com/t/213833?p=1)
    visonme
        124
    visonme  
       2015-10-16 17:05:05 +08:00   ❤️ 1
    这样的帖子注定要得罪一群人了, 大家换个思维想想,这其实何尝不是在通过一两个不能被大家接受的字眼来描述一个招聘中存在的现象呢?
    solaro
        125
    solaro  
       2015-10-16 17:05:53 +08:00   ❤️ 3
    1.可以把你的 JD 贴出来吗?薪酬福利+项目+团队背景+办公地点=吸引来的程序员的质量。
    2.如果你们公司在上海,然后想花月薪 8000 招个 3 年以上工作经验的 PHP ,建议你回去再思考一下,厦门这水平都已经到了 10K+了,虽然说薪酬不是绝对,但是你可以试试看把薪酬网上翻一番,小鱼自己会退去。
    3.PHP 这么语言本来的定位就是用来快速、敏捷的出产品,大多数学校是不开这个课程的,所以学的人多而杂而且基本是自学的,再说了,数据结构这种课程,上大学的时候也没几个听得进去,基本要出来编码个 3~5 年才会再重新去翻。( PS:大学读书好,基础好的,基本去大公司了,从你表述的语言不限制,以项目为主的招聘需求来看,贵公司貌似算不得什么大公司,作为求职者,刚毕业的人也不会去你们这种公司面试,因为没有可以学习的团队 and 氛围 and 大神)
    4.给什么钱,招什么人;钱少了,人不来,钱多了,开不起;一句话,只有合适的,没有最好的;程序员的招人标准:一看代码,二问项目,三聊薪酬,其他的 no bb , bb 了也用,还得落下一个面试官人品差垃圾公司的名称在程序员圈子内广为传播。
    flyingfz
        126
    flyingfz  
       2015-10-16 17:10:32 +08:00
    基础很重要。

    作为一个程序员,框架可以不懂,但基础必须掌握。
    掌握了基础,才可能适应工作中碰到的新问题。
    dai269619118
        127
    dai269619118  
       2015-10-16 17:10:46 +08:00
    lz 你都说了这个是基础 基础不好和语言有什么关系?
    招人无非就你给多少钱招的就是怎么样的人
    isno
        128
    isno  
    OP
       2015-10-16 17:20:58 +08:00
    @solaro 行情 上浮 30%左右,这算是没钱瞎 BB 的公司么
    hcymk2
        129
    hcymk2  
       2015-10-16 17:21:30 +08:00
    刚毕业的面试类似问题我能正确回答, 现在估计不行。 真是半夜里玩龙灯,哎。
    nisnaker
        130
    nisnaker  
       2015-10-16 17:22:35 +08:00   ❤️ 2
    所有不知道 NaCl 分子量和溶解度的人都别做饭了。

    只能说面试是双向选择,遇见这样的面试官就可以放心地拍拍屁股走人了。
    iEason
        131
    iEason  
       2015-10-16 17:25:39 +08:00
    PHP 是世界上最好的语言。
    e1eph4nt
        132
    e1eph4nt  
       2015-10-16 17:34:24 +08:00
    楼主连一个字节 8 个位都搞不清楚还招聘程序员。。。估计面试的人听到这个问题都傻了,严重怀疑对面人的智商。。。
    wdlth
        133
    wdlth  
       2015-10-16 17:40:07 +08:00
    你应该问从 PHP 5.2 到 PHP 7.0 ,共新增多少特性,废弃多少特性,看看有没有人答得出来……
    ivenvd
        134
    ivenvd  
       2015-10-16 17:41:01 +08:00
    LZ 连「数据结构」和「数据类型」都分不清,还要求别人……
    windyboy
        135
    windyboy  
       2015-10-16 17:43:28 +08:00
    如果问别人问题,第一时间回答的不是你想要的答案
    最好还是想想问题本身有问题吗?
    defage
        136
    defage  
       2015-10-16 17:45:25 +08:00
    很多只写动态语言, 特别是 web 的。 根本关心不到 int 几字节, int64 几字节。 64 位机器内存补足是多少字节。
    crabRunning
        137
    crabRunning  
       2015-10-16 17:46:38 +08:00 via Android
    @ffwalle 为什么不用 aes 加密一下,一点安全意识都没有╮(╯▽╰)╭
    liuyao729
        138
    liuyao729  
       2015-10-16 17:59:30 +08:00
    PHP 参差不齐,很多机构培训出来的, 北上广刚出来的都 8 、 9K 了, 十几 K 找个能解决问题,有责任心的已经很不错了
    io
        139
    io  
       2015-10-16 18:22:35 +08:00
    类似于工人和工程师之间的区别吧,一个只是会做,一个知道为什么这么做。搞不清编程语言背后的东西的程序员,一定是对技术没有追求的程序员,要谨慎选用啊。
    lujiajing1126
        140
    lujiajing1126  
       2015-10-16 18:35:31 +08:00 via Android
    似乎数据结构和楼主问得问题一点关系都没有把。。。。
    shunia
        141
    shunia  
       2015-10-16 18:57:39 +08:00
    为什么看到反对的同学大多抱有一种"你招的是 PHP 啊!"这种论点?
    PHP 是全宇宙...!!!
    PhilCai
        142
    PhilCai  
       2015-10-16 19:06:40 +08:00 via iPhone
    今天看了自己公司的校招题,其实不难,可是已经不会了😂
    elvodn
        143
    elvodn  
       2015-10-16 19:10:49 +08:00
    LZ 问 32 位系统 1 个字节几个位? 那些犹犹豫豫的回 8 个被刷掉的好冤啊
    elvodn
        144
    elvodn  
       2015-10-16 19:23:20 +08:00
    @isno LZ 别死鸭子嘴硬了,赶紧把那些回一个字节 8 个位的找回来吧
    bdnet
        145
    bdnet  
       2015-10-16 19:46:05 +08:00 via iPhone   ❤️ 1
    我觉得编程思想和解题思路也很重要,这种一个字节多少位的问题谷歌一下就有了。

    当然还有学习和接受能力。

    你要我说这些平常一般都用不到的基础我不记得,但如果某个项目和这方面有影响那就去学,去查资料解决问题。
    bravecarrot
        146
    bravecarrot  
       2015-10-16 19:59:19 +08:00 via iPad
    @mulog 太赞
    pandachow
        147
    pandachow  
       2015-10-16 20:02:49 +08:00
    你说要考察数据结构,可是举的例子跟数据结构没半点关系啊。。。。。。。。。。。
    ckk163
        148
    ckk163  
       2015-10-16 20:21:09 +08:00
    我感觉 lz 不是很清楚你招程序员来具体做嘛的,所以才这么纠结~~
    其次真的 不赞同 “作为年轻人的我们,多学点东西总不是坏事对吧!”
    你要知道知识是无穷尽的相对于人的生命周期来说!!
    Email
        149
    Email  
       2015-10-16 21:09:49 +08:00
    花很长时间也招不到合适的人才的人, 本身能力也是有欠缺的.
    你可以怪 HR 给你推的简历有问题. 那也是你本身有问题.
    GentleSadness
        150
    GentleSadness  
       2015-10-16 21:32:54 +08:00
    你要我说,我只看工作范围内懂不懂,就算地球围着太阳转,对我来说卵用都没有
    marvinwilliam
        151
    marvinwilliam  
       2015-10-16 21:46:46 +08:00
    好久都没有做过后端了,你那俩问题我都快忘了。。。
    feuvan
        152
    feuvan  
       2015-10-16 21:59:21 +08:00
    看标题猜内容和评论。。
    lenran
        153
    lenran  
       2015-10-16 22:07:09 +08:00
    楼主的目的应该是招 java 程序员吧
    lenran
        154
    lenran  
       2015-10-16 22:09:40 +08:00
    我说错了,楼主应该是想找那种精通 C/C++、 JAVA,还对 web 安全有所了解,顺带会用 PHP 的那种开发者
    wy315700
        155
    wy315700  
       2015-10-16 22:11:40 +08:00 via Android
    PHP 的 int 随系统,特别坑爹
    quericy
        156
    quericy  
       2015-10-16 22:14:11 +08:00
    LZ 想招 X 年工作经验的人,那么作为招聘方,你更看中的是他的经验呢还是他的基础知识呢?

    而一个 int 占多少位的这类问题,平时用得少不说, 说得不好听一点,不管你招的是新人或者是老手,哪怕是不知道或者不记得了,网上一搜都有答案.
    所以考这样的问题的意义何在?平时业务处理多的人反倒不一定会记得,毕竟人的记忆和精力都是有限的.
    而思路和解决问题的能力网上能直接搜到吗? 擅长这些的才是一个公司更需要的人才吧.
    gdtv
        157
    gdtv  
       2015-10-16 22:18:06 +08:00
    @CodingPuppy 其实楼主的问题和搬砖还真有点关系,你得知道一辆能装多少砖(init 占多少位),以便用最小的车(节省成本)装尽可能多的砖
    luoway
        158
    luoway  
       2015-10-16 22:28:39 +08:00
    @baconrad 我说怎么这俩月 6 、 7 场笔试被考了 3 回 position 取值,原来是俩月前帖子的锅
    hsyu53
        159
    hsyu53  
       2015-10-16 22:35:54 +08:00 via Android
    @ckk163 你让我想起《庄子》里面一句话,“吾生也有涯,而知也无涯,以有涯随无涯,殆已 ”
    luoway
        160
    luoway  
       2015-10-16 22:54:06 +08:00
    @io
    > 搞不清编程语言背后的东西的程序员,一定是对技术没有追求的程序员,要谨慎选用啊。
    1 级:用框架,看框架源码
    2 级:用高级语言,看静态编译 楼主要的
    3 级:用高级语言,看硬件执行过程
    4 级:用高级语言,看汇编结果
    5 级:用高级语言,测晶体管、二极管等硬件参数
    6 级:用高级语言,搞清楚这堆硅元素铁元素稀有元素电子运动
    ……
    世界那么大,你怎么不去追追看。
    对技术有追求难道不是解决问题创造价值吗?

    楼主想表达质疑的是应聘者不注重基础,不过大跨步到了高级语言的基础实现上。
    另一种解读就是以此质疑应聘者不好学。好学计算机早去学 C 、 Java 、汇编了,还学什么 PHP 搞什么 web 开发,还不是因为市场需要。楼主没有在招聘要求里说明需要“了解 C 、 C++”,说明对 C 要求真不高。那么看一个星期就能了解的知识点值得用来筛选人吗?
    tanteng
        161
    tanteng  
       2015-10-16 23:17:23 +08:00
    其实在实际开发中,一个懂 int 几位的和不懂的,不会起判断这个人能力和水平的决定作用,因为 PHP 本身就不关心这个问题。当然懂这些计算机的基础知识可以让你更理解深层次的东西。
    dqh3000
        162
    dqh3000  
       2015-10-16 23:20:25 +08:00
    Plain ints have the natural size suggested by the architecture of the execution environment
    ISO IEC 14882 2003 (C++03) p53

    顺便说一句, tc 在 x86_32 位平台下一个 int 是 2 字节的,如果我没记错的话

    所以在我看来答案显然是 undefined behavior ,这就好像问
    int i = 1;
    i=i++;
    的答案一样,标准规定同一条表达式里面值不应该被存储两次,所以这是 undefined behavior
    dqh3000
        163
    dqh3000  
       2015-10-16 23:38:30 +08:00
    @e1eph4nt 在上世纪 70 年代左右现过 1 个字节 6 位, 4 位的计算机,我想楼主肯定是知道这一点的

    以后要面试楼主的公司一定要记得
    MrGba2z
        164
    MrGba2z  
       2015-10-17 00:30:13 +08:00
    我私以为

    招聘看的是人技术上的长处
    而不是短处
    zhengkai
        165
    zhengkai  
       2015-10-17 00:35:25 +08:00   ❤️ 1
    想起以前一段经历

    曾经出一道笔试题,写个“判断是否是质数”的函数,本来我以为这可能是大学里的例题,来应聘的也都是本科生,可差不多 10 个人里, 6 个不知道什么是质数, 3 个写的有错误(比方说不是 return true/false ,而是直接 echo "yes"/"no"),有 1 个正常人就很不错了

    这么多人钻牛角尖,有些人是肚里没墨水在逞强(或者说胡搅蛮缠),有些人是有技术能力但是理解不了楼主意图(或者说胡搅蛮缠),正常人的比例跟写质数判断那个差不多,我很同情楼主,看来论坛不适合讨论这种问题
    msg7086
        166
    msg7086  
       2015-10-17 00:39:54 +08:00
    @MrGba2z 然而基础是短处的人,以后会很坑的。
    vibbow
        167
    vibbow  
       2015-10-17 00:43:13 +08:00
    1 个字节 8 位有什么问题么?
    msg7086
        168
    msg7086  
       2015-10-17 00:44:23 +08:00
    @zhengkai 我们这考本科都是用的什么 word ladder ……
    nikoukou
        169
    nikoukou  
       2015-10-17 02:01:09 +08:00
    @msg7086 直接上 leetcode ,万一人家全部背下来了怎么办。。
    dqh3000
        170
    dqh3000  
       2015-10-17 04:07:14 +08:00
    @zhengkai 说真的,不是很相信你这个经历……

    如果说一个人不知道 fibonacci 是什么,不知道完美数超越数罗森素数……我都可以理解

    不知道质数是什么,这不可能是本科生水平
    msg7086
        171
    msg7086  
       2015-10-17 06:41:36 +08:00
    @nikoukou 能把这些都背出来,而且还能灵活应用的话,为什么不招?

    leetcode 上做成这个样子,那到了实际 coding 的时候,也能做成这个样子! duang !
    XDA
        172
    XDA  
       2015-10-17 08:22:19 +08:00 via iPhone
    这点事儿也能群起撕逼,有这瞎逼叨叨的时间不能滚回去写几行有意义的代码!看会有意义的书!陪家人朋友聊聊天!一群自以为是的偏执狂!



    好吧,我也是名程序猿,计算机组成原理、数据结构与算法、网络协议是最基本的知识好吗!
    Biwood
        173
    Biwood  
       2015-10-17 08:50:12 +08:00 via Android
    我觉得楼主的观点挺好的,这帖子这么多留言,大部分都是扣字眼和讽刺楼主的,这样有意思么,中国的 IT 从业者质量本来就参差不齐,这帖子算是让我大开眼界了。
    falcon05
        174
    falcon05  
       2015-10-17 09:27:17 +08:00 via iPhone
    看来楼主对这些基础也是一知半解的,自己既然都不清楚,作为面试题,问别人岂不荒唐?
    qihboy
        175
    qihboy  
       2015-10-17 10:01:39 +08:00
    LZ 狭隘了
    如果只靠计算机专业的学生的话,远撑不起现在的 IT 业。
    你学了计算机构成及数据结构,你可以去搞研究型的工作,而不是开发生产型的。
    你让一个计算机的高材生工作 10 年后来回答你这些基础问题,也不一定能答得出来。
    当然,只谈框架不会基础也是不对的,基础是要有,但不是那么底层的细节了,还是看职位吧,如果你找的是一个算法工程师,必须要考,如果你只是想找个程序员做功能业务开发,考一下无所谓,拿这个当槽点就不对了。
    odirus
        176
    odirus  
       2015-10-17 10:09:21 +08:00
    你自己学懂了再问人家吧,你以为是 JAVA 哦,全平台类型一致,估计你也没在多少个平台上写过 C
    nikoukou
        177
    nikoukou  
       2015-10-17 10:31:22 +08:00
    @msg7086 额。这就去背 leetcode 去。
    matthewz
        178
    matthewz  
       2015-10-17 10:47:17 +08:00
    其实我想了半天什么是字节 word 还是 byte
    whatisnew
        179
    whatisnew  
       2015-10-17 11:01:13 +08:00
    没钱没优势瞎 bb 型公司
    txl263
        180
    txl263  
       2015-10-17 11:14:30 +08:00   ❤️ 1
    @qihboy 说的很对啊,我觉得 lz 应该先去学习一下怎么当一个面试官。。。
    前几天我刚好看了一些关于面试的文章。其中几段说的挺好“所以在招聘中要试图去发现候选人更多的优点,而不是找他的缺点。你很容易就用一道特别难的题把候选人给问住,或者使劲在他不熟悉的领域让他难堪,除了打击一下候选人的自信之外没啥意义。”
    还有一段,特别适合 lz “说了这么多,多数都是对候选人的要求,其实对于面试官也一样,你配做面试官吗?你能真实考察出候选人的能力吗?你判断的依据又是什么。千里马难寻的背后往往是因为伯乐太少。写这段话的时候,我也打了几个激灵,!@#$%一身冷汗呀!面试的过程就是选择的过程,不仅对于面试官,对于应聘者也是这样,可以通过面试了解岗位的情况,以便做出适合自己的决定。”
    zhujinliang
        181
    zhujinliang  
       2015-10-17 11:20:18 +08:00 via iPhone
    int 多少位都说不上来, PHP 上 int 溢出的坑不要太多
    gamingcat1234
        182
    gamingcat1234  
       2015-10-17 11:58:30 +08:00
    @qihboy
    @txl263
    本来不想再回复了,看了 qihboy 的观点实在是不能忍啊,这么糟糕的想法居然还有人附和。问一下 int 有几个字节居然能扯到这些上面去。我就想问问你们这些所谓做功能开发的程序员,平时存个手机号,存个 qq 号,考不考虑数据类型用不用 int 的问题。这些平时必然要用的东西,怎么就变成“这么低层”的东西了。
    e1eph4nt
        183
    e1eph4nt  
       2015-10-17 12:00:54 +08:00
    @dqh3000 大神请收下我的膝盖
    zhengkai
        184
    zhengkai  
       2015-10-17 15:49:53 +08:00
    @dqh3000 普普通通没什么名气的一百人来人的小公司,招一些普普通通没什么名气的大学的毕业生,多半就是这个结果

    @gamingcat1234 这贴子基本就属于站队,而不是交流,差劲的自然会自我欺骗、抱团取暖。这么多回帖里能看到不少人觉得问 int32 是楼主在用偏门难题打击应聘者的, wtf

    看了下,楼主的招聘,最低也有 14k , lead 是 25k+,这个工资水平不是在找廉价切图工的,如果有人能拿 14k 但是不知道一个字节=8 比特、不知道 int32 是 32/8=4 字节,请珍惜自己现在的工作
    ty0716
        185
    ty0716  
       2015-10-17 16:08:47 +08:00
    php 程序员这个得定义好.

    程序员: 计算机基础良好,对编译原理有了解,知道一门语言是如何编译成目标代码的.图形学,大致知道矩阵变化,向量,欧拉角,四元数的基础知识.

    php:你在程序员的基础之上对 PHP 这门语言比较感兴趣,能通过编译原理的基础了解这门语言的编译方式.知道 PHP 为什么以 fastcgi 的方式运行能将你编写代码的生命周期缩短,让编程的业务逻辑降到最小.

    你觉得你是 PHP 程序员吗?
    mzer0
        186
    mzer0  
       2015-10-17 20:39:34 +08:00   ❤️ 1
    不可否认, 作为一名计算机行业从业者, 不懂得基本理论知识是天大的笑话.

    我是一名 C++程序员, 我曾查过各主流编译器与平台对 int 类型长度的定义, 有一位老外做了图表来总结, 简单地说: x86_64 与 IBM power 架构的计算机, int 类型的长度是一致的, 被定义为 32 或 64 位, 与操作系统无关. 该老外引了文献说明, 在上述架构的计算机中, 不可能出现非 32 位或 64 位的 int 类型. 并且, 在上述架构的计算机中, 32 位操作系统的 int 类型一定会被定义为 32 位, 64 位操作系统的 int 类型一定会被定义为 64 位, 不存在例外.

    另外, bool 类型的长度在部分 IBM 机型中不等于 char 类型的长度, 而可能是 char 类型的长度的两倍. 这对 IBM 服务器的开发者而言, 是非常重要的.

    最后, 为什么 int 类型如此重要? 编程语言与操作系统中存在着约定俗成, 例如, ISO Standard C++就对 int 类型的长度有着一定的要求.

    这并不是"知道 int 类型的长度有什么用", 而是: 不知道 int 类型长度的程序员, 或多或少存在着犯错的风险, 这样的风险对公司而言无法忽视.
    zhangmeteor
        187
    zhangmeteor  
       2015-10-17 23:13:58 +08:00
    基础是必须的
    Aixtuz
        188
    Aixtuz  
       2015-10-18 00:35:18 +08:00
    讨论问题是好事,可是楼主遇到存在分歧的理解,满满的语气都是责怪楼下各位的理解能力,认为别人应该理所当然的和他想的是同一个点,却没考虑下自己的表达是否有问题。
    ooh
        189
    ooh  
       2015-10-18 09:30:23 +08:00 via Android
    LZ 其实可以试着问问辛亥革命是哪一年
    andyL
        190
    andyL  
       2015-10-18 18:29:38 +08:00
    我看完只有两个疑问:
    1.面试官是以什么样具体的问题考察的数据结构和算法基础的?
    2.装了逼,还想跑?
    im joking
    khjian
        191
    khjian  
       2015-10-18 18:30:20 +08:00
    实话实说,你问的这些基础问题也就面试的时候用用,平时能用到?
    qqblog
        192
    qqblog  
       2015-10-18 20:08:02 +08:00
    月经
    jukka
        193
    jukka  
       2015-10-18 20:20:57 +08:00 via iPhone
    这么多人自爆,真是震惊。
    rale
        194
    rale  
       2015-10-18 22:27:34 +08:00
    这个问题本来就很具有争议性,只是觉得 V2EX 的评论看起来缺乏层次感,像我这种观客想找个观点插入都很难。
    civet
        195
    civet  
       2015-10-19 09:11:05 +08:00
    这贴让我联想到这件事—— Homebrew 作者 Max Howell 被 Google 拒绝: http://cn.v2ex.com/t/198594
    qihboy
        196
    qihboy  
       2015-10-19 11:42:43 +08:00
    @gamingcat1234 观点只是说槽点的事,延伸得比较多就不是我的本意了。
    另外,如果存QQ号手机号用INT的,直接拒了吧,我都懒得吐这种槽了。

    曾经面试过一个应聘后台开发的,最近半年才开始从事计算鸡这一行,并且前3个月是在培训。之前当生物老师,然后就问那在大学里学过接触过哪些计算机知道,答只大一学过计算机基础,大二学过一个C,问大三大四在干嘛,说学本专业的。要说吐槽的话,当过HR或面试官的人简直可以365*24吐不停的好么,只是经常是自己想想摇摇头就算了。
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2713 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 12:41 · PVG 20:41 · LAX 04:41 · JFK 07:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.