【美团算法工程师一面面经】拔凉拔凉的凉经

又一场重挫,应该是秋招以来面过的最难的一场了。我是数学加统计的背景,主要的强项都集中在统计机器学习上,今天问的一连串问题把我问懵了,预计有95%的概率要凉。

自我介绍完,屏幕上直接给了两道算法题,一个是给二叉搜索树插入节点,然后逐个返回父节点的值;另一个是普通的二叉搜索,都算比较常规的题,很快就做出来了。

接下来开始了我直出冷汗的场景:

  1. SQL 熟悉吗?讲一下 SQL 引擎

    只了解比较简单的查询操作,不了解 SQL 引擎

  2. 那了解 Redis 吗?

    不了解,仅限于听说过…

  3. 那你熟悉网络吗?

    是神经网络还是计算机网络?

    计算机网络

    不了解(本科后悔没选这门课)

  4. 你熟悉操作系统吗?

    不熟悉…只了解一点儿多线程和多进程

    那你讲一下多线程和多进程吧

    (老生常谈的问题了)这个倒是回答出来了

    线程之间怎么通信,进程之间怎么通信,python 的多线程有用吗?

    互斥锁(我不确定回答的对不对);队列和管道;python 有 GIL,不过有用吧(好像应该还是没用)

  5. 你写一个单例模式吧

    (内心OS:啥叫单列模式?)

    (面试官估计看出来我不知道了)你知道设计模式吗?

    不知道

  6. 你知道 python 的垃圾回收机制吗?

    (这个我可算知道了)采用引用计数器的方法,当引用计数器为0时,内存会进行回收。

  7. 创建对象时 new 和 init 有什么区别?

    (我压根都不知道还有 new 方法)不知道

    这里附上一段博客里摘来的解释:

    Python 中的newinit的区别

    • new是在实例创建之前被调用的,因为它的任务就是创建实例然后返回该实例对象,是个静态方法。

    • init是当实例对象创建完成后被调用的,然后设置对象属性的一些初始值,通常用在初始化一个类实例的时候。是一个实例方法。

  8. python 的单下划线和双下划线有什么区别?

    这点我凭印象瞎扯了几点,还是再引用一段好了

    python中前置单下划线、后置单下划线、前置双下划线、前后置双下划线

    1. 前置单下划线"_name":变量前的单下划线表示表面上私有。前置下划线的变量和方法代表这个变量和方法最好是只在内部使用。

    2. 后置单下划线"class_":没有特殊的含义,只是为和python关键字区分

    3. 前置双下划线"__name":真正的私有。可以使该属性变量或方法私有,不会被派生类区继承,仅能类自己使用。可以避免派生类和父类属性方法名称的冲突。

    4. 前后置双下划线"__init__": 这样的方***在类或对象的某些事件触发后执行,例如对象的实例化会执行init()方法,属性初始化。

问到这里的时候心态已经崩了,几乎所有问题都是不会三连:【不知道】【不懂】【不太了解】…

接下来开始场景题,很符合具体业务,场景题大意上是统计学上的变点选择问题。面试官和我聊方法,聊优化,聊特征,聊模型,我终于在这一阶段掌握了话语权。

然而面试到这里就结束了,除了在场景题,整场都没问机器学习的问题,倒是问了一堆计算机基础的问题(可岗位明明是【机器学习/数据挖掘算法工程师】啊)。不过也确实是自己计算机基础薄弱,只能说和美团无缘吧。



2020.8.31 更新: 居然收到了二面邮件,惊了!这也能过吗??啥套路啊这是
#面经##校招##美团##算法工程师#
全部评论
机器学习知识已经泛滥了,大家扪心自问,李航那本书真的门槛高吗,cv和nlp真的门槛高吗?看着师弟师妹一个个继续前仆后继搞炼丹,可以预料到未来继续严重饱和,部分上岸的机器学习工程师这些也要面临转岗。回想17年刚了解机器学习到现在2020这个节点,开发工具越来越高效易学,机器学习这一套也逐渐走向自动化,需要的人员也会继续减少。总之,在我的观察下,炼丹三年,同学们的工程能力大都有不同程度的退化,路反而走窄了。(个人观点,不喜勿喷,我也是三年老炼丹师了)
7 回复 分享
发布于 2020-08-26 08:40
做业务的时候才明白,和不懂计算机的算法工程师交流是有多困难。技术总归是要落地的,没有计算机基础,怎么进“互联网”这一行对吧?网络,操作系统这两个最基本的不能丢吧,而且学起来也不用花很久。
5 回复 分享
发布于 2020-08-26 22:47
这面试官走错片场了吧😂
3 回复 分享
发布于 2020-08-25 21:05
这真的是机器学习的面试吗。。。
3 回复 分享
发布于 2020-08-25 21:06
依稀记得今年字节飞书算法岗一面要求问计算机基础知识,所以就算是算法岗这些基本的计算机知识还是不能丢啊
2 回复 分享
发布于 2020-08-25 21:15
那你熟悉网络吗? 是神经网络还是计算机网络? 计算机网络... 这都可以的吗 🤣,大概率是个搞开发的
1 回复 分享
发布于 2020-08-25 22:50
纯数学加统计,走不远。除非是博士巨神。不然类似算法场景还是天天和计算机打交道,如果计算机背景的常识都没有,活没法干的。很多推荐算法业务还要求c++开发。
1 回复 分享
发布于 2020-08-26 13:02
lz你base哪里啊?
点赞 回复 分享
发布于 2020-08-25 21:02
这太难了吧……
点赞 回复 分享
发布于 2020-08-25 21:09
不按套路出牌确实烦
点赞 回复 分享
发布于 2020-08-25 21:18
可能是开发面的你
点赞 回复 分享
发布于 2020-08-25 21:24
这情况是不是简历上没写实习或者项目呀?
点赞 回复 分享
发布于 2020-08-25 21:25
mark!感谢楼主整理分享
点赞 回复 分享
发布于 2020-08-25 23:52
哈哈哈,跟我昨天的京东面试官一样,我给人直说这是python开发问题吧
点赞 回复 分享
发布于 2020-08-26 00:09
蹲一个结果😂😂
点赞 回复 分享
发布于 2020-08-26 00:27
我和你一样,一面全程开发题,不过让我过了,第二面开始算法的问题,然后挂了(data nlp)
点赞 回复 分享
发布于 2020-08-26 01:09
太卷了
点赞 回复 分享
发布于 2020-08-26 01:12
楼主搂着你已经很棒了 我刚投了这个岗没有任何消息 and 你回答出来的问题我也不会
点赞 回复 分享
发布于 2020-08-26 01:39
京东也是这样的
点赞 回复 分享
发布于 2020-08-26 07:22
感觉美团比较重视开发能力,就喜欢这种问题😂 不过没事,我一面也是回答的不是很好还让我过了,只不过好像一面面好了会跳过二面,都有就1.2.3面
点赞 回复 分享
发布于 2020-08-26 07:26

相关推荐

13 79 评论
分享
牛客网
牛客企业服务