import cvUtils from './lib/cvUtils'; import mailUtils from './lib/mailUtils'; mailUtils.onMailArrived((mail) => { // Rule No.1: No acient skills! if (mail.content.match(/Dreamweaver|DIV\+CSS|Swiper|AJAX|Bootstrap/i)) { return mailUtils.reply(mail.from, 'false'); } // Rule No.2: Skills required const skills = cvUtils.extractSkills(mail.content); let skillPoints = 0; ['es6', 'babel', 'webpack', 'gulp', 'grunt', 'react', 'vue'].forEach( (skill) => { if (skills.indexOf(skill)) { skillPoints += 1; } } ); if (skillPoints < 2) { return mailUtils.reply(mail.from, 'false'); } // Rule No.3: Must have a github account if (!mail.content.match(/github\.com/)) { return mailUtils.reply(mail.from, 'false'); } // Rule No.4: Prefered skills ['创业', 'ReactNative', '研究.*(框架|工具库).*源码', '设计.*前端架构'].forEach( (skill) => { if (mail.content.match(new RegExp(`${skill}`, 'i'))) { skillPoints += 5; } } ); const forwardMailbox = skillPoints > 10 ? mailUtils.MAILBOX_PASSED_EXCELLENT : mailUtils.MAILBOX_PASSED; mailUtils.reply(mail.from, 'true'); return mailUtils.forward(mail, forwardMailbox); });
调用此接口请发简历至: chengliu@sohu-inc.com
邮件回复说明:
![]() | 1 Francost 2017-03-28 18:20:15 +08:00 dreamweaver:doge |
![]() | 2 SourceMan 2017-03-28 19:20:32 +08:00 via iPhone 现在招聘都不能老老实实这个 jd 了吗 |
3 xiaoboost 2017-03-28 23:02:09 +08:00 哈哈哈,这个挺有创意的啊。 不过,稍微有点基础的都能看懂的吧,感觉刷不了多少人,没啥用。 |
![]() | 5 cnwtex 2017-03-28 23:20:38 +08:00 Uncaught SyntaxEror: Unexpected token import(…) |
![]() | 6 tyrealgray 2017-03-28 23:24:56 +08:00 楼上真萌,居然真的去运行了 |
![]() | 7 huntererer 2017-03-28 23:46:19 +08:00 讲真,还不如用 ES5 写一个能在浏览器 console 的,运行结果是邮箱什么的,逼格还能稍微高一点 |
![]() | 8 V2KN 2017-03-28 23:50:59 +08:00 额,没什么前端基础,我还以为真的是一个接口咧。然后调用接口返回个什么东西。。仔细看了一下,原来招聘需求都在程序里面啊。。=,= |
![]() | 9 V2KN 2017-03-28 23:52:22 +08:00 下次用 Brainfuck 写,应该能筛掉不少? |
10 AbrahamGreyson 2017-03-29 00:51:49 +08:00 via iPhone 真想标新立异,代码质量应该注意一下。 别怕文件多,开始拆分难看的 if 吧,上模式。 |
11 call43848 2017-03-29 00:55:52 +08:00 能够感觉到搜狐再用力。挺喜欢你们大老板的。加油! |
12 akq 2017-03-29 01:11:06 +08:00 ![]() 15 年前 Dream Weaver 还挺火, 就是生成了太多无用 code, 不如手写 div 和 css 来得简洁, 04 年以后才出现的 MSXML2.XMLHttp 和 XHR, 有个哥们取了个名叫 AsyncJsAndXml, 结果火了很多年, 很好奇你们不用 XHR ,只用 JSONP 和 websocket ?其实配个 cors 没那么难。 twitter 的 boot strap 都要出 4 了,一个 CSS 框架你跟他们有多大仇?一个 jquery 的 swipe 插件也成了眼中盯?会就会呗,总不能忘了吧。 说到 es6 ,还没有 await 和 async ,而 chrome 连 import 还不能直接支持,没觉得 babel 编译一下就技高一畴了,也没觉得会用个 grunt/gulp/webpack ,打个包部个署就高人一等了。装 13 还得多看看 https://github.com/tc39/ecma262 ,盯紧点,要不哪天就过时了。 说实话,研究过 react, vue, angular, knockout, backbone 这些框架的源码确实有益,但对设计出一套新的前端架构是用处甚微。看 reactNative 就加 5 分,这段值 15 分呢。 还有,创业跟前端有啥关系?创业狗月月想着怎么报税做账,年年还得交残保金,各种租金证工资费用,开个发票还得研究行列间距。对了,研究过开源财务工具库的源码能不能加分? 还有 if (skills.indexOf(skill)) , skill 不能放在最开头,要不就不给分?其实前面加个波浪号就好了。 终于通过筛选了。呵呵。 |
![]() | 13 aimicheng OP @AbrahamGreyson 当你用模式写代码时,你用错了;当你无意间发现你用了某个模式时,你用对了 |
![]() | 14 flowfire 2017-03-29 08:27:17 +08:00 via iPhone 刚开始我还想说挺有创意的。。。 然后看了一遍我想说这段代码大概是 HR 写的用来装(哔)的吧 |
![]() | 15 keikeizhang 2017-03-29 09:06:28 +08:00 Dreamweaver |
![]() | 16 Sivan 2017-03-29 09:17:41 +08:00 via iPhone 简历内容: 精通 react webpack vue babel es6 ,酷爱研究 react naive 等框架源码。 p.s. 极度讨厌 dreamweaver 。 面试结果: 未通过。 |
19 akq 2017-03-29 10:05:11 +08:00 ![]() 讨厌 dreamweaver 的请把名字写对了,其实你们是没用过 frontpage 这种史前巨兽。 |
20 shyling 2017-03-29 10:11:01 +08:00 Uncaught SyntaxError: Unexpected token import(…) |
![]() | 22 11 2017-03-29 10:25:01 +08:00 acient 是啥意思 |
![]() | 23 aimicheng OP @akq AJAX 、 Swiper 、 Boostrap 是非常基础的技能,并不是鄙视的意思;一个符合我们要求的前端不屑于把这些写简历里面,因为这代表不了 TA 的水平和品味。 ES6/Node.js 代表的是一套大前端技术体系,是我们推崇的开发方式。 创业技能加成是在于文化认同。我们部门给每个人很大的空间,因此青睐于具备兴趣、自我驱动、敢于尝试等创业特质的人 |
![]() | 25 Weny 2017-03-29 10:42:50 +08:00 via Android LZ 的趋势 开除 HR 写个语义分析来处理简历就可以了咯 |
27 AbrahamGreyson 2017-03-29 11:53:09 +08:00 via iPhone @aimicheng 书里也这么说 ,厉害了我的哥。 |
![]() | 28 chnhyg 2017-03-29 11:58:30 +08:00 14 points ,可惜岗位在北京 |
![]() | 29 galenyuan 2017-03-29 12:09:31 +08:00 ![]() ```Javascript const skillPoints = ['es6', 'babel', 'webpack', 'gulp', 'grunt', 'react', 'vue'].reduce( (res, skill) => { return skills.indexOf(skill) ? res + 1 : res }, 0); ``` 请保持代码简洁 |
![]() | 30 galenyuan 2017-03-29 12:53:59 +08:00 ![]() skills.indexOf(skill) === -1 |
31 akq 2017-03-29 12:54:44 +08:00 |
![]() | 34 DaraW 2017-03-29 15:30:53 +08:00 收实习吗== |
![]() | 36 hronro 2017-03-29 19:09:51 +08:00 `if (skills.indexOf(skill))` -> `if (skills.includes(skill))` 谢谢 |
![]() | 37 bonfy 2017-03-29 19:14:02 +08:00 |
39 v2dogas 2017-03-29 22:48:21 +08:00 头像蠢 内容中二 暴露智力系列 |
![]() | 40 hiwower 2017-03-30 08:24:10 +08:00 看着你们英文写注释,好羡慕 |
![]() | 41 lalalafq 2017-03-30 09:33:50 +08:00 非前端已看懂了。给 lz 的注释和代码风格点个赞 |
![]() | 42 wangxiuling 2017-03-30 11:02:11 +08:00 ![]() 一个搜狐招聘就有几个孩子跪着点赞的。作为 30+的老年人,对这个要求觉得很恶心。 大学自学的 frontpage ,之后用 Dreamware.上面有说 Dreamware 自动生成的页面很复杂,拜托,你可以手写呀。把他当记事本行不行?工具而已,居然也有鄙视链。 之后算某领域专家吧,小朋友们也不一定知道, IBM , lotus domino ,知乎上很多装大拿的评价这个不适应于移动时代。拜托, 90 年代的东西,就支持了所有视图 XML ,而且不管用 lotuscript ,还是 java agent ,都可以做到所谓的 restful 结构定义。 05 年开始,大量项目中用的都是 xmlhttp+xml ,当然现在改成 JSON 了。 08 年招了一小孩,很多代码用 JQUERY ,没关系,我用的原生 JS ,遵循 W3C ,现在接个项目, 11 年 ie7 上写的很多代码 IE11,chrome,ie8 , IE11 直接拷过来就能用。 11 年接了个微软 sharepoint 的项目,对方是 500 强外企,服务器端代码集中部署在总部,中国区不能动,没关系, ajax+webservice 。 执着于术,忘了道.据说 11 年, 12 年大家还纷纷考察简历里有没有 amd,cmd.可我原来公司 03 年的产品里:是这么定义的: Com_RegisterFile("common.js"); Com_IncludeFile("xml.js"); |
![]() | 43 wangxiuling 2017-03-30 11:09:39 +08:00 @akq 哥们一看就是真创过业的。 |
![]() | 44 aimicheng OP @wangxiuling 无关鄙视链,趣味相投的人会走到一起 |
![]() | 45 wangxiuling 2017-03-30 11:54:45 +08:00 @aimicheng 公司提供技术氛围与环境,是为了技术能快速支撑相应商业模式,体现价值。 技术人员通常考虑的是钻研最新最火的,技术,首先这是很酷。但拿趣味相投,拜托,作为技术人员,我也很喜欢混技术社区。 |
46 YiYing 2017-03-30 14:54:02 +08:00 @wangxiuling 居然在这里碰到也玩儿过 lotus 的朋友,握手!~~~个人觉得技术只是解决问题的工具,除了对技术的考察,考察一个人是否有责任心、进取心、是否真正靠谱,值得信任才是最重要的。分享一篇年初写的博文: 怎样全面了解应聘者的实力 http://muchstudy.com/2017/02/12/%E6%80%8E%E6%A0%B7%E5%85%A8%E9%9D%A2%E4%BA%86%E8%A7%A3%E5%BA%94%E8%81%98%E8%80%85%E7%9A%84%E5%AE%9E%E5%8A%9B/ |
![]() | 47 dcatfly 2017-03-30 22:55:05 +08:00 木有返回结果。。 |
![]() | 48 spy19930412 2017-03-31 21:11:56 +08:00 @DaraW 好巧 |
![]() | 49 DaraW 2017-03-31 21:31:27 +08:00 @spy19930412 好巧+1 ,真是到哪儿都能见到 hhhh |