查看原文
其他

四次面试:程序员越来越悲催了

码农翻身刘欣 程序人生 2019-05-25

作者 | 刘欣

责编 | 伍杏玲

本文经授权转载自码农翻身(ID:coderising)


静态网页时代


张大胖V1.0 毕业了, 去一家公司面试。

“会做网站吗?”

“会,我会用Dreamweaver/FrontPage写HTML页面,不仅是文字,我还能在里边添加图片,JPEG、GIF的都行,比纯文字的漂亮多了。奥,不懂这些高深的技术名词啊, 没事,只要你给我提供材料,我就能做出来,我还知道怎么传到服务器上去,可以用一个叫做cuteFTP的软件。”

“行,那你来吧,月薪3000。”

张大胖欣喜若狂 :哇,这么多钱,我要财了!


动态网页时代


张大胖V2.0 毕业了,去一个公司面试。

“用ASP写过网站吗?”

“写过啊,我用ASP写过在线的聊天室!用application对象来存储聊天记录,用session保存当前登录的用户信息。”

“聊天记录不保存到数据库吗?”

“没有,一般来说,参与聊天的人能看到过去一段时间的聊天记录就可以了,所以就直接放到内存中了,这样速度很快。”

“那大家都在说话,岂不就冲突了?”

“奥,ASP的那个application对象是可以加锁的。”

“用户端是浏览器,怎么实现刷新啊?”

“这个不难,加上一个refresh tag 就行, <meta http-equiv="refresh" content="3; url=xxxxx">  , 像这样每隔3秒就刷新了。”

“嗯,看来有实践经验,我们公司就缺你这样的人才,来吧,月薪5000。”

张大胖:“好多钱!再攒几年就可以买房了!”


21世纪初


张大胖V3.0 毕业了,去一家公司面试。

“讲讲MVC是怎么回事?”

“MVC是Model-View-Controller的简称,实现了Web网站各个模块的职责分离......”

“说说EJB的生命周期,如何管理事务的,在WebLogic中部署都需要哪些部署文件......”

“你都用过哪些设计模式啊,在白板上画个类图,详细地讲讲。”

“讲讲Java 集合类。”

“AJAX的原理是什么?jQuery都有哪些选择器?”

“数据库的事务是怎么回事?有哪些隔离级别?”

“好了,什么时候能上班?月薪8000。”

张大胖:“还行, 北京房价一平米五六千,还是有希望的。”


现在


张大胖V4.0 毕业了,去一家公司面试。

“JDK的源码看过没有, 先说说HashMap的实现原理吧!”

“JVM类加载的过程是什么?Java的内存模型是什么样的?JVM的垃圾回收算法有哪些?讲讲Java 锁的实现原理。”

“比较一下select、poll、epoll 的优缺点。”

“TCP和UDP有什么区别, 为什么TCP要三次握手,四次挥手?TCP如何控制阻塞?HTTP的短连接和长连接是什么意思?”

“Spring的AOP是怎么实现的?ASM是怎么操作字节码的?”

“volatile 是怎么回事?CAS呢?ABA问题怎么解决?”

“线程池是怎么回事?有哪些参数可以设置?”

“说说MySQL 的InnoDB索引的实现原理。如何有效地利用索引?MVCC是怎么回事?数据库的读写分离,表的垂直和水平拆分怎么做?缓存和数据库的一致性怎么处理?”

“讲解CAP理论, 最终一致性,BASE的原理。”

“用通俗的语言讲解一下Spring Cloud。”

张大胖被面得头晕眼花, 最后得到了一个消息:“你先回去吧,有消息会通知你的。”


写在最后


程序员是越来越悲催了?不见得。

时代在变,技术在变, IT行业对程序员的要求是越来越高,现在的程序员需要学习的东西更多了, 确实是更加辛苦了,当然,能力也更强了。

将来会发展到什么程度呢?欢迎留言,说说你的看法。

作者简介:刘欣,前IBM架构师,近20年从业经验,「码农翻身」公众号作者,畅销书《码农翻身》作者,用故事讲解技术是拿手好戏。 拨开技术迷雾,轻松理解技术本质,从「码农翻身」开始。

作为码一代,想教码二代却无从下手:

听说少儿编程很火,可它有哪些好处呢?

孩子多大开始学习比较好呢?又该如何学习呢?

最新的编程教育政策又有哪些呢?

下面给大家介绍CSDN新成员:极客宝宝(ID:geek_baby)

戳他了解更多↓↓↓

 热 文 推 荐 

@程序员,不是你选择加班,而是 KPI 驯化你

作为 IT 行业的过来人,你有什么话想对后辈说的?| 程序员有话说

Python 爬取 13 个旅游城市,告诉你五一大家最爱去哪玩?

中国大学生编程第一人:世界顶尖黑客,被 Facebook、Google 青睐

华为员工年薪 200 万!真相让人心酸!

Facebook数据泄漏受害者: 既然无法阻止个人数据被卖, 不如我自己先卖

什么是云计算基础设施? | 技术头条

Yann LeCun推荐!自监督学习、全景FPN...内容平台的四大技术指南

System.out.println("点个在看吧!");
console.log("点个在看吧!");
print("点个在看吧!");
printf("点个在看吧!\n");
cout << "点个在看吧!" << endl;
Console.WriteLine("点个在看吧!");
Response.Write("点个在看吧!");
alert("点个在看吧!")
echo "点个在看吧!"

你点的每个“在看”,我都认真当成了喜欢

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存