热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

我的面试经历起伏

2019独角兽企业重金招聘Python工程师标准经过了慵懒的五一小长假,再次想起还有挖好的坑没有填。于是,回来再往这大坑中添点土。争取今年能有个有

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

    经过了慵懒的五一小长假,再次想起还有挖好的坑没有填。于是,回来再往这大坑中添点土。

    争取今年能有个有始有终的博客系列。。。其实我还是想写点技术相关的,苦于最近真没有什么头绪。暂时先水着吧。

    直接进入正文吧。今天的主角是:网易、折800、雪球

    再次事先声明:此系列文章只代表个人观点,如果任何个人或团体对文章有疑问,请联系本人沟通,我会考虑修改。

    还有,禁止转载,禁止人肉

    网易:

        公司背景:

            不介绍了,他们老板养猪的,你们懂的。。。

        面试职位描述:

            资深Java后端开发工程师。网易基础架构部门。

        面试过程:

            笔试:

                网易的笔试题很全面,基础语法,数据库,算法,linux常用命令。

                是我见过的笔试题中最全面的一家。

                基础语法部分:选择题考的比较详细。finally和return的执行顺序都考到了。

                数据库:主要考了子查询、聚合函数和group by等。还问到了如何建立索引。

                算法:记不住了,貌似是写个快排。

                linux常用命令:涉及到cpu、内存、网络状态的查看。还有常用的日志内的搜索,比如cat + grep。基础+实用主义

            一面:

                技术面,

                自我介绍少不了了。

                面试官根据笔试内容提出一些问题,问为什么这样答。多数是针对答错了的问题乘胜追击。

                之后是针对之前做过的项目的提问。比如:红包项目是如何保证一致性和可靠性的。

                首先是介绍红包平台的服务架构和基本思路。此处是了解项目,考察在此项目的参与度,重点是挑项目中的问题

                红包项目基本是应用服务器向redis请求抽取红包,redis中用lua脚本进行红包的抽取计算,并保存操作结果队列。

                应用服务器将红包的抽取结果返回给客户端。并且通过异步线程(线程池维护)从redis中取出之前的操作结果,

                并写入mysql中进行持久化。

                由于redis的持久化和可靠性功能并不完全保证内存数据的不丢失。所以面试官根据此处提问,如何保证100%的可靠性。

                针对redis掉电crash,应用服务器掉电crash等情况提出了问题,如何保证操作不丢失。

                应用服务器的crash是通过redis里面的操作队列(List)中的数据时使用RPOPLPUSH这个命令将数据放在另外的队列里。

                如果应用服务器成功持久化,再删除这个队列的内容,否则再把此队列的内容回复到操作队列中。

                redis的crash是不可避免丢内存的东西的,因为我们的主redis是无法设置为aof模式的,太慢。

                所以,有个改进方案和替代方案。

                改进方案是:redis两个备机,一个延迟写入,保证备份的实时性,一个aof模式,保证备份的可靠性。

                替代方案是:使用kafka这样的带持久化和数据多份拷贝的消息中间件来存储操作队列。这样mysql加消息中间件中的所有数据就是整个的操作全集。可靠性问题能够保障。当然,如果机房在同一地理位置,还会有灾难性问题。可以多地机房解决。

                后面,后面就没有了。。。

            面试结果:

                未通过

            总结:

                1.互联网公司的鄙视链真心严重。开发人员跟我吹嘘他们的彩票系统保持了实时性和可靠性,我问他怎么做的,用了哪些中间件,什么架构。他支支吾吾。。。奶奶个腿啊!!!!

                2.网易的笔试题是我见到的最全面的笔试题,涉猎范围很广。而且考基础的时候靠的比较精细。linux的实用命令也出的很好。

                3.网易这种公司可能对实时性和可靠性要求都很高。所以可能需要多多针对分布式、实时性、可靠性准备。

                4.基础一定要打牢,因为细节最能看出一个人的能力。大牛也是非常注重细节的一帮人呢啊。

                5.互联网的大公司的大公司病可能已经有一些了。对于有能力的人的筛选上,其实先入为主很不好(当然,不是说我的能力匹配的上网易)

    

    折800:

        公司背景:

            团购系的门户,半死不活的状态吧。

        职位描述:

            后台Java高级开发工程师

        面试过程:

            笔试:

                笔试卷子非常简单,甚至卷子题目就是校园招聘开发工程师笔试,当然被涂黑了,我是看阴影看出来的。

                而且跟考在校生差不多,填空题都是些理论概念题。比如:线程有多少种状态

            一面:

                无。让我在会议室内等了1个半小时,然后说面试官开会,今天不能来。

                我只能呵呵。

            面试结果:

                就算通过了我也不去!

            总结:

                1.没什么可总结的。这样看,这样的公司半死不拉活也就有原因了。

    雪球:

        公司背景:

            移动股票类垂直社交性APP。公司貌似背景深厚,你们懂的。

        职位描述:

            高级开发工程师,后端架构方向

        面试过程:

            笔试:

                无

            一面:

                貌似是一个高开的人员,

                开场貌似统一是自我介绍,

                简单的问了Redis的持久化方式的配置。

                然后针对之前的工作问一系列的问题,IM服务器是什么情况,如何保持长连接。

                各系统之间的调用使用什么方式。

                整体的产品架构,各个服务器都是扮演什么角色。

                对红包平台比较感兴趣,让我详细的讲解了产品的架构和实现。

            二面:

                技术总监,上面直接跟CEO汇报,很扁平,不错。

                再次自我介绍。

                介绍雪球的情况,雪球如何运作,理念。

                不好意思,我都没记住。

                然后是问公司平台的架构。

                我简单画了一下,他的评价是是个简单而且小规模的平台。

                当然,这点见仁见智了。。我也没说啥。

                然后提出聊聊红包的设计。

                一面怎么说,二面就怎么说吧。

                但是有个非常明显的问题,在我说的过程中,很多架构和算法我都要跟他解释2-3遍。

                感觉他没跟着我的思路走下去。当然,也可能我讲的不好,不过一面是能跟上的。。。这点很诡异。

                然后是挑刺时间,如何保证一致性,可靠性。并发是不是还能再高点。

                给出了分布式Queue中间件的解决方案。表示还算满意。

                最后谈钱,直接谈崩。

        面试结果:

            没有结果。

        总结:

            1.一个互联网公司是要有一定的范儿的,雪球做的最好。办公环境很fasion。前台有投影实时的大盘变化。让人觉得很舒服,像是一个科技公司哦。

            2.对于自己做的事情一定要清晰,而且了解细节。面试官很容易问到细节。

            3.要有自信,强大的自信。对于自己做的事情不要持怀疑态度。坚定的信任。

            4.要善于调节面试节奏。比如薪资这种敏感问题,需要慢慢的从侧面了解对方的底线。不要过于直接。因为相互的预期一定是不匹配的。


    好吧,其实没什么干货。诸位看官凑合着看看。

    本系列之前的文章链接:

        1.我的面试经历--缘起


转:https://my.oschina.net/moishalo/blog/411098



推荐阅读
  • RocketMQ在秒杀时的应用
    目录一、RocketMQ是什么二、broker和nameserver2.1Broker2.2NameServer三、MQ在秒杀场景下的应用3.1利用MQ进行异步操作3. ... [详细]
  • 在当今的软件开发领域,分布式技术已成为程序员不可或缺的核心技能之一,尤其在面试中更是考察的重点。无论是小微企业还是大型企业,掌握分布式技术对于提升工作效率和解决实际问题都至关重要。本周的Java架构师实战训练营中,我们深入探讨了Kafka这一高效的分布式消息系统,它不仅支持发布订阅模式,还能在高并发场景下保持高性能和高可靠性。通过实际案例和代码演练,学员们对Kafka的应用有了更加深刻的理解。 ... [详细]
  • 2021年Java开发实战:当前时间戳转换方法详解与实用网址推荐
    在当前的就业市场中,金九银十过后,金三银四也即将到来。本文将分享一些实用的面试技巧和题目,特别是针对正在寻找新工作机会的Java开发者。作者在准备字节跳动的面试过程中积累了丰富的经验,并成功获得了Offer。文中详细介绍了如何将当前时间戳进行转换的方法,并推荐了一些实用的在线资源,帮助读者更好地应对技术面试。 ... [详细]
  • 本文详细介绍如何在忘记MySQL服务器密码的情况下进行密码重置,包括具体的步骤和注意事项。 ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • Java高并发与多线程(二):线程的实现方式详解
    本文将深入探讨Java中线程的三种主要实现方式,包括继承Thread类、实现Runnable接口和实现Callable接口,并分析它们之间的异同及其应用场景。 ... [详细]
  • 性能测试中的关键监控指标与深入分析
    在软件性能测试中,关键监控指标的选取至关重要。主要目的包括:1. 评估系统的当前性能,确保其符合预期的性能标准;2. 发现软件性能瓶颈,定位潜在问题;3. 优化系统性能,提高用户体验。通过综合分析这些指标,可以全面了解系统的运行状态,为后续的性能改进提供科学依据。 ... [详细]
  • B站服务器故障影响豆瓣评分?别担心,阿里巴巴架构师分享预防策略与技术方案
    13日晚上,在视频观看高峰时段,B站出现了服务器故障,引发网友在各大平台上的广泛吐槽。这一事件导致了连锁反应,大量用户纷纷涌入A站、豆瓣和晋江等平台,给这些网站带来了突如其来的流量压力。为了防止类似问题的发生,阿里巴巴架构师分享了一系列预防策略和技术方案,包括负载均衡、弹性伸缩和容灾备份等措施,以确保系统的稳定性和可靠性。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 在本地环境中部署了两个不同版本的 Flink 集群,分别为 1.9.1 和 1.9.2。近期在尝试启动 1.9.1 版本的 Flink 任务时,遇到了 TaskExecutor 启动失败的问题。尽管 TaskManager 日志显示正常,但任务仍无法成功启动。经过详细分析,发现该问题是由 Kafka 版本不兼容引起的。通过调整 Kafka 客户端配置并升级相关依赖,最终成功解决了这一故障。 ... [详细]
  • 在 CentOS 6.5 系统上部署 VNC 服务器的详细步骤与配置指南
    在 CentOS 6.5 系统上部署 VNC 服务器时,首先需要确认 VNC 服务是否已安装。通常情况下,VNC 服务默认未安装。可以通过运行特定的查询命令来检查其安装状态。如果查询结果为空,则表明 VNC 服务尚未安装,需进行手动安装。此外,建议在安装前确保系统的软件包管理器已更新至最新版本,以避免兼容性问题。 ... [详细]
  • 尽管我们尽最大努力,任何软件开发过程中都难免会出现缺陷。为了更有效地提升对支持部门的协助与支撑,本文探讨了多种策略和最佳实践,旨在通过改进沟通、增强培训和支持流程来减少这些缺陷的影响,并提高整体服务质量和客户满意度。 ... [详细]
author-avatar
专业长膘
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有