前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >一周极客热文:从分析8000条软件工程师招聘信息所学到的

一周极客热文:从分析8000条软件工程师招聘信息所学到的

作者头像
钱曙光
发布于 2018-02-02 02:54:36
发布于 2018-02-02 02:54:36
8470
举报
文章被收录于专栏:钱曙光的专栏钱曙光的专栏

Aline Lerner 过去以编程谋生,现在从事招聘工程师的工作。去年,她通过参考全年的有效招聘数据编写了一篇文章,总结如下:

  • 如果可以的话,尽可能让招聘信息更个性化。谈论你从事什么工作,候选人已经做的事情与招聘内容有什么样的关系,你为他们在做一些事情的原因。攀亲带顾,人造的个性化不算在内。
  • 即使是创始人的亲自招聘也并没有从本质上增加价值,除非他们是个性化的和有针对性的。
  • 写好招聘信息是很难的,并且当工程师和创始人作为招聘人员,他们不一定比专职招聘人员做的更好。在另一方面优秀的招聘人员是更有价值的。专业的人与非专业的人相比,能够做出更多有吸引力的信息。
  • 试图克扣优秀人才工资是不会让你有任何朋友。而且一开始就让薪资透明化,假设这些薪酬是有竞争力的,可能是一个更好的策略。

下面是小编为大家盘点的一周极客热文。(如果你对有极客头条有什么建议或遇到了什么问题欢迎来邮qianshg@csdn.net,主题请加“极客头条”字样。)

一、 JAVA 9 新特性

Oracle已将JAVA 9的开发提上日程。OpenJDK上已经出现了关于下一个主版本JAVA 9的改进建议。下一个release版本将推出三个全新的API

  1. 轻量级的JSON API(JEP 198):用于读写JSON文档和数据流
  2. HTTP 2客户端(JEP 110):支持HTTP2.0和websocket,用以替代原有的HttpURLConnection。
  3. 进程API更新(JEP 102):改进对操作系统进程的控制与管理(以往开发者只能用现有API提供的编写native代码的方式)

还有一些其他的小特性诸如在JEP中提及的数十个建议。此外,Oracle还承诺了另外三件有关性能的特性:

  1. 改进竞争锁(JEP 143):此项旨在于改进当线程竞争访问对象时的性能。
  2. 分段代码缓存(JEP 197):更好的性能,更短的扫描时间,更少的碎片,以及其他扩展能力。
  3. 智能的JAVA编译器sjavac(JEP 199):默认使用sjavac来构建更为大型的项目。

二、 那些必读的数据库领域论文

基础与算法

  • The Five-Minute Rule Ten Years Later, and Other Computer Storage Rules of Thumb (1997): 此文与十年前的原始论文解释了一个量化公式,用来计算数据页是否应该缓存在内存中。能读到Jim Gray处理一系列相关问题(比如数据页应该多大)的方法,幸何如之。
  • Paxos Made Simple (2001): Paxos构成了许多分布式系统的基础。想法很简单,但理解起来却出名的难(可能是因为原始论文的写法太……)。

关系数据库

经典的系统设计

列式数据库

列式存储和面向列的查询引擎对于分析型负荷即OLAP至关重要,已有15年历史(最早的MonetDB论文发表于1999年),到现在几乎所有商业数据仓库都有列式引擎了。

数据并行计算

  • MapReduce: Simplified Data Processing on Large Clusters (2004): MapReduce既是一种编程模型(借鉴自函数式编程中的古老概念),也是Google用于分布式数据密集计算的系统。这个编程模型如此简单而又功能强大,能够满足广泛的编程需求。系统加上模型,是容错而且可扩展的。

趋势(云计算,仓库规模计算和新硬件)

  • A View of Cloud Computing (2010): 关于云计算的权威论文。从技术角度讨论了云计算(主要指资源的弹性而不是面向消费者的“云”)的经济意义和阻碍因素。这些阻碍因素将影响云中系统的设计决策。

扩展阅读——许多学校都有针对研究生的数据库阅读列表

  • Berkeley: http://www.eecs.berkeley.edu/GradAffairs/CS/Prelims/db.html
  • Brown: http://www.cs.brown.edu/courses/cs227/papers.html
  • Stanford: http://infolab.stanford.edu/db_pages/infoqual.html
  • Wisconsin: http://www.cs.wisc.edu/sites/default/files/db.reading.pdf
  • Joseph Hellerstein的Berkeley数据库研究生课程阅读列表,比本列表更全面

三、 学习Linux/UNIX的在线免费书籍和课程

书籍《鸟哥的 Linux 私房菜 — 基础学习篇》(繁体中文)《鸟哥的 Linux 私房菜 — 服务器架设》(繁体中文)《UNIX入门指南(英文)》《Linux命令行(英文)》《搭建Linux开发环境(英文)》

课程《Linux达人养成计划》《在Ubuntu Server下搭建LAMP环境》《Linux系列教程(Youtube英文)》《UNIX实践(英文)》

工具Shortcutfoo - 熟悉命令行功能的在线小工具。这个在线的小工具把Linux命令划分成多个分类,集中熟悉相关命令的功能,并且通过测试让你不加深记忆。

distrowatch – 汇集了数百个Linux发行版本更新信息的网站。

四、 JAVA多线程和并发基础面试问答

  • 进程和线程之间有什么不同?

一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用。而线程是在进程中执行的一个任务。Java运行环境是一个包含了不同的类和程序的单一进程。线程可以被称为轻量级进程。线程需要较少的资源来创建和驻留在进程中,并且可以共享进程中的资源。

-可以直接调用Thread类的run()方法么?

当然可以,但是如果我们调用了Thread的run()方法,它的行为就会和普通的方法一样,为了在新的线程中执行我们的代码,必须使用Thread.start()方法。

  • 在多线程中,什么是上下文切换(context-switching)?

上下文切换是存储和恢复CPU状态的过程,它使得线程执行能够从中断点恢复执行。上下文切换是多任务操作系统和多线程环境的基本特征。

五、 我们为什么仍然要雇用效率低下的程序员?

之所以光凭能力、效率、专业性不能决定一个程序员去留,主要有以下3个原因。

  • 任何公司都需要采用营销和技术手段,来生产和推广产品,代码质量并非成功的唯一因素。
  • 外行人看不出代码质量。一个漂亮的用户界面,哪怕后面的代码乱七八糟也没关系,Who knows?
  • 是否专业化要经过10多年的维护之后才看得出来,大浪淘沙,历时弥久。

六、 什么原因成就了一位优秀的程序员?

  1. 他们做调查研究(或者叫“三思而后行”,或者叫“谷歌一下”)
  2. 他们阅读错误信息(并按照它们行事)
  3. 他们去看源代码
  4. They just do it
  5. 他们避免危机
  6. 他们善于沟通交流
  7. 他们激情四射

此外,还值得关注的有:我的多年编程经验总结偷懒是程序员的一种至高境界【调查】程序员需要知道的97件事,你知道几件?揭秘 GitHub 的 CSS 技术细节一网打尽!200+值得收藏的设计师资源站SysAdmim 必备:系统性能大牛 Brendan Gregg 分享的 Linux 性能工具

更多精彩内容,请点击一周极客热文查看。

上期回顾:

一周极客热文:2014最受欢迎的10种编程语言

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2014-09-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
那些必读的数据库领域论文
之前林仕鼎曾整理过系统架构领域的学习资料,这几天Spark核心团队成员辛湜(Reynold Xin)公开了他整理的一份数据库学习资料列表,Hacker News上引起了不少讨论。其中的评述文字也很有价值,简要编译如下。大家对这个列表如有补充,请评论。 基础与算法 The Five-Minute Rule Ten Years Later, and Other Computer Storage Rules of Thumb (1997): 此文与十年前的原始论文解释了一个量化公式,用来计算数据页是否应该缓存在内
CSDN技术头条
2018/02/08
2.7K0
一周极客热文:2014最受欢迎的10种编程语言
从10个重要的信息源(包括IEEE Xplore,谷歌和GitHub)中选取了12个重点指标,评选出了2014最流行的编程语言。(具体排名请看上图) 下面是小编为大家盘点的一周极客热文。(如果你对有极客头条有什么建议或遇到了什么问题欢迎来邮qianshg@csdn.net,主题请加“极客头条”字样。) 一、 程序员面试资源大收集 资源一:《crack the code interview》——谷歌资深技术面试官经典之作 资源二:《程序员编程艺术:面试和算法心得》——CSDN知名博主周磊的作品,真的是精益
钱曙光
2018/02/02
9000
一周极客热文:2014最受欢迎的10种编程语言
一周极客热文:Java开发的10位牛人
1983年,Gosling获得了卡尔加里大学的计算机科学学士学位。1990年,他获得了卡内基梅隆大学的计算机科学博士学位,师从Bob Sproull。在攻读博士期间,他自己开发了一款emacs,叫Gosling Emacs(Gosmacs),在大学的这段时间,他还开发了一个多处理器版本的Unix,以及数个编译器和邮件系统,之后才加入Sun公司。 1984到2010年间,Gosling一直在Sun公司工作。他被公认为Java之父。 更多Java大牛:Joshua Bloch ——Collections框架
钱曙光
2018/02/02
9180
一周极客热文:Java开发的10位牛人
一周极客热文:你工作了几年以及待遇大概多少?
本周被盖到400+楼的最最最热门文章是《大家聊聊待遇:工作几年,待遇大概多少??》。由于回复的内容“炒鸡”多,小编也无法很好的整理并得出高大上的结论,我想大家还是自己去看吧。 但在这里,我想给小伙伴们说两句话,不管你的待遇好与坏,想想自己曾经为何走上这条路的?随着生活的压力与日俱增,曾经的梦想还在么?只希望你在前行时不仿说一句:我喜欢IT、我爱编程、我会一直坚持走下去! “听过很多道理却依然过不好这一生。”但我想还是相信有很多人可以过好的,只要努力、坚持,并做自己爱做的事情,你就成功了。 下面是小编为大
钱曙光
2018/02/02
1.3K0
一周极客热文:你工作了几年以及待遇大概多少?
一周极客热文:十步完全理解SQL
很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。 如果你是一下这三类人中,不妨看下此文,相信会对你有所帮助: 在工作中会用到 SQL 但是对它并不完全了解的人; 能够熟练使用 SQL 但是并不了解其语法逻辑的人; 想要教别人 SQL 的人。 以下为10个简单步骤,可完全理解SQL: SQL 是一种声明式语言——SQL 语言声明的是结果集的属性,计算机会
钱曙光
2018/02/02
1.1K0
一周极客热文:十步完全理解SQL
一周极客热文:5种类型的程序员
一位过来的老鸟程序员总结了自己多年的程序员经历,把程序员分为以下五类: 补漏型:当哪里出现差错的时候他会迅速的修补 完美主义强迫症型:“你想对我的代码做什么!” 反编程型:“我是一个程序员,但是老子不写代码!” 半吊子型:“你还想怎样?它已经能工作了不是吗?” 理论型:“好吧,这样是可行的,但事实上还有一个更好的选择。” 就个人而言,我认为自己是一个完美主义型。那么,你是哪一种呢?欢迎在评论中写下你的观点。 由于原文是英文,大家可看热心的CSDN用户赖信涛对此文的编译:五种类型的程序员。 一、 你已经毁
钱曙光
2018/02/02
9870
一周极客热文:5种类型的程序员
Java工程师核心书单推荐
书籍是获取知识的最好来源之一。技术书籍浩如烟海,市场上有不少《XXX入门到精通》,《XXX王者归来》,《21天学会XXX》这样的书,当然也有不少经典,个人的精力有限,这些经典不可能都通读。所以·,博主尝试整理一个Java工程师所需知识的核心书单,尽可能优中选优,挑选出Java工程师必备知识的一些最核心、最经典的书籍,希望能一起学习,一起进步。
三分恶
2021/03/16
6580
Java工程师核心书单推荐
一周极客热文:3月,献给程序员们的技术书
北京的雾霾刚刚过去,小编便开始埋头做三月书讯了。 《算法谜题》 经典算法谜题的合集 Google、Facebook等一流IT公司算法面试必备 《Hadoop实战手册》 快速解决诸多Hadoop相关技术问题的实用技术手册 《趣学Python编程》 无需任何计算机基础知识,轻松有趣地掌握Python编程 《css3专业网页开发指南》 网站设计师必备的CSS3权威参考手册 《C#本质论》 C#入门及进阶首选,备受读者欢迎的C#权威指南,全新升级,涵盖C# 5.0 《众妙之门——移动交互体验设计》 优设哥&优秀
钱曙光
2018/02/02
1.5K0
一周极客热文:3月,献给程序员们的技术书
一周极客热文:一位码农的几点思考
一位码农总结了自己的编程生涯,总结了以下几点: 对框架了解的越多,你才能用得更好。——更好意味着更快,更可靠,写出的代码更容易向上兼容。但另一方面来说,你得先停下来进行学习然后才能开始使用它。只有我理解这些框架是如何实现的了,使用的时候才能感到比较有信心。 我可以做的更好,但我不会这么做。因为它已经实现好了,也足够好用。——你其实并不需要最好的。你需要的只是一个足够好的解决方案就可以了。 原文《一位码农的几点思考》还有更精彩和详细的论述。 一、 Facebook将神奇动画引擎Pop开源了! Facebo
钱曙光
2018/02/02
8210
一周极客热文:一位码农的几点思考
一周极客热文:Google近实时数据仓库系统Mesa曝光
Mesa的controller/worker框架架构如上图 9月在杭州举行的数据库学术会议VLDB 2014上,Google公开了自己大数据核武库的新成员:近实时的互联网规模数据仓库Mesa,可以应对P级数据,每秒处理数百万行更新,每天抓取数万亿行以支持数十亿查询。一般查询几分钟就能出结果,跨多个数据中心,即使整个数据中心故障,仍然能够以较低延迟返回一致和可重复的查询结果。 另外,VLDB 2014其他已接受的论文都已公开了:http://vldb.org/2014/accepted_papers.h
钱曙光
2018/02/02
1.1K0
一周极客热文:Google近实时数据仓库系统Mesa曝光
一周极客热文:Java开发牛人十大必备网站
新时代的学习不再是陈旧的课堂教学,而是个性化的学习,而网络自学也成为很多人的学习新方式,网站可以提供信息,以及一些很棒的讲座, 还能解答一般问题、面试问题等,质量是衡量一个网站的关键因素。日前,一个资深程序员为我们推荐了他搜集的一些Java开发必备的网站,不妨来看下: Stackoverflow:有成千上万个好问题和答案 DZone:有相当多的开发者在这个网站上分享他们博客文章 LeetCode:如果有Java方面的面试问题可在教程中找到答案 Java SE技术文档:包含了在使用Java SE API时
钱曙光
2018/02/02
1.2K0
一周极客热文:Java开发牛人十大必备网站
Java高级软件工程师面试考纲
当前,市面上有《Java XX宝典》类似的图书,而且图书中的内容都着重在讲解Java最为基础的部分,最严重的是,里面有着大量错误的内容,极具误导性。另外,网上也有各种各样的Java面试题, 很多也是着
我是攻城师
2018/05/14
6380
一个深度学习算法工程师的成长之路(思考和方法以及计划)
文章首发于本人CSDN账号:https://blog.csdn.net/tefuirnever
我是管小亮
2020/04/20
3K0
Java高级软件工程师面试考纲
如果要应聘高级开发工程师职务,仅仅懂得Java的基础知识是远远不够的,还必须懂得常用数据结构、算法、网络、操作系统等知识。因此本文不会讲解具体的技术,笔者综合自己应聘各大公司的经历,整理了一份大公司对Java高级开发工程师职位的考核纲要,希望可以帮助到需要的人。 当前,市面上有《Java XX宝典》类似的图书,而且图书中的内容都着重在讲解Java最为基础的部分,最严重的是,里面有着大量错误的内容,极具误导性。另外,网上也有各种各样的Java面试题,很多也是着重在Java语言基础上。实际上,如果要应聘高级开
用户1667431
2018/04/18
7830
C++软件工程师面试考点.md
C++软件工程师面试考察主要有C++基础(最好也懂Java)、数据结构及简单算法、TCP、操作系统、网络编程、Linux基本操作和Shell编程、数据库,设计模式和智力题也会涉及少量。
用户7886150
2021/02/06
6260
Java工程师成神之路(2018版本)
classLoader、类加载过程、双亲委派(破坏双亲委派)、模块化(jboss modules、osgi、jigsaw)
雨临Lewis
2022/01/11
7000
一周极客热文:程序员给女朋友用HTML5制作的3D相册(附源码)
一个高大上的HTML5作品,是利用HTML5 canvas制作的3D图片展示。据说是程序员给自己女朋友做的。 谁说程序员不懂浪漫! 源码下载:CSDN下载频道或来自杨林枫的整理。 一、 提升开发效率的十个工具 Git——试一试。 Stack Overflow——满足了它的活跃用户的虚荣心,而那些没有帐户的用户会不断的涌进来,找到他们满意的答案,并且点击推荐的广告。 Office 365——它集成了微软的Onedrive, Sharepoint, Exchange, Access等工具。 IntelliJ
钱曙光
2018/02/02
4.6K0
一周极客热文:程序员给女朋友用HTML5制作的3D相册(附源码)
一周极客热文:每个程序员都必读的10篇文章
图:海外程序员的杂乱双屏桌面 本周热门文章是《每个程序员都必读的10篇文章》,超百条的评论,看出程序员们都是很爱看书,这十本书为: 《程序员必知之内存篇》——带领你走入内存的各个方面 《每个计算机科学家都必知之浮点数运算》——作为一名Java高级开发人员,你必须了解如何进行货币运算,何时使用float,double或者BigDecimal,如何对浮点数进行舍入运算等等。 《每个程序员必知之Unicode篇》——每一个程序员都绝对绝对应该了解Unicode以及字符集。 《每个程序员必知之时间篇》——除了字
钱曙光
2018/02/02
1.4K0
一周极客热文:每个程序员都必读的10篇文章
高级软件工程师(面试题)
高级软件工程师(面试题) 出题者:netkiller 出处:http://www.netkiller.cn/ 高级软件工程师 下面的面试题不分语言,适用于所有编程语言,更多偏向设计。 设计一个分类功能 该功用于行政区域划分,商品分类,等等 例如中国->广东-深圳 ..... 要求: 无限极分类,层次深度不限 快速检索,不能使用递归 只能使用一个数据库表实现 可以生成树形目录 商品以及属性功能的设计 一个商品有很多属性,例如尺寸,颜色这些属性有固定的值,而另一些属性如重量,体积是需要填写具体数值的,并且还有
netkiller old
2018/03/05
3.4K0
Java软件工程师就业思维图(2016年版)
想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,在面试之前到底需要准备哪些东西呢?面试时面试官想了解你的什么专业技能,以下都是一个合格JAVA软件工程师所要具备的。
Java团长
2018/07/23
6460
推荐阅读
相关推荐
那些必读的数据库领域论文
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档