为什么 GitHub 可以加分?

很多招聘描述上面都会备注 GitHub 是加分项,那么为什么它是加分项呢?

停,如果看到这里你还不知道 GitHub 是什么,可以看一下 Phodal的手记:https://github.com/phodal/github (手动粘贴或者阅读原文)。

社区光环,众所众知,GitHub 是开发者的“同性交友社区”。Google, FB, Alibaba 都在通过它来贡献自己的开源项目。如果你留心关注,公司越大 Github的贡献度越高,那么如果你想进入大的互联网公司,是不是也提前融入一下这个氛围?同时对于求知的小伙伴儿想阅读源码没有什么比它来的更直接了。

代码工具,越来越多的公司使用 Git 系工具(GitLab,Gitee,GitHub)做项目源码管理,你的提交记录是最好的证明你的 Git 基本功,要比在简历上写熟练使用 Git 更有说服力。那么一个题外话,如果你也热衷于维护 StackOverflow账号,写上也是一种加分。

编程能力, Talk is cheap, show me the code., 这句话想必大家都知道吧。 GitHub 上面的代码能够最直观的看到你的编程风格和能力,面试官在背调的时候可以通过你的代码结构,更深入的了解你,好的编程规范会在面试前就留下一个很好的印象。大多数面试官希望看到这种能够真正展示你能力的东西,而不是只是在简历上写会什么什么。作为面试官,大多数是来看人们的编码习惯,不管人家写这个东西是为了什么的。

技术热情,如果你钟情于购物,你第一想到的可能是小红书;如果你钟情于阅读,第一想到的可能“蜗牛读书”(笔者在用很不错的读书 App);如果你钟情于看新闻,第一想到的可能是腾讯新闻。然而如果你钟情于技术第一想到的可能是 GitHub。只有一个钟情技术的人,才会想像朋友圈一样每天关注 GitHub,维护 GitHub。所以你“绿油油”的 GitHub 是你的技术热情的最好体现。你看到下图会动心吗?

PS: 曾经一个技术很不错的小伙伴终面的时候挂了,面试系统中的备注是:“看不到他对技术的热情”。所以这也会作为面试的一个考量。

英文水平,常用 GitHub 的朋友可能不觉得,但是对于普遍互联网公司的朋友们,英语都是致命的伤痛。虽然 GitHub 简单的操作英文并不是那么难,但是想把它玩透,还是需要一些功底的。如果你没用那么好的英语底子也能玩透,无论是你的英文熟悉能力还是适应能力都是可以肯定的。对了,还有你的 repository 的命名。这不比写上四六级证书来的实际?

PS: 我们其实也都知道,当年的四六级是怎么就过了。[坏笑]

涉猎领域,你的圈子决定了你的水平,一样的道理。你的 GitHub的 follow, star, followers, repository, pull request 还有你获得 star,都是在展示你的涉猎,关注和掌握程度。你的一个 ElasticSearch 的 PullRequest 被 Merge 远比你的一句“精通 ElasticSearch”要更有说服力。

情投意合,村子里面的阿姨每天就聊聊哪个市场的白菜最新鲜,那么你如果有好的 star 或者好的开源贡献,这会让面试官在面试你的时候有东西可聊。如果他喜欢上你的 repository而侃侃而谈,那么结果会怎么样呢?

开源贡献,开源贡献不一定非要有一个几K的star,而是你对于开源的那份热忱。可以是好的资源整理,也可以是自己找到了痛点做的一个很小的工具,或者是使用别人的工具提的 pull request。都是你对开源的那一份热忱。你从开源一直索取,适当的给予更能体现一个人的心智。

与众不同,虽然上面说了 GitHub 的好处多多,但是国内的技术圈子能持续坚持 GitHub的人还是太少了,所以变成了如果你有一个不错的 GitHub写到简历上面也算是一道风景线了。

PS: 笔者最近阅读了近百份简历,能有不错 GitHub 的人寥寥无几。

为什么没有亮点反而减分?

僵尸粉,一进来 GitHub 主页只有几个空项目,名字很奇怪也没有 star,点击进去杂乱的项目目录,提交记录和中文提交备注。那么这样的 GitHub 不仅没有提分的亮点,而且还会大大折扣面试官的印象。

零参与,别人都是“绿油油”的草地,你这是撒哈拉沙漠,那么一点也体现不出来你对技术的热情,持续的学习。

短而小,如果都是 HelloWorld 一样的 demo 是完全没有说服力的。

乱投机,自己没有贡献代码,只是因为提交了 issue可以把别人的 repository 固定到自己的 GitHub Profile 首页。这样不但不能加分反而减分。这样就好比随意粘贴来别人辛苦写的公众号文章作为自己的原创一样。

乱命名,这几天在收到的简历里面发现了好多GitHub命名方式千奇百怪,比如 X00000000X,LZ00000000,ZUOYE20170909。这可是你的用户名,一来方便别人访问和记住,二来你这个命名都这么不规范,何况是项目,类,方法呢?

不专业,切记,想提高自己也好,想开源小东西也好,切记不能再上班时间整理自己的代码,如果面试官一看你的所有提交记录都是周一到周五的上班时间,那么你想他还会聘请你吗?我的意思不是说让你工作日写完,周末去提交,而是 GitHub 是体现你业余时间的一个贡献度。

怎么样让自己的 GitHub 加分?

习惯,良好的使用习惯,就像是每天来看朋友圈一样,不一定每天都有东西要提交,但是一定要一直有一个 repository 在维护,持续的提交代码。同时也要注意自己的 repository的命名,提交代码保证一次的功能完备,提交备注要清晰明了。

持久,可以试着翻译外文,写博客,或者是自己做一个有意思的小程序,每天坚持编写代码,提交代码。但是一定要注意每次提交的功能完整性和备注。

贡献,很多方式可以贡献开源社区,有一个话说得非常好,我们做程序不仅仅是提出问题,而是提出问题并有解决方案。那么你可以提交 issue给你觉得有问题的软件,如果没有理睬自己修改,然后提交 pull request。或者自己做一些脚手架,多少有一些实际的功能,当然我们不希望重复制造轮子,你在创造的时候还是提前去检索一番。不过这个时候你需要了解一下开源协议,合理的使用别人的源码和开源自己的源码。

文档,开发人员除了编码,更重要的是能写出完备的文档,所以如果你开源了项目,一定要详细地写出相关文档。这不仅体现出你的编写文档能力,还能体现你的逻辑能力。

关注,原来你可能使用 Google 来解决问题,告诉你一个新方法,遇到问题可以按照自己提炼的关键字来 GitHub 搜索,没准能找到意想不到的结果。而后呢 Fork 或者 Star 这个你得到的结果,慢慢的你就真正的把 GitHub 用起来了。

英文,试着不要给 repository起拼音名字,试着用英文写 readme,试着每一个提交的注释都是英文,并每次都要斟酌。

博客,一个 GitHub Pages 的博客对于有技术热忱的极客来说,比每天在 CSDN 写博客要专业很多。可以没有自己的域名,自带的域名也可以带飞。不过这里需要补充一点,不是一拥有了一个博客就加分,而是你是不是在持续的维护这个博客。

什么样的 GitHub 才适合放简历上?的更多相关文章

  1. .Net Core ORM选择之路,哪个才适合你 通用查询类封装之Mongodb篇 Snowflake(雪花算法)的JavaScript实现 【开发记录】如何在B/S项目中使用中国天气的实时天气功能 【开发记录】微信小游戏开发入门——俄罗斯方块

    .Net Core ORM选择之路,哪个才适合你   因为老板的一句话公司项目需要迁移到.Net Core ,但是以前同事用的ORM不支持.Net Core 开发过程也遇到了各种坑,插入条数多了也特别 ...

  2. 到底什么样的企业才适合实施SAP系统?

    SAP系统作为全宇宙第一的ERP,号称世界500强里面有80%的企业部署了SAP系统,总部位于德国沃尔多夫市,在全球拥有6万多名员工,遍布全球130个国家,并拥有覆盖全球11,500家企业的合作伙伴网 ...

  3. 4星|《钱的历史》:大英博物馆的钱币简史,彩图众多不适合在kindle上阅读

    钱的历史(大英博物馆权威出品,一部金钱简史) 大英博物馆的两位钱币馆馆长的作品.非常专业.基本是世界钱币简史.从钱币的发展变迁讲到涉及到的历史大事,重心当然是欧洲的钱币史,中国.印度也各安排了一章. ...

  4. 在GitHub多个帐号上添加SSH公钥

    GitHub后台可以添加多个SSH Keys,但是同一个SSH Keys只能在添加在一个帐号上(添加时提示“Key is already in use”).理由很容易想到,SSH公钥使用时相当于用户名 ...

  5. github下载速度慢甚至多次失败,通过码云的导入功能导入github项目到码云上,然后再从码云下载

    github下载速度慢甚至多次失败,通过码云的导入功能导入github项目到码云上,然后再从码云下载 参考 https://blog.csdn.net/kcx64/article/details/83 ...

  6. CSS如何实现把鼠标放在行上整行变色

    CSS如何实现把鼠标放在行上整行变色: 在很多网站都有这样的效果,那就是当鼠标放在一个文章列表行的时候,此行就会显示与其他行不同的颜色,本站的文章列表也具有这样的效果,便于浏览者识别,非常人性化,下面 ...

  7. 简历上的哪些内容才是 HR 眼中的干货?

    资源业绩能力知识自评 https://www.zhihu.com/question/39722495/answer/199846861

  8. 什么是cookie(前段时间看到别人简历上把cookie和localStorage混淆了所以专门又去了解了下)

    在前端面试中,有一个必问的问题:请你谈谈cookie和localStorage有什么区别啊? localStorage是H5中的一种浏览器本地存储方式,而实际上,cookie本身并不是用来做服务器存储 ...

  9. Java 内存模型都不会,就敢在简历上写熟悉并发编程吗

    从 PC 内存架构到 Java 内存模型 你知道 Java 内存模型 JMM 吗?那你知道它的三大特性吗? Java 是如何解决指令重排问题的? 既然CPU有缓存一致性协议(MESI),为什么 JMM ...

随机推荐

  1. mysql 存儲emjoy表情是報錯Incorrect string value:

    解决方法: [mysqld] character-set-client-handshake=FALSE character-set-server=utf8mb4 collation-server=ut ...

  2. Echars折线配置详解

    Echars折线配置详解 比如做成如下效果图: 所有的配置如下: var option = { tooltip: { // 提示框 trigger: 'axis', // 触发类型(坐标轴触发) al ...

  3. java 桥接模式

    桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦. 1)适配器:改变已有的两个接口,让他们相容. 2)桥接模式:分离抽象化 ...

  4. MySQL 基础三 函数(聚合、字符串、时间、条件判断)

    1.聚合 其它:GROUP_CONCAT.avg.sum.count.max.min SELECT typeid,GROUP_CONCAT(goodsname) FROM `goods` GROUP ...

  5. 奇怪的组数length属性

    Java中的数组其实也是一个对象,但是确实是一个特殊的对象,实在是太特殊了,继承自Object, 多出一个属性length,改写了clone方法.   我debug了数组对象的运行时的Class对象, ...

  6. 把List<T>转换为DataTable

    下面这个学习,把List<T>转换为Datatable. 下面先创建一个对象T: class Ay { private int _ID; public int ID { get { ret ...

  7. Spring Aop: 关于继承和execution target this @annotation

    1.多态 target指通过这个对象调用的方法   (匹配标识对象的所有方法)  getMethod() this指调用这个对象的方法 (匹配标识对象实现的方法) getDeclaredMethod( ...

  8. zjoi2018 day1游记

    咕咕咕 upd:看见有人贴上zhihu的问题,那个我早就看到了... 谴责一番题主 @gzy_cjoier 阅读量马上700没想到吧 既然这么火我挂个广告吧 永别,OI 听说有人催更??

  9. Asp.Net Core基于Cookie实现同域单点登录(SSO)

    在同一个域名下有很多子系统 如:a.giant.com  b.giant.com   c.giant.com等 但是这些系统都是giant.com这个子域. 这样的情况就可以在不引用其它框架的情况下, ...

  10. JAVA核心:内存、比较和Final

    1.java是如何管理内存的 java的内存管理就是对象的分配和释放问题.(其中包括两部分) 分配:内存的分配是由程序完成的,程序员需要通过关键字new为每个对象申请内存空间(基本类型除外),所有的对 ...