[其他] 2022 年校招,最值得加入的互联网公司有哪些?

[复制链接]
ses 发表于 2023-10-12 09:20:46|来自:北京 | 显示全部楼层 |阅读模式
2022 年校招,最值得加入的互联网公司有哪些?
全部回复5 显示全部楼层
lbeminy 发表于 2023-10-12 09:21:03|来自:北京 | 显示全部楼层
小红书挺不错的,很值得加入,至少是现阶段很值得。我面了很多公司,大offer有不少,考虑再三之后选了小红书。除了薪资之外,我加入小红书是出于这几方面的考虑:

  • 男同胞们或许不了解小红书,以为这就是个小众的APP。实际上小红书有稳定的业务,有很深的护城河,有上亿用户,有海量内容。小红书用户大多数受过教育的城市人,未来的人均变现能力肯定远高于某「老铁」APP。所以我很乐意拿一小半现金、一大半期权。
  • 我进的是小红书的搜索推荐算法部门,这是小红书最核心的业务,小红书的流量都在这里。「基于真实业务需求做技术」,远比「拿着技术找应用」要靠谱;前者是甲方,后者是乙方,谁处在强势地位是显然的。互联网从业者都知道我在说什么。只有学生naive不懂这个道理,挤进一些看似高大上、实则没有业务的企业或部门去当高级外包工人,无穷无尽的卷。
  • 小红书这类Pre-IPO的公司的技术完成了0到1,正处在1到100的过程中。对机器学习专家来说,有几个好处。(1)公司有基础软硬件架构,虽然不够好,但是够用,不会被基础设施卡脖子。(2)算法、策略的基本流程是对的,但是具体的每一环都比较弱,有肉眼可见的提升空间,KPI还算好拿。(3)目前还有很多”干净“的技术手段提升效果,还没到抠细节、堆规则的”脏活“阶段,这有利于算法专家的身心愉悦。

我远程part time工作了一段时间,基本符合我的预期。我还听说小红书美女特别多。有同事去了说后悔结婚那么早。。。。单身男同学不要错过机会!
现在遇到个麻烦,公司的招聘不太给力,找不到多少靠谱的候选人。。。manager自己得下场做猎头+HR的活。。。要是你或者你的朋友们打算找工作、跳槽、实习,欢迎直接联系我。我这边headcount非常多。
<hr/>【招聘广告】

  • 小红书搜索、推荐部门长期招聘全职员工(校招、社招)和实习生。
  • 要求:深度学习以及相关方向(比如CV、NLP)。熟悉TensorFlow或PyTorch等工具。模型和编程能力都强,做事靠谱。
  • 工作内容:设计和实现模型和策略,做离线和AB测试,目标是提升推荐或搜索的业务指标。
  • 可以选择上海或北京Office。薪资有竞争力。
  • 知乎私信、或者邮件联系我本人,我的邮箱是 shusenwang@xiaohongshu.com
疯狂de少年 发表于 2023-10-12 09:21:50|来自:北京 | 显示全部楼层
二话不说先上图
联盟前一段时间认真总结了北上广深杭州南京武汉7个城市的一些知名互联网公司


深圳~腾讯(已更新)
可能不是那么全面,欢迎留言补充
以前总结的大厂面试经验


  • 1. 华为、大疆、今日头条、阿里、百度、阿里、腾讯、京东、小米整体概述
  • 2. 本硕985非科班渣硕2020腾讯计算机视觉算法实习面经
  • 3. 百度计算机视觉暑期实习面经
  • 4. 京东计算机视觉实习面试
  • 5. oppo提前批 c++岗位面经
  • 6. 美的提前批Python数据挖掘工程师
  • 7.陌陌科技图像算法实习生
  • 8.百度前端三面面经
  • 9. 寒武纪:深度学习工程师
  • 10. 作业帮二面2019.7.24
  • 11. 百度
  • 12. 腾讯
  • 13. 拼多多2019.8.13
  • 14. 蘑菇街2019.8.14
  • 15. 网易互娱 游戏研发
  • 16. 360 搜索(Ranking)-机器学习工程师
  • 17. 网易互联网:深度学习工程师
1. 华为、大疆、今日头条、阿里、百度、阿里、腾讯、京东、小米整体概述

华为:


  • 华为比较随意的也相对较容易的大厂
  • 一共有两轮面试,两轮一般是一起面试,通过一轮接着去其他屋子面试第二轮,两轮基本类似。
  • 一般一场面试有上千人面试,虽然相对容易,但竞争还是较大的,还需要好好准备
大疆:


  • 大疆相对来说是大家都比较梦想的公司,当然竞争是相当大的
  • 一共有四轮面试:一轮:性格测试;二轮:笔试,题目涉及比较专业,算法类的话考得数学较多和编程细节和实现能力,;三轮:电话面试;四轮:电话或现场面试
  • 第一轮面试比价简单,刷的人很少,二轮以后会进阶式的难度增加,当然刷人也很多,通常第二轮后就能刷一半的人。所以想进大疆,是需要充分准备的。
今日头条:


  • 三轮技术面试,远程是视频面试,每轮不到1小时
  • 每一轮都会问编程和算法项目
  • 看中实际编程能力
阿里巴巴:


  • 4轮技术+1轮HR面
  • 考察项目和编程能力
  • 第四轮有可能让你在线共享屏幕编程
百度:


  • 重点关注编程的基础细节,广度
  • 编程复现能力和工程实现能
腾讯:


  • 如果有实习,实习末的考核通过即给你offer(小编好友就是这样的)
  • 没有实习就是3轮技术面,对细节很注重,有可能让你现场分析算法题目
京东:


  • 手推公式,看重数学能力
  • 小编好友面试京东,就是因为手推公式,被pass掉了
  • 所以,经典的算法还是要会推导的,为了应付也得会
小米:


  • 现场问项目经历和算法能力
  • 今年去武汉的,给的薪资待遇和北京一样,待遇可以算是很丰厚了
2. 本硕985非科班渣硕2020腾讯计算机视觉算法实习面经

本硕985(学校排名较低),我自己成绩一般,非计算机出身,做过相关CV项目,有点心虚,但大佬带过几次比赛。
面试岗位

腾讯计算机视觉算法岗位
面试内容整体回忆,也不分第几场面试了
不管第几场面试,都是先自报家门,1分钟表述自己的优点,有时候还会稍微提一下你对缺点的看法
必问问题:

是否有参与相关实习,做了哪些项目,打了几次比赛,分别扮演什么岗位? 着重会针对自己熟悉的一场,详细讲其中算法的原理,以及比赛成绩的分析,如果下次再打比赛,该怎么提高名次。打比赛的收获是什么?认为工业和科研有什么区别?
编程问题:


  • (我写了C++和Python)
  • C++的问题,我只记得这些,我也不是全会....
  • vector、list、map有什么区别
  • 引用和指针
  • 多态问题,继承,构造析构
  • C++ 11举例子几个新的特性,以及你用过的
  • auto你觉得方便吗
  • 虚函数
  • 内存分配(堆和栈的区别讲解)
  • Python问题lambda函数讲一下、类型转换如何操作
CV算法以及机器学习相关问题


  • YOLO V2 V3你对哪个熟悉,讲一下细节实现
  • 多尺度问题
  • anchor基础知识
  • 人脸识别现在常用算法
  • 语义分割到实例分割怎么做
  • GAN是否了解,如何通俗的讲其原理
  • PCA原理LDA原理
  • SVM+HOG
  • XGBoost
  • CNN、RCNN、FRCNN,有可能问你其中一个细节的关键
  • TensorFlow这些框架你谈一下看法以及对其他框架的了解
  • 现在机器学习、深度学习这么火,你有什么看法
  • 机器学习、深度学习你对他们的理解是什么
  • 做门牌或者车牌识别的步骤以及关键
  • Relu比Sigmoid使用多的原因
  • Loss不升反降的原因,如何解决
  • SSD细节
  • Linux 权限的意义
  • 块操作的操作的步骤以及快捷方式
  • rm -rf *这句话是什么意思
3. 百度计算机视觉暑期实习面经

背景:

普通985硕,没走内推 已经拿到百度CV暑期实习offer
总体评价:

难度不大,面试官都很nice,一共三轮面试,基于简历的项目,然后开始拓展
一面:(35min左右)


  • 1.首先介绍自己
  • 2.简历上的项目自己负责哪一块,实现了哪部分算法,贡献程度有多少
  • 3.目标检测如何实现,如何优化?是否了解目标识别的历史
  • 4.机器学习和深度学习有什么区别?你的看法是什么?
  • 5.相机标定的内参数外参数有哪些?
  • 6.请讲一下SVM原理
  • 7.如何看待加班问题?对百度文化是否了解?
  • 8.平时如何学习,看哪些书视频
  • 9.说一下NMS和soft-NMS
  • 10.问了一道 leetcode原题,忘了o(╥﹏╥)o
  • 11.C++11的特性是否了解,使用auto方便在哪,请举一个例子
  • 12.类的继承,堆栈区别以及适用场景
总结:小哥哥建议注重一些底层算法的研究,数据结构、决策树还有普通的图像处理算法的实现方法
二面:(40min)


  • 1.详细聊项目,小哥哥应该比较懂做的项目,问了参数设置,思路和技巧,其中遇到的最大困难,如何解决
  • 2.SVM和KNN的原理
  • 3.最近了解的最新论文是什么,用了什么框架算法,达到了哪种效果?
总结:二面基本全部都是问项目,其他问题都是捎带 更多关注你项目中解决问题和分析错误的思路
三面:(30min)


  • 1.自我介绍,你的优点在哪里
  • 2.损失函数讲一下
  • 3.人脸识别有哪些算法,你对哪个最熟悉,谈一下怎么实现
  • 4.现在除了百度还有哪些offer,你更倾向于哪一家?
  • 5.什么时候可以实习,哪个方向愿意做?
  • 6.你有没有什么想问的
总结:面试官都比较专业,没有架子,千万不要不懂装懂,不会就说不会。
4. 京东计算机视觉实习面试

一面


  • 手推SVM:空间上一点到超平面距离,SVM整体代价函数,如果进行对偶形。
  • LR损失函数,如何优化
  • Inception网络多层卷积之后是concat还是逐像素相加
  • Xception网络含义
  • ResNet、DenseNet含义,处理方式,有什么好处,具体concat还是逐像素相加
  • 神经网络分类的softmax数学公式,如何计算
  • 交叉熵损失函数定义,举例计算过程
  • 自己设计过那些网络
  • 小型网络有哪些
  • 神经网络如何加速
二面


  • 聊论文聊项目
  • 车道线检测如何实现,边缘检测
  • 行为识别网络基本流程
  • 二分类效果是否好于多分类
  • 二分类如何执行
  • 难例如何进行区分
  • 过拟合是什么,如何解决,应对措施
  • 从模型结构上如何解决过拟合
  • L1 L2有什么区别,适用于什么场景
  • 为什么不用L0
  • L1为什么不用于卷积神经网络
  • 梯度弥撒如何产生的,如何解决
5. oppo提前批 c++岗位面经

作者:转发这个超越妹妹
一面15分钟:


  • 堆和栈的区别
  • 指针和引用的区别
  • c 深拷贝浅拷贝
  • 什么是内存泄露,怎么检查?
  • 冒泡排序的时间复杂度是多少
  • 项目再问了些。 ##二面23分钟:
  • 介绍项目,项目背景和担任角色,遇到最大困难怎么解决,有什么收获blabla
  • 说下快排的步骤
  • 完全二叉树n层有多少节点
  • 对着简历内容逐个问,实习期间主要干什么的,什么收获? 担任研会部长遇到什么困难没?担任班干部有什么收获?还问了其他一些简历的东西,* 反正问的很细
  • 最喜欢哪门课?为什么?
  • 学习能力怎么样?
三面25分钟:


  • 三面:聊人生。但是我感觉有一个坑是,他问期望薪资是多少? 后来发现这个我说的太少了,哎,哭晕。。。。
6. 美的提前批Python数据挖掘工程师

作者:水一水
面试问的问题:

1.自我介绍 答:一波常规操作,基本信息+技术能力+软实力。
2.讲下你参加的比赛或者项目? 答:楼主讲了个比赛。
3.图像方面的模型一般用啥? 答:楼主说自己做的主要是用深度神经网络,讲了个项目。
4.深度学习或者机器学习方面了解哪些模型? 答:楼主深度学习扯了下项目里的resnet,机器学习就说比赛一般用lgb、xgb居多,有的还用LR,之前一个比赛里还用过lsmt、rnn之类的,这种对这种自然语言效果好点。
5.用过哪些数据库? 答:使用的不多,用过aws的rds数据库,不过sql语句都学过。
6.现在有一个表,让你实现插入、更新,怎么用sql实现? 答:insert和update。
7.你刚才说的是两条语句,如何用一条语句实现? 答:呆滞了一会,实在没想起来。面试官就说可能你平时用的不多,我说是的,平时数据库都不大,对于语句次数要求不是很严格。
8.你主要使用什么语言?python吗? 答:嗯,最近用python比较多,但刚入学的项目其实是用c++做的。
9.python你平时主要用过哪些包? 答:sklern、numpy、pandas、画图的matplotlib,一阵呆滞,想不起来其他的了。
10.pandas的索引是干啥的? 答:调数据出来,和数据库的主键有点类似(这个好像没答好,不知道面试官发现没。。。)
11.你有什么问题问我? 答:这个岗位是工程能力要求高?还是算法能力要求高?面试官说你不一定跟我,我只是被集团安排面试的,楼主感觉有点小尴尬。然后面试官说算法这里反正都是需要落地的。 然后楼主又问了一个,就是投岗位的时候,发现有两个部门,一个集团it部,和一个美云智数,在这两个部门做这个岗位,区别大吗。面试官一阵回答。。。
7.陌陌科技图像算法实习生

作者: EternityY
一面


  • 论文的网络结构图
  • 光流算法如何实现 密集光流如何查找邻接点
  • 行为识别网络,稀疏采样
  • Dropout原理
  • Kmean原理
  • 决策树原理
  • BN原理,为什么用BN
  • Xception网络能减少多少个参数,为什么他能够达到高精度
  • 仿射变换矩阵,透视变换矩阵,双线性二插值
  • 案例:如何提取出高质量的动作,精彩的画面反馈的用户
二面


  • TF多卡训练,一个模型在一张卡上面放不下,怎么在多卡中运行
  • TF中卷积是如何计算的
  • TF中转置卷积如何进行
  • 膨胀卷积感受野如何计算
  • 算法题,在字符串中的字串是否都出自于字典中
  • K个链表归并
三面


  • 交叉熵公式,为什么交叉熵可以用在分类中
  • Softmax函数
  • Deeplab进化历史
  • Deeplabv2和DeeplabV3有什么区别
  • V3提出那些新理论
  • 尺度变换剧烈如何解决
  • 语义分割一帧图片处理速度
  • Xception处理速度
  • ResNet处理速度
  • 卷积神经网络哪里最耗时
  • 有没有实际算法落地的经历(重点凉的地方,楼主只发过论文,实验室没有和公司合作项目)
8.百度前端三面面经

作者:小安快跑!!
一面 2019/7/29

(1)微信小程序与Vue的区别(因为有做微信小程序的项目)
(2)Vue组件间通信 vuex原理
(3)常用的ES6新增特性
(4)map和set结构
(5)异步请求Promise与Async await
(6)画一个三角形 均分原理
(7)画一个扇形
(8)动画的实现animation与requestAnimationFrame
(9)预请求 Options fetch请求有了解吗? 跨域
(10)web安全
(11)物理像素、逻辑像素 比如1px在屏幕上是多大
(12)box-sizing属性
(13)TCP与UDP的区别
(14)了解二叉树的遍历吗?先序遍历怎么遍历的。。。
2019/8/2 二面

(1)对项目的介绍 巴拉巴拉问了很多 遇到的困难(解决方法用的setTimeout,所以延伸出了后面的Promise和Async/await)
(2)ES6的一些特性 ES6数组方法的一个区别
(3)Set结构 它的key值是什么样子的(不清楚)
(4)数组去重除了Set还有什么方法?
(5)异步操作有哪些? Promise和Async/await
(6)使用Promise对Ajax请求进行封装 就是调用这个方法可以通过.then()来获取请求的数据
(7)发送请求有哪些方法?如Ajax
(8)跨域 :为什么会有跨域?同源策略是什么?跨域怎么解决 父域和子域之间可以共享资源吗
(9)做过移动端项目吗?(做过但是早忘了)移动端是怎么适配的
(10)移动端swiper和animation(给自己挖了坑,本来想随便说一下,结果人家主要就是做移动端的) 不用swiper插件怎么实现上滑显示下一页的效果?移动端有哪些事件?
(11)怎么获取页面url参数
(12)事件委托机制
二面其实主要还是根据简历你做了什么以及在你的回答中涉及的到的知识点来问的。
2019/8/6 三面

(1)介绍一个项目,从项目背景,实现原因,实现效果以及所遇到的问题来说。说了好久,感觉自己都词穷了也解释不清,所以换了个话题。
(2)什么时候开始学前端的,以及为什么会一直坚持前端方向。
(3)在华为实习还干了一些其他什么事情?
(4)在华为实习学到了什么?对自身能力方面有哪些提升?
(5)为什么学习前端以及对前端的一个认识和理解。
(6)从学校到公司实习有一个什么样的转变?
(7)现在在学习有学习哪些新的东西?(没有,在看基础知识)然后让我举例说了哪些知识以及应用场景。
(8)为什么会有前端三大框架?它们解决了什么问题?
(9)遇到过哪些压力以及怎么释放的
(10)遇到哪些困难是怎么解决的??(向同事请教)怎么交流请教的
(11)觉得自己有哪些短板?我说的缺乏实战经验(貌似不太好)
(12)现在在打基础的同时学习到了什么新的内容? ES6语法、web安全。。。然后把web安全详细说了一下。又问:XSS攻击很难发现,我们怎么去发现这个问题。。
(13)未来的职业规划
(14)接触过哪些后台语言?
(15)之前有面过其他一些公司吗?
(16)现在有拿其他offer吗?
(17)平时是怎么学习前端知识的
(18)有时间实习吗?没时间,要写毕设
最后我的问题:

(1)您觉得前端未来发展前景是怎样的?
(2)对部门以及业务、技术栈问了一下。
9-17 作者:13亿中的一挫

链接:https://www.nowcoder.com/discuss/231656
9. 寒武纪:深度学习工程师

2019.7.16一面:电话面 全程打断buff
1、自我介绍
2、Python和C++的区别(答了很多python的特性)
3、Python为什么会慢?
答:因为不知道数据类型,取数据要判断一下
(1、python是一个动态的解释型语言;python中的值不是存储在缓存区而是分散的存储在对象中
2、Python是一门解释器语言,和C++,java不同,C++,java都是编译语言,也就是说写完Java程序首先要编译源程序,生成可执行文件一个class文件,而Python写完程序,提交到解释器,解释器会立刻将第一行代码翻译成机器码,然后将这行代码交给CPU去执行,然后进行下一行,翻译第二行代码,再交给CPU执行,所以,Python要比那些编译型语言执行起来要慢)
3、看过那些书(答:python高性能编程)
4、什么是内存泄露?什么时候会内存泄露?
没有删掉。
(动态申请的内存空间没有被正常释放,但也不能继续被使用的情况。没有释放内存)
5、关闭程序的术语?
不知道!
(可能是关闭进程,不确定)
6、指针和引用?什么时候用指针什么时候引用?
(指针可以不初始化,引用必须初始化,且绑定后不能再变;向函数中传递指针和传递指针的引用的区别:
传递指针,会先复制该指针,在函数内部使用的是复制后的指针,这个指针与原来的指针指向相同的地址,如果在函数内部将复制后的指针指向了另外的新的对象,那么不会影响原有的指针;
对于传递指针引用,如果将传递进来的指针指向了新的对象,那么原始的指针也就指向了新的对象,这样就会造成内存泄漏,因为原来指针指向的地方已经不能再引用了,即使没有将传递进来的指针指向新的对象,而是在函数结束的时候释放了指针,那么在函数外部就不能再使用原有的指针了,因为原来的内存已经被释放了)
7、知道那些数据结构?
答:堆 数组 列表 栈
8、什么是堆?
答:平时只用数组模拟堆,不知道真实的结构,认为是父节点-子节点这样状态的数据结构(超高频问题,一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS(操作系统)回收。分配方式类似于链表。向上增长,栈的分割开辟在程序运行时进行,内核顺着链表找到一块足够大的空间交给程序,如果没找到就析构调无用内存再找一次,更具体的请自行总结一下并时常复习,区别包括申请方式、系统响应等很多)
9、堆和栈的区别
栈就是存东西的空间,往最里面存,出来是最外面出来(超高频问题,函数运行时分配,函数结束时释放。由编译器自动分配释放 ,存放为运行函数而分配的局部变量、函数参数、返回数据、返回地址等。向下开辟,速度很快,局部性能好的话会和寄存器交互,存PC指针,函数参数多也会组成栈帧存到栈里面)
10、进程和线程
(超高频问题,我看了深入理解计算机系统后的总结:1、进程就是活着的程序,程序不过是一些文本,运行着的程序就是进程,是系统进行资源调度和分配的基本单位,掌握资源,包括内存等,线程就是轻量级进程,是CPU调度和分派基本单位。2、由于进程占有资源,压栈和出栈慢,所以切换不灵活,线程不占资源,只占必要的资源(递归要压栈所以有一点资源),所以线程容易通信->在进程分来的内存中直接通信,容易并发->切换灵活,同一进程的线程切换速度很快,因此线程开销小3、地址空间,进程独立,同一进程的线程共享资源,对其他进程的线程独立)
事后总结: 显然挂了,特别开心,让我明白一个问题,搞算法的也要会一些后端的东西。 算法领域内工程师是要求变成能力的。
10. 作业帮二面2019.7.24

作业帮
一面90分钟
先做两道题:
1、从数组找三个数,三和与value差最小
要求时间O(n2)空间O(1)
我的写法是排序+双指针,leecode上的原题,没怎么刷过leecode,还好解法一致。
要求排序用快排
2、字符串A 、B,B占A最短的子序列(A中最短的子序列包含B)
面试官和我都笑了,因为python切片+in操作符四行结束,面试官也笑了,于是我们约定in这一步自己写函数。
暴力解决一切花里胡哨
1、介绍Kaggle比赛(从EDA开始到最后)
2、ID3\C4.5等基本树 是二叉树还是多叉树 被切过的特征还会再切吗
离散特征(离散数量>2)是多叉分类,连续是二叉分裂,连续可以在切,离散不可以(当时回答的是可以再切,被提示后意识到不可再切,说了自己的matlab实现,先做集合,遍历特征,保存最大的信息增益位置,然后对特征切分,切分后把这个特征从集合中删掉,所以离散特征切完就不在切了,还好反应过来了,连续性特征可以再切,详情可以去看看别人的ID3树和其他树的源代码)
3、介绍BN
(超高频题目,可以介绍的很多,机器学习本质是学习分布,特别是logloss损失,等效优化交叉熵,而交叉熵用于衡量分布的一致性。 1、预白化,训练快,sigmoid两端饱和梯度小,BN可以缩放到线性区2、分布学习,NN深了之后每一层分布都会偏移,BN压缩分布使得各层分布趋近于一致3、BN可以看做一定程度的数据扩充,数据做了抖动处理。注意BN的训练过程要记得,当前批次归一化,预测的时候是全部数据,而且BN层有两个超参数要优化) 4、GBDT和RF哪个树比较深
RF深。说了boost和bagging的思想。boost使用低方差学习器去拟合偏差,所以XBG和LGB有树深的参数设置,RF是拟合方差,对样本切对特征切,构造多样性样本集合,每棵树甚至不剪枝。
5、XGB特征重要性程度是怎么判断的?
答:不清楚,但是用的很多,猜测是按分裂点的次数(在所有树的出现次数),只说了这一点
(gain 增益意味着相应的特征对通过对模型中的每个树采取每个特征的贡献而计算出的模型的相对贡献。与其他特征相比,此度量值的较高值意味着它对于生成预测更为重要。
cover 覆盖度量指的是与此功能相关的观测的相对数量。例如,如果您有100个观察值,4个特征和3棵树,并且假设特征1分别用于决定树1,树2和树3中10个,5个和2个观察值的叶节点;那么该度量将计算此功能的覆盖范围为10 5 2 = 17个观测值。这将针对所有4项功能进行计算,并将以17个百分比表示所有功能的覆盖指标。
freq 频率(频率)是表示特定特征在模型树中发生的相对次数的百分比。在上面的例子中,如果feature1发生在2个分裂中,1个分裂和3个分裂在每个树1,树2和树3中;那么特征1的权重将是2 1 3 = 6。特征1的频率被计算为其在所有特征的权重上的百分比权重。)
6、XGB很容易理解它的回归和二分类,如何理解多分类呢?
谈笑中度过,一开始回答的label encode ,用onehot+softmax,但是每棵树如何是拟合softmax前一步呢。这个我确实不知道,面试官提示我说三分类,构造100棵树还是300棵,我就意识到了,回答原以为是100棵。
面试官说构造三百棵树,拟合三分类,再softmax。
(onehot之后,输入标签是一个向量,对向量中每一个预测点集成一群树)
二面55分钟
1、先问你是报的NLP方向不
不是,算法方向,讲实验室项目,用了很多图像的NN算法
2、三道题
第一题:第K大的数
讲了三种方法
方法1:堆排序 分析复杂度是O(Nlogk)(没分析错把)
方法2:快排二分 分析复杂度是O(N)
方法3:排序 查表 分析复杂度(NLogN)
要求O(N)所以用的快排二分,面试官说快排能做这道题?但快排是最快的(我知道的)也正好是要求的O(N)复杂度
(百度了一下,快排和hash最快,其余都不快)
手写python代码,但是编译不知道哪里也错了,这个IDE也不提示,面试官也很尴尬,说以前用牛客的可以报编译错了在哪 于是我就说下面的题用C++写(这个问题很严重,面试的时候找不到bug,所以一定要小心python,一定要bug free,不然老实用C++)
第二题:
地板n3,木板13,几种排法
dp[n]=dp[n-1]+dp[n-3]
第三题:
等概率1-7
造等概率1-10,分析调用1-7的次数期望
7进制,调用两次产生0-48,然后截掉40和40以上的再//4 1
期望不好算,是个数等比列求和,然后我就口算的近似值2.5n
想一想,可能是面试官压力面我,所以才会质疑快排把,分析了为什么是O(N)而不是面试官说的O(NlogN) 然后向他解释为什么部分排序可以解决这个问题,面试官的水平应该是没问题的(PS:不要以为面试官能力不行,绝大多数面试官水平都到位) 谢谢作业帮
11. 百度

效率很高,交完简历一天就面试了
一面很顺利,二面一百分钟,在和面试官的交流中学到了很多东西
一面:过于顺利导致我小本本上什么都没记 一面顺利,对答如流,以致于问答记录上什么都没记录。 第一题LIS: 演都不演,问完这个题的所有要求就直接默写最优情况 然后和面试官介绍这样的结果为什么是对的,然后顺便写了O(n^2)的写法。 第二题忘了,一分钟结束 二面: 都是开放问题,没有标准答案,时长一百分钟,内容主要是实际推荐场景 讲比赛? 从头到尾,讲了各个阶段我的工作,各个阶段我的思考,各个阶段我的心路历程。 (歪打正着了,面试官想听的应该就是我各个阶段的工作,然后遇到的问题,对问题的思考和解决) 你觉得如何衡量用户对搜索结果的满意程度? 南呀。我太南了。不过我说了TCP连接计时,根据场景过滤计时噪声,比如视频场景用视频长度的百分位计时,秒退的有效性等等。这点面试官可以满意。然后绞尽脑汁想不出另外一个好特征了,就照着弱特说,比如quary的相关性,什么什么的。面试官不满意,因为这些东西主要表征用户感兴趣程度而不是满意程度。 你觉得如何解决新搜索结果的推送? 回答:新搜索结果肯定历史推送为0,没有任何参考,但我们不知道他质量怎么样。于是把他随机推送一小部分用户,在推广。在推广是注意刷点击率现象,过滤一下,巴拉巴拉。面试官很满意。 你觉得如何看待场景和模型? 我个人非常注重场景,从自己的科研经历开讲,讲到西瓜书的引言,讲了自己完整的心路历程。面试官可以满意。 忘了一部分问题,太多了,讲到嗓子哑了,但是面试官的指导真的是干货满满啊,没有问模型的一些东西,而是怼实际工程,被怼的怀疑人生,怼完结束,面试官说会报给主管,然后等消息就可以了。 面试官这样怼我,我就很想去百度,因为他征服了我。
12. 腾讯

没有内推,直接在官网上写的简历,好像也是1天还是2天就面试了,但是。。 本来是我最意向公司,现在不是了。 腾讯校招
意向部门TEG 电话直接开始: 研究岗
自我介绍 ,聊聊项目
对我们部分感兴趣吗:部门做日志检测 安全领域
互相了解
要开会,下次继续聊
10点:继续聊上次的内容
全程比较轻松愉快
二面结束,但是状态还是二面待安排。。。
和面试官讨论如何用机器学习的方法去处理危险日志检测。从头复习了各大学习的知识,也算自我反省了。这里能获得的比较突出的经验就是,很多部门还是规则学习为主,对机器学习的分类情况有强烈的可解释性要求。所以树模型和LR等可解释性好的模型很受青睐呀。但最后面试官“感谢”了我,估计是暗示我挂了,桑心
通知笔试五题A了3道半,成绩也还行把,但是部门锁我简历。。。
通知了“两面”,几分钟结束,随便聊聊,说9月份继续面
当前流程已结束,舒服了,按理来说早该结束了呀,这个部门没有机器学习岗,但是想找个算法工程师来开辟一下业务,问我大概要招多少人emm~
13. 拼多多2019.8.13

拼多多 待感谢信
一面:
自我介绍
科研项目介绍
Kaggle 比赛介绍
腾讯比赛介绍
RNN用过吗 用过:项目 Kaggle
LR用过吗 用过:Kaggle的二分类检测
XGB和LGB区别:
只想到三点,特征排序,特征切分和直方图和全排序
说他们共同点较多 小提一点,又小提了GBDT到XGB和LGB,然后扯了扯实际用这两个模型的感受,然后说只记得三点不同了,实际效果xgb不输LGB但是调参不好搞,而且LGB很快

1)更快的训练速度和更高的效率:LightGBM使用基于直方图的算法。
2)直方图做差加速:一个子节点的直方图可以通过父节点的直方图减去兄弟节点的直方图得到,从而加速计算。
3)更低的内存占用:使用离散的箱子(bins)保存并替换连续值导致更少的内存占用。
4)更高的准确率(相比于其他任何提升算法):它通过leaf-wise分裂方法(在当前所有叶子节点中选择分裂收益最大的节点进行分裂,如此递归进行,很明显leaf-wise这种做法容易过拟合,因为容易陷入比较高的深度中,因此需要对最大深度做限制,从而避免过拟合。)产生比level-wise分裂方法(对每一层所有节点做无差别分裂,可能有些节点的增益非常小,对结果影响不大,但是xgboost也进行了分裂,带来了务必要的开销)更复杂的树,这就是实现更高准确率的主要因素。然而,它有时候或导致过拟合,但是我们可以通过设置|max-depth|参数来防止过拟合的发生。
5)大数据处理能力:相比于XGBoost,由于它在训练时间上的缩减,它同样能够具有处理大数据的能力。
6)支持并行学习。
7)局部采样:对梯度大的样本(误差大)保留,对梯度小的样本进行采样,从而使得样本数量降低,提高运算速度

代码水题,直接让面试官选C++还是Python,面试官(好像所有面试官回应都是一样)“你选就好”
我选就选python了写得快
棋盘有棋子,只能左上走到右下,右走或下走,问最多经过棋子数
dp[j]=max(dp[i-1][j],dp[j-1])
if chess[j]=='棋子':
dp[j] =1
二面:估计凉凉,答得不好
又一个自带打断buff的面试官 搞我思路,我不去了还不行吗
1、gbdt和xgb
(gbdt、xgb、lgb凡是项目提到了一定要熟练掌握)
2、BN、Dropout
( Dropout可以作为训练深度神经网络的一种trick供选择。在每个训练批次中,通过忽略一半的特征检测器(让一半的隐层节点值为0,当然这个“一半”是超参数,自己设),可以明显地减少过拟合现象。这种方式可以减少特征检测器(隐层节点)间的相互作用,检测器相互作用是指某些检测器依赖其他检测器才能发挥作用。
Dropout说的简单一点就是:我们在前向传播的时候,让某个神经元的激活值以一定的概率p停止工作,这样可以使模型泛化性更强,因为它不会太依赖某些局部的特征。
其实就是个Bagging策略,构造子网组合。)
3、为什么不用先用LR呀(LR这么简单用它干嘛?) 用LR做做二分类,做做stack还是挺好的,但LR总感觉表达能力不够,特征比较粗的话效果可能一般。 4、腾讯比赛特征如何离散化啊 连续性特征也能交叉啊为什么不交叉 离散化就是数据分桶,我这里按百分位分桶,结果和面试官解释了很久为什么百分位分桶比较均匀,百分位是数据排序的百分位,而不是区间的百分位。 连续性特征交叉,连续性特征映射成离散特征后,可以和连续性特征一起送到嵌入层里。 5、AUC知道吧,回归怎么计算AUC
不知道怎么计算,一查 根本没有..是不是我听错了 他其实想说逻辑回归的AUC怎么计算
(回归没有AUC这么一说)
6、堆和栈哪个开辟的快
MMP完全说反了,答完很久才反应过来。说的是堆编译的时候分配好了,不用再开辟伸缩什么的快,栈要伸啊缩啊所以慢(见前面的答案,这个答错了我可以凉凉了)
7、重载和重写
(注意重写是对虚函数的重写,我当时就答错了,所谓重载就是同名函数参数表不同,编译时会对函数改名,其实运行的时候他们已经不是同名的了;重写是虚函数重写,子类对父类的非虚函数在写一遍叫重定义或者隐藏,反正不是重写,重写是对虚函数的重写)
8、大数据 买东西 找买东西最多的100个 怎么做
建个哈希表 小顶堆
9、MAP底层怎么做的
我说还没看底层代码。(话说我一直不知道有MAP这种东西存在,都是手撸哈希表,准备有时间看一下STL源码分析)
(底层红黑树,一种O(log(n)的查找插入和删除数据结构)
索引复杂度呢 我说,log(n) 恍然大悟索引是二叉树
10、有没有O(1) 的?恍然大悟 我擦原来还有哈希表
哈希表冲突怎么办
回答了拉链 重哈希 当前 1
(同样高频问题,拉链:链表,冲突了就在链表后 1个;探测:线性探测,二次探测,就比如当前的值 1;再哈希:多个哈希函数)
其实我不太会STL,我喜欢手撸。不喜欢用STL的库函数,导致我STL不太行。等有空看一波STL源码分析。
14. 蘑菇街2019.8.14

蘑菇街
面试体验特别好,一二面很顺利,然后HR又特别好,感觉HR面已经过了,就差中间的交叉面了 这里说一个点:第一次接到面试通知的时候,打开链接是一个界面,上面有个面试时间、可编辑框、确定按钮和放弃按钮。 提示写的是:如果点确定,时间将不能更改。我又不敢点放弃,打电话问的HR,说写上钟意时间在点放弃就行。 第二次面试的时候,这个框的提示语变成了,如果点确定,时间将不能更改,如果时间不合适,请写上合适时间并点取消。 我就感觉HR贼好,于是二面的时候疯狂表达了我对HR工作的满意、支持和欣赏,二面说我的夸奖她会反馈给HR滴。所以我感觉HR面是不是已经过了,就差交叉面了。
不过我说的都是实话,我确实很喜欢她们的HR。
自我介绍,两道题
第一道:
1000以内的最大素数
说了Python能够O(1)空间实现素数生成器,筛选法,但是没写,没要求就不写,直接bool判断就好,注意从大到小
分析复杂度,如何减少复杂度?从上到下,从999开始往下搜,搜到就停,每次-2。 bool判断,从2到根号x开始,全求模,非0跳出False。 但是好像面试官不会python哦?于是改用C++下一题
第二道:
不用除法实现除法,很简单
注意我的写法里,C++里abs(一个负数)可能溢出,但是无所谓面试的时候速度A比较重要,平时要注意这些细节,而且python不会溢出
笔试的时候刚准备二进制优化就下一个话题了,面试的时候写的,凑合看看吧
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
#include <iostream>
using namespace std;
int jianfa(int num1,int num2)
{
    int re = 0;
    bool fuhao = false;
    if ((num1<0 && num2<0) || (num1>0 && num2>0))
    {
        fuhao = true;
    }
    num1 = abs(num1);//小心溢出
    num2 = abs(num2);//小心溢出
    if(num2==0)
    {
        cout<<"div zero error"<<endl;
        return 0x3f3f3f3f;
    }
    if(num1<num2)
        return 0;
    int tmp=1;
    while(num1>num2)
    {
        tmp*=2;
        num2*=2;
    }
    num2/=2;
    tmp/=2;
    while(num2)
    {
        if(num1>=num2)
        {
            num1-=num2;
            re =tmp;
        }
        num2/=2;
        tmp/=2;
    }
    if(fuhao)
        return re;
    else
        return -re;
}
int main() {
    int num1,num2;
    cin>>num1>>num2;
    cout<<jianfa(num1,num2);
    return 0;
}问了很多很多:
个别想不起来了失忆了。。
1、为什么没有实习经验?
第一点老师不让找工作。(这是真话,今天老师对另一个同学说,你找到工作了吗,你找到工作但是毕不了业你说工作是不是白找了,。。。)
第二点,为了能够接触到实际工程,在科研之余,参加了比赛,巴拉巴拉。面试官可以满意。
2、LR用过吗?
必须的
3、LGB比XGB好的点?
直接介绍二者不同
4、L1、L2不同?L1为什么能稀疏?
从数学分布讲了,一个是拉普拉斯分布 一个是高斯分布;讲了图解为什么L1能稀疏,一个圈一个菱形,容易交在轴上。工程上讲了,L1的近似求导,区间内0区间外优化。然后L2是直接求导比较简单。
5、哪些学习器是凸优的呀?
LR sigmoid logloss 凸优 。线性回归,最小二乘凸优。SVM凸优。NN肯定不凸优,因为往往收敛到鞍点。PCA无数学解,但是利用特征值反而得到 最优解
(注意sigmoid 平方损失不是凸优化)
6、特征重要性你怎么做,例如特征组合和删除,调参你是怎么调的呀?
答:特征组合用onehot 交叉 EMBEDING。组合的话要看实际分布,讲了自己构造过的一个和标签有线性关系的组合,说自己用的是遍历的方法,用两两数学关系构造新特征,看和标签的线性关系。
特征删除等想到了某个KAGGLE大佬的特征筛选步骤,从他的kernel我也是学到了很多。
调参:
第一步祖传参数。比如树模型的深度、采样频率等,这个主要还是经验
第二部调参,比如尝试新特征,特征采样频率要设为1啊这种细节
7、知道几种激活函数?
我说最简单的SIGMOID TANH RELU我就不提了,讲了讲某个比赛时候用到了leakRELU,然后谷歌的论文里面的swish函数,随口介绍了一下这个论文。
8、鞍点是什么?
我嘴贱说这个干吗,然后我说忘了,但绝对不是局部最优点,看表情面试官可以满意,其实真忘了。
(结合鞍点图像理解更佳。注意一个方向上升,所以很容易坐滑滑梯从上方滑到鞍点。另一个方向是下降,所以可以坐着下降的滑滑梯下去,但是鞍点这里梯度是0,是平的,所以优化就容易困在这里。前面多走几步就是滑滑梯但是他无路可走。 百度百科的的解释: 鞍点(Saddle point)在微分方程中,沿着某一方向是稳定的,另一条方向是不稳定的奇点,叫做鞍点。在泛函中,既不是极大值点也不是极小值点的
临界点,叫做鞍点。在矩阵中,一个数在所在行中是最大值,在所在列中是最小值,则被称为鞍点。在物理上要广泛一些,指在一个方向是极大值,另一个方向是极小值的点。
广义而说,一个光滑函数(曲线,曲面,或超曲面)的鞍点邻域的曲线,曲面,或超曲面,都位于这点的切线的不同边。)
先问用没用过RNN
答:项目的RNN效果,分析RNN在项目里不好,和比赛中RNN前期效果(前期效果最好)
用过GRU吗,为什么LSTM能够记忆长时记忆。
答:GRU用过一次,在哪里用的。用的记忆门,保证长时记忆传输。
9、Attention有哪些?
答:之前说到了自己用过attention,只用过,不知道原理。
(作为一个调参侠,各种网络随便试,但是attention的本质我还是不甚理解,attention is all you need?)
10、Dropout为什么预防过拟合?
从bagging的角度答的,NN是偏差小方差大的学习器,适合用bagging,构造子网络在预测的时候组合,相当于构造了学习的多样性,实现了bagging。
11、协同过滤:
说了解 但是没写过代码
(协同过滤,感觉一个学生要是搞科研为主还是很难接触到,感兴趣的可以了解下,特别是面电商的商品推荐工程师呀还是容易问到的)
12、CTR估计,都用什么?
我说LR和FM ,代码写过,FM主要是NFM,其他的FM都知道理论但是没写过代码
13、蘑菇街是干嘛的你造不?
答:卖衣服滴。于是他介绍蘑菇街主要是电商和直播。(听到直播我差点笑了,快憋不住了,就莫名很开心,然后他看我绷不住了赶紧说直播是目前蘑菇街发展最快的模块)
二面:

顺利,没有撸代码,因为时间不够面了半小时,二面说一面的评语是代码能力特别好,所以不写代码了
我的项目里有一个完整的软件实现,我负责的主要部分超过了1万行代码,可能是这一点让面试官觉得我不用谢代码了吧。
其实大部分正常手撸代码都可以(除了字符串是我的弱点),真出到不会的题是真的没办法
介绍了项目讲了项目细节
项目里编码领域内特征组合都是异或,所以用RELU BN提特征,BN真的是巨大提升
讲BN原理,公式,实现
(可以去看看BN源代码,不长)
为什么用BN压缩异或后映射的正数部分而不是什么什么(没听清)?
我提到了BN层也算做了数据扩充,而且BN层把只有0,1的编码流做了抖动转化,让梯度能变起来,优化的更好(机器学习可行无非就两点,第二点就是优化问题)
为什么用CNN?然后面试官介绍推荐领域内的另一种东西(Embedding),这个Embedding映射了隐向量,你觉得是CNN交叉好呢 还是隐向量好呢
回答:(其实我知道Embedding,因为一起参加比赛的朋友手撸了NFM,第一层就是这个嵌入层)我的回答偏向于场景,编码领域内的一个特点:只有局部相关,时不变。所以用CNN,做全局相关的Embedding反而不好。推荐里面特征离散化后稀疏,而且特征间本身可能具有高阶交互信息,所以映射成隐向量效果会较好,如果是推荐,我建议用隐向量而不是CNN,其实这是由场景决定的,是数据的特点决定选用什么学习器,使用什么网络。(我还介绍了图像为什么ResNet更好,但是编码里我的两层极限调参网络性能超过了残差网络,其实都是场景决定的)
三面:大佬交叉面

面试官是个大佬!
自我介绍,你会来蘑菇街吗? 蘑菇街好啊,我一顿舔,但是说的都是我的心里话。 前面对答入流,主要是我在介绍自己的比赛,从开头讲到结尾,比赛的背景,中间的心路历程,最后的处理。 一二面如此顺利,交叉面前面也顺利的不像话,败在了一道会做的水题,好气。 不然我的蘑菇街就稳了啊,本来顺利的不像话,哎
给定括号流,找到字串中合法匹配的连续对数 1 s = '(())(()()()' 输出是3。下面我的dp好像最开头多加1个0?但是无所谓了 面试的时候一看我擦,字符串我不会啊,是我的最大弱点,我就直接表示我字符串不太行,可能做不出来。然后觉得应该用栈和贪心做。写着写着发现这题有点简单,动态规划可以做,这是我强项啊。然而我大早上10点30在成电天台上做的,阳光那个亮啊,屏幕哪个暗呀。最下面的input编辑区我看不见啊,那个区啥都没写,空的。然后代码区开头input(),代码区最后写的是s = '()'我以为输入进去了,实际s读的应该是空。但不知道为什么,出来dp是8个0,当时整个人都惊了,纳尼?哪来的8个0,你就是2个0也行啊。。整个人傻了,不会调了,愣着等死。 回来复盘在notebook上两分钟写完,真水题。后悔啊 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
#s = input()
s = '(())(()()()'
#s = '(())(()'
re = []
dp = [0]
for i in s:
    if not re:
        re.append(i)
        dp.append(0)
    else:
        if i=='(':
            re.append(i)
            dp.append(0)
        else:
            if re[-1]=='(':
                re.pop()
                dp.append(dp.pop()+1)
            else:
                re.append(')')
                dp.append(0)
print(re)
print(dp)
m = 0
cur = 0
for i in dp:
    if i!=0:
        cur+=i
        m = max(cur,m)
    else:
        cur = 0
print(m)
输出:
['(']
[0, 0, 2, 0, 1, 1, 1]
3最后问问题的时候,面试官有一点说的很好啊,关于召回排序,他补充了业界的一些做法。一般情况我们排序只要偏序就可以了,但是在一些竞价广告的情形排序,我们就必须要给出准确的估计值,这样才好分钱。比如点击率CTR还是其他的组合,最后要根据这个排序计算收益。 另外,在推荐搜索里,大佬也介绍了去相关的一些东西。即召回的东西可能重复度太高,或者需要被过滤掉(比如少儿不宜,大家都狂点,不太行),所以过滤是如何做的。而且假如是对某个人推荐,一种做法是人群不做特征送进去,因为对某个人推送,这个人对所有广告或其他推荐是等效的,所以和这个人交互召回排序就可以了。 最后我问了公司的平均年龄,因为我个人比较在乎这个,互联网公司很烦的一点就是人群流动性特别大,我想占坑后就蹲坑里了。面试官大佬对我说不要有心里负担,你来了两年,做出自己的贡献,是可以去其他公司的,他自己就去过两个公司,一个是4年多,一个5年多(面试官看着这么年轻,惊了),然后他手下的小姑娘们比他小10岁,他也不好意思问实际年龄(原来是领导。。强啊,长得又帅,实力又强),他是比较支持我干了两年就溜的。而且他说蘑菇街是中大平台,有独特的好处,比BAT更更更加注重人的培养,而且平台的大数据流可能不会像BAT那么大,这种中大的数据流可以用很多模型啊,不像百度(我全程没提百度。。)可能数据流大公司的一些开源包就不行,只能用自己公司造的轮子,来蘑菇街你能更好的施展自己。 收到了HR面的通知,要求等面试官来学校或者直接去公司面试,选择后者,准备体会一下蘑菇街的风土人情。
15. 网易互娱 游戏研发

一面

1、自我介绍
没什么拿得出手的东西呀,我主要是算法工程师,而且实际科研项目要么专业性强(编程算法都不沾),要么是算法的东西
说了自己写的科研软件,代码量1W以上写了一堆报告 其他的简单一提
自我介绍的时候提到了自己喜欢玩游戏(以前玩盗版,现在玩正版,steam50级以上,然后游戏快100了)
(后端开发都是自学了一点,而且互娛不要python)
2、平时喜欢玩什么游戏啊?
最近一段时间科研,没玩游戏。以前喜欢玩塞尔达、黑魂、怪物猎人等
3、网易的游戏玩过吗?
阴阳师和炉石
4、聊聊炉石?
以前特别喜欢玩炉石,主要是喜欢开包(面试官笑),为炉石花了很多钱,因为我喜欢一个游戏就很愿意支持他。炉石的优点在于它有竞技性,而且也是打牌类的游戏,所以本身有趣味性,而且每局有随机性,这样每一句的体验不一样。另外一点就是攒金币开包,金币多了开包后卡池更新,可以有新的构筑,新的体验。这样每过一段时间都会新体验,留住用户,我本身也是喜欢紧张刺激的开包环节
5、三道题,比较简单,要写测试用例
手撕成功,写代码还是比较快的
第一题二分
python写的编译报错,牛客网查不到错在哪,我就赶紧c 重写了一个
讨论了二分的四个边界条件
return st,en二种对应返回搜索边界,data[mid]<value和<=value,两种对应二分上下界
共四种,然后说四种情况对应,每种的取值范围 返回st,返回的取值范围是0到数组长度,返回en,则是-1到数组长度-1 st和en含义不一样,这个最好自己写写理解一下 (更新了一下lower_bound的理解,解释了为什么返回值范围是0到len(data) PS:标准库返回的是迭代器位置,是一个指针,我这里从元素的位置概述。 lower_bound 返回数组大于等于value的第一个位置,假如数组中所有元素均小于value,返回尾部迭代器len(data),第一个元素大于等于value,返回0 (第一个元素大于等于value,则所有元素大于等于value,则返回0) 从定义看,这样定义就不可能返回负1。 找身边的跳动大佬讨论了一下,应该没写错了,有误请指正呀。 upper_bound返回大于value的第一个位置。同理,理论上返回值就不包含-1。 标准库的写法里,返回的是st。 加入返回的是en呢,那么返回的含义是什么呢?即返回的st情况-1 lower_bound :返回大于等于value的第一个位置 lower_bound_en:返回小于value的第一个位置
upper_bound:返回大于value的第一个位置 upper_bound_en:返回小于等于value的第一个位置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 def lower_bound(data,value): st = 0 en = len(data)-1 mid = st+((en-st)>>1) while(st<=en): if data[mid]<value: st = mid 1 else: en = mid -1 mid = st+((en-st)>>1) return st def lower_bound_en(data,value): st = 0 en = len(data)-1 mid = st+((en-st)>>1) while(st<=en): if data[mid]<value: st = mid 1 else: en = mid -1 mid = st+((en-st)>>1) return en def upper_bound(data,value): st = 0 en = len(data)-1 mid = st+((en-st)>>1) while(st<=en): if data[mid]<=value: st = mid 1 else: en = mid -1 mid = st+((en-st)>>1) return st def upper_bound_en(data,value): st = 0 en = len(data)-1 mid = st+((en-st)>>1) while(st<=en): if data[mid]<=value: st = mid 1 else: en = mid -1 mid = st+((en-st)>>1) return en
对比的数改成1。
) 然后说了C++算法标准库(lower_bound和upper_bound)用的哪两种形式:返回st的那两种 注意C++标准库返回的是指针 第二题是二叉树的深度
python手撕,又报错,然后无IDE查bug还好查到了,print大发好,对python,如果print(“XXX”)没输出东西就说明没运行这一行。
定义树class的时候写的是.next,晕了,应该是.left和.right
第三题是数组旋转
左旋转,自信一波分析写完是右旋转,一脸懵逼,怎么看都是左旋转跑完就是右旋转
然后再那试了试改i,j,然后第二次就输出对了,晕,运气比较好
由于循环用的常数限制,要求改成了数组的范围,注意python len(data)是行 len(data[0])是列
正常构造一个和data一样大new数组是先列后行 [[0 for _ in range(len(data[0])] for _ in range(len(data)]
然后循环是先行后列(这样局部性更好,运行速度快,更容易缓存命中,当然面试官也没问我也没提)
写法应该是对的,但我不敢改成行列不相等的情况,万一错了呢.PS:想了想应该不对,因为new数组我照着data开辟的,应该行列反过来开辟才对,先行后列构造的话正好对应旋转后的情况,幸好没深究,不过这种bug很容易改,print()大法print一下就出来了
问问题:好希望他问我机器学习的东东,这样我就能装逼了,然而
6、静态内存和动态内存?
讲了static和堆栈是静态,编译的时候决定了大小,动态内存可以自由开辟->堆,也不知道对不对。。
(回来问了问另一个收割大佬,应该是这样)
7、堆是?
说了向上开辟,速度慢、运行时改,然后开辟的过程,链表存着下一个位置和这一块有没有使用,如果没找到就析构合并内存再找,再找不到返回null(可以参考前面的答案)
8、堆栈是?
说了向下开辟、速度快、编译时分配、主要是存PC指针,然后函数入口参数多组成栈帧存进去等着恢复
9、malloc和new区别 free和delete?
1、一个是函数(面试官没问,但我自觉呀,诚实回答忘了是哪个头文件里的了,事后查了查是stdlib我擦我天天写没想到是这个)一个是关键字
2、malloc要算大小,返回void*(然后随口提到void*可以转XX *),强转后按转完后的类型用,要自己算大小;new的时候传类型,就比如100个int,然后直接开100个就好了,他自动将int长度算进去
3、malloc再堆上,new在自由存储区(然后回答忘了自由存储区再哪了) 讲着讲着忘了free和delete的事了
(自由存储区和堆似乎是概念上的区别?我丢,深入理解计算机基础是按C讲的,我哪知道C++的自由存储区和C的堆有啥区别呀,按理来说假如new是依赖malloc实现的,那么他们不该开辟于同一块区域么。C++默认在堆上开辟new需要的空间,所以new来自自由存储区和堆都行。
网搜的答案:
自由存储区是C++中通过new与delete动态分配和释放对象的抽象概念,而堆(heap)是C语言和操作系统的术语,是操作系统维护的一块动态分配内存。
new所申请的内存区域在C++中称为自由存储区。藉由堆实现的自由存储,可以说new所申请的内存区域在堆上。
堆与自由存储区还是有区别的,它们并非等价。

10、智能指针了解不?
我从python的内存管理角度讲了计数法析构内存,和智能指针原理一致。但我自觉诚实的说出我没用过智能指针
11、python怎么解决循环引用的?
是不是想问我智能指针的循环引用解法?我忘了呀,我就直说python本身解不了循环引用的问题(这实话实说,确实解不了,python又不是神,循环引用要靠自己析构,对python来说,循环引用的东西就算程序关了都还在),但python有个库函数可以发现循环引用位置,然后调用垃圾收集器析构掉就好(其实就是定位内存泄露,然后gc把它干掉)
12、计网了解不?计算机网络TCP和UDP的区别?
答自学。回答了很多,挺详细了
(UDP主要用于那些对高速传输和实时性有较高要求的通信或广播通信,
TCP用于在传输层有必要实现可靠性传输的情况
1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接
2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付
3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的;UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)
4、每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
5、TCP首部开销20字节;UDP的首部开销小,只有8个字节
这里建议不是特别熟的回答首部设置不一样,别说的太详细。
6、TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道

13、长传输和短传输?
不知道
(是http的长连接和短连接吗?HTTP1.1规定了默认保持长连接(HTTP),数据传输完成了保持TCP连接不断开(不发RST包、不四次握手),等待在同域名下继续用这个通道传输数据;相反的就是短连接。)
14、操作系统呢?
回答自己看的深入理解计算机系统,看的很详细,收获了特别多
15、进程和线程?
程序不过一段文本,运行起来才是进程,一顿讲,资源/调度单位啊、共享内存啊、并发啊XXXXXX
(见之前的答案)
16、你还有什么问我?
问了两个问题
一问:您能不能了解到其他面试人的信息,然后对着我教研室座位后面的字节大佬猛夸(因为他特别想去互娛做游戏),一开始面试官还以为这个人挂了呢我想捞一手,一听和我同时面了互娱就轻松了说既然这么强一定能过面试,然后我就突然想到好像可以暗示一波,就说我和他报的都是广州,我很想和他当同事(强烈暗示)
二问:我说我是算法工程师,机器学习特别厉害,平时工作内容是啥啊,机器学习这部分我都用上么
求互娱给个开奖机会,教练我想做游戏~(如果百度把我忘了的话),你敢让我过 我就敢去 宁可别被我逮住了
16. 360 搜索(Ranking)-机器学习工程师

负责360搜索的部门,面试体验很好。
一面:上午10点40 1小时

忘了面试的一部分,因为连续4面,其中技术面360两个,网易互联网1个,hr面1面,非常之累。
1、介绍自己
2、介绍自己实现的科研软件
用什么语言:C++
什么写的界面:QT
3、LGB和XGB区别
一开始听错了以为是LSTM,我还在想LSTM和XGB的区别,这怎么说,先介绍介绍XGB吧,然后说完XGB反应过来,面试官不是让我说LGB吧。。那就好说了,一顿讲。
(答案前面有)
4、介绍CNN、卷积层如何实现非线性
使用激活层,不然在卷积都是线性变换。我从猫的视觉锥细胞开始一顿讲,应该讲的挺详细了,CNN的时不变性真的很适合用于信号处理。讲了时不变和局部权值共享,说CNN是DNN的特例。

卷积:对图像(不同的数据窗口数据)和滤波矩阵(一组固定的权重)做内积操作。
卷积的重要的物理意义是:一个函数(如:单位响应)在另一个函数(如:输入信号)上的加权叠加。
卷积神经网络CNN是多层感知机(MLP)的变种。20世纪60年代,Hubel等在研究猫脑皮层时发现其独特的网络结构可以有效地降低反馈神经网络的复杂性,继而提出了CNN。
CNN:局部连接和共享权值的方式,减少了的权值的数量使得网络易于优化,另一方面降低了过拟合的风险。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。在二维图像处理上有众多优势。
CNN具有一些传统技术所没有的优点:良好的容错能力、并行处理能力和自学习能力,可处理环境信息复杂,背景知识不清楚,推理规则不明确情况下的问题,允许样品有较大的缺损、畸变,运行速度快,自适应性能好,具有较高的分辨率。它是通过结构重组和减少权值将特征抽取功能融合进多层感知器,省略识别前复杂的图像特征抽取过程。
CNN的泛化能力要显著优于其它方法,卷积神经网络已被应用于模式分类,物体检测和物体识别等方面。利用卷积神经网络建立模式分类器,将卷积神经网络作为通用的模式分类器,直接用于灰度图像。

5、卷积层 pooling层怎么放?激活层放哪里比较好,有什么区别?
没听明白,不该是中间夹一个激活层吗。面试官的pooling真的是一言难以呀?我一直以为是最后的全连接FC层,我心想这不是被全局池化代替了么?不会所以一顿乱说?因为我自己也是改网络的时候,经常会尝试层的位置交换,我都是哪个效果好用哪个。讲的时候想起了何凯明大神的论文里的预激活,然后对着预激活、卷积层在Resnet的作用一顿夸。有会的大佬么。请私聊教教我。。。
两道题
1、10进制转K进制 进制转换
给定一个十进制数M,以及需要转换的进制数N。将十进制数M转化为N进制数 输入描述 输入为一行,M(32位整数)、N(2 ≤ N ≤ 16),以空格隔开。 输出描述 为每个测试实例输出转换后的数,每个输出占一行。如果N大于9,则对应的数字规则参考16进制(比如,10用A表示,等等) 这题很简单,发个自己的写法,过一遍就好,挺简单的。可能个别边界会有问题,但是面试的时候尽量追求速度。 牛客网面试的时候,注意运行全部用例,可以看AC的情况,为什么这么说呢,因为你的输入面试官看不见(他说的),所以他只能给你跑一下看过了多少例子。 像这种水题一定要写得快。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
//map<int,char>table;
//table[0]='0';
//table[10]='A';
#include<stdio.h>
#include<iostream>
#include<string>
#include<vector>
using namespace std;
void reverse(vector<int>&a)
{
    int l = a.size();
    for(int i=0;i<l/2;  i)
    {
        int tmp = a;
        a = a[l-i-1];
        a[l-i-1] = tmp;
    }
}
string get(int M,int K)
{
    bool ju = false;
    if(M<0)
    {
        ju = true;
    }
    //注意负数转正数溢出
    M=abs(M);
    vector<int>data;
    while(M)
    {
        data.push_back(M%K);
        M/=K;
    }
    reverse(data);
    string res = "";
    if(ju)
        res ='-';
    for(int i=0;i<data.size();i  )
    {
        if(data<=9)
            res ='0' data;
        else
            res ='A'-10 data;
    }
    return res;
}
int main()
{
    int M=7,K=2;
    cin>>M>>K;
    string s = get(M,K);
    cout<<s<<endl;
}2、A->B,B->C,A->C,C->A中有一对链子A->C,C->A问序列里有多少对链子 使用哪种数据结构?
要求:序列很长,只看直接相连,A->B->C->A 不算ABC互联。
讲了比较简单的d[j]=(bool)的结构,O(N^2)的时间和空间复杂度
又讲了两次扫描,O(N^2)的时间复杂度,O(1)空间复杂度
最后说了数组+链表,极端情况下时间复杂度也较高,但我心里想的是对链表排序也不慢吧,二分查找,时间空间都OK呀,但我傻就傻在我心里想了,嘴上没说链表排序。
最后有会的大佬么请教教我。。
二面:

体验好,一道题,抽的前两道题都做过,一个是奇偶排序,一个是前序中序重建树
都是剑指OFFer原题,面试官见我思路顺畅,问我是不是做过,做过默写就没意思了。
我说做过剑指OFFer原题。 前两道题没手写。
第一道奇偶排序要求稳定排序,思路1就是归并排序,前偶后奇为大于。思路2双指针 二分 偶数倒
第二道 找根节点,二分,没了
第三道没做过,但是也简单,问面试官能不能用python,能的话两分钟结束这道题,说不行就老实写了
这一面主要是深挖项目,深挖!
反问环节,面试官疯狂指导我,真好,这里总结了记住的一部分:
聊了搜索推荐的一些问题,我问的第一个是360对编程能力的要求。面试官的回答是所有的算法工程师都要具备很强的编程能力。
第二个是推荐中排行榜的问题,我说上了排行榜,阅读量就是疯狂增加,一增加就会更留在排行榜上,这种情况怎么办。面试官回答这是正反馈问题,说了很多干货,有兴趣做推荐的可以看看相关内容。
我又问了冷启动的问题,我就说对于新出现的页面,第一次出现,没有任何曝光下,如何给他做推荐呢?这里面试官反问了我,我就回答了自己的思考,先小批次试点曝光,再推广。
面试官开始讲推荐和搜索排序的区别,搜索排序面临的问题更复杂。所谓排序就是获取大数据的网页界面,然后对用户的查询给出一个最可能的结果(LGB可用),用到一些分层、召回(最优可能查询结果捞出来)、排序(对捞出来的东西排序),这里排序要做到去相关性,查询要保证输出结果多样性、表达多样性,还牵扯到了词与词之间的紧密度、运营和相似度命中。
另外排序有很多难点,首先数据量更大,抓取信息很多,但是索引不是越多越好,因为存在重复的(抄袭的网页)、质量不高的网页。另外对于learning to rank,我们不需要像回归那样得到准确的回归值,只要得到他的偏序就好。比如A<B,我们算价值是A:80,B:79和A:80 B:77,偏序都一样,只要排序正确即可。而要检验我们排序的好不好,就是根据反馈,检验模型的优劣,比如我们把A在B前面,但是用户不点A点B,用户改Quary词或者翻页,都可以用于检验模型效果。这三时候可能会用概率图解决这些问题。排序技术难度大,底层需要的技术也比较高级。另外,用户的询问和我们的结果可能存在一定的gap,比如用户搜某车的标价,我们给的搜索结果是某车的成交价,这就存在了gap。
最后我问了这么一个问题,就是我在做学习强国的时候,查询一个答案, 结果第一个是付费的,第二是是免费的,有限的时间里查到的第一个结果让我付费观看,我就很生气。这个怎么看待?面试官的回答也是很棒呀,所谓的搜索排序最终就是给用户满意的结果,结果可能是多样的,有的排版好内容丰富,有的排版差内容差,我们做的就是把最好的结果展示给用户。对于搜索排序,可能产业化的结果分两个,第一种是满足需求的免费内容,特别用户预期的结果。第二种可能是竞价排序的结果,可能付费观看,大部分用户没有付费的欲望觉得不好,少部分付费用户可能也会特别喜欢,但无论如何,前者肯定也会在搜索结果前列。
17. 网易互联网:深度学习工程师

啊,面到最后没时间了,面试官让我问问题,我就随便问了两个,然后不得不回360电话了,就说我有点事把视频关了,本来面得挺好的,哭
其他的忘了,就记得两道题
第一道 n的二进制表示中有1的个数
1 2 3 4 5 6 int re = 0; while(n) { re; n = n&(n-1); } 然后分析复杂度,最后提示下分析出来了log(1+n)
然后分析平均复杂度,我以为从1 到int_max的所有复杂度求平均。所以怎么都分析不对。
最后才知道是每个的复杂度,晕,面试官告诉我是log前面的系数是0.5。
第二道:
1、建个链表
2、打印链表
3、反转链表
反转链表写的不好,左右边界各判断了一次,正常情况下只判断一次就好,但面试官说也OK,多做一次时间影响不大,结果正确就好。
4、排序链表
做的是真难受,臭牛客,哼哼。写错个变量都指不出来,改bug改到头秃。
排序链表写的是链表快排,最后发现复杂度不是nlog(n),因为我L部分的尾部没有指向mid(base),导致我最后写了个找L部分的尾部,把这一步优化了就没问题了,但是面试官说也行吧排序的结果不会错。
最后问问题的时候,我一边问一边调试,最后终于把链表快排调对了。然后和面试官说我调出来了,就匆匆结束了这次面试,很难过。因为马上360就是二面,我总不能为一面放弃二面把,这里我情商不够处理的不好,哎,难受。面试官人都挺好的,都是我的问题。
面试经验肯定是面的越多越丰富的,从最初乐鑫的笔试挂,到字节跳动笔试不会写输入流(第一道题我本地1分钟就A了,然后不会写输入流,试了15分钟,然后写了第4题,结果本地能过线上报编译错误,我就很生气了,何况这个输入流更复杂我就直接放弃了)笔试直接挂,到现在面试一点也不紧张,可以和面试官愉快吹牛逼了,所以说多点经历也是挺好的(补充,这次字节笔试3.6/4,还可以)
##部分已挂的公司,吐槽一下: OPPO 简历挂?显示简历过,没有通知面试,可能原因是没填内推码,身边的字节大佬也和我一样简历挂。。。问了去面试的算法同学 面试题目婴儿难度。 还有提前批没过,但是简历状态还有,是已处理,不能再次投递。。。 VIVO 笔试挂。。我真没想到笔试还能挂,不过VIVO SP给的还不错,问的问题也不能说难?没中奖呀难受 很气,想想要不要投步步高?三顾茅庐了要 阿里 内推挂(本来在池子里,然后部门的那个人发邮件给你内推,内推完刷新界面挂,可能原因是我扫了内推连接,但是我一般是不选择内推,想一想阿里内推人也不容易,互相体谅吧) 还有一个不知道哪里的公司 挂了我简历,原因是简历是牛客上创建的,都不知道什么时候创建的,简历上面很干净。。
来源:工业和信息化部网络安全产业发展中心(信息中心)
前两年的中国互联网企业100强名单











前两年的中国互联网成长型企业20强名单


tylz2008 发表于 2023-10-12 09:22:24|来自:北京 | 显示全部楼层
作为一个20年刚毕业,加入鹅厂的学长来说下。
去年校招的时候,做了很多功课,从薪资福利、工作环境、内容、压力、氛围等做了很多调研。
最后是在一众公司中,选择了鹅厂微信,现在感觉当初的选择是对的,至少我很满意,现在的工作和生活!
记下了不少的小笔记,现在直接分享给大家,虽然数据有些是20、21年的,但是其实整个行业,头部的始终是那些公司,只是每一年薪资有1、2k差异罢了。
首先,判断一个公司值不值的加入,或者横向对比offer的时候,有几个指标:

  • 薪资
  • 地理位置
  • 部门是否核心、业务是否在上升期(跟着业务一起发展才是最快的,前几年早期加入快手、头条的估计都自由了吧)
  • 福利
  • 加班情况如何、是否996等
这些信息从哪获取呢?

  • 知乎、脉脉搜,有很多一线员工会吐槽
  • 直接问学长,如果能联系到同一家公司甚至一个大部分的学长是最好的
  • 多去牛客逛逛、提问
当然,也可以自己主动提前去实习,自己的亲身感受才是最准确的!现在去实习,还有秋招、明年春招可以在面试,还有机会选择其它的!!
首先,咱们出来打工,当然是为了赚钱呀,所以薪资福利一定是首选,其次是公司前景以及氛围的,除了钱以外,上班上得开心也是很重要的,不要去那种老板PUA很严重,加班很严重的公司。
既然说到了薪资,咱们就来看下,20年的校招各大公司的薪资吧,都是从offershow这个小程序搜集滴:
我们按北、上、深、广、杭给大家列出来,这五个城市几乎囊括了中国前 80 %的互联网公司,大家耳熟能详的公司都在这些城市,所以也墙裂推荐刚毕业的学弟学妹们先去这几座城市,毕竟公司多意味着互联网氛围好、跳槽选择多、薪资也更加高。
如果你是技术岗,进大厂现在算法一定要过关,在这里也送大家一本帮助我拿到BAT 等一线大厂 offer 的算法笔记,是一位阿里大神写的,对于算法薄弱或者需要提高的同学都十分受用,算法一定是计算机学习的重中之重:
BAT大佬写的Leetcode刷题笔记,看完秒杀80%的算法题!话不多说,直接开始:
一、北京
一众外企谷歌微软领衔,BAT 紧随其后




二、上海
这次是BAT TMD 等领衔啦,看来外企还是更加偏爱北京呀:




三、深圳
在深圳,当然是鹅厂带头老大哥了,也欢迎大家一起来鹅厂,背水一战!!



四、广州



五、杭州
不用多说,去了杭州就是阿里巴巴的天下了,




注:以上数据由offershow整理并提供。

说完了薪资,剩下来就说下 996 这个话题吧,应届生选择 offer 除了薪资以外,还要考虑下加班是否严重、否则像某多多那样,虽然钱给够,但是加班也是很严重的!! 资本家不会无故大发好心,这点大家要清楚哟。
不知道大家是怎么样的,反正腾讯大多数是早上十点上班,中午午休两个小时到两点十五,下午六点左右下班(当然这个时候下班的大多是职能型岗位的同事),像程序员的话,我看到大多数都是九点左右下班的。

然后,我们一周上 5 天,也不存在一周 6 天的情况,除非是偶尔项目特别急,赶进度,这个都是能理解的。
为了帮助大家拿到 offer 之后排雷,我在这里也找到了一份 955公司名单,大家如果注重 Work Life Banlance 的话,可以考虑下这些公司。
这里先科普下996、955到底是什么哈:
996 工作制:即每天早 9 点到岗,一直工作到晚上 9 点。每周工作 6 天。
955 工作制:即每天早 9 点到岗,一直工作到下午 5 点。每周工作 5 天。
11-5-5 工作制:即每天上午 11 点到岗,一直工作到下午 5 点。每周工作 5 天。
然后分别有两个仓库,对应 996 和 955的 公司名单:
996.ICU: 工作 996,生病 ICU。
955.WLB: 工作 955,work–life balance (工作与生活的平衡)。
1155.Life: 工作 11-5-5,生活为先。
当然了,以下公司名单,基本不属于 996 的公司,相对接近 955/965 的水平,但是依旧要看部门和地区,不能保证完全准确性。
仓库地址:https://github.com/imarvinle/955.WLB
大家可以自己去看下,这里我也给大家截出了一份名单里比较好的公司。




955 的公司名单


  • Amazon - 北京/上海
  • Apple - 北京/上海
  • Autodesk - 北京/上海
  • Citrix - 南京
  • Cisco - 北京/上海/杭州/苏州
  • Coolapk (酷安) - 北京/深圳
  • Douban (豆瓣) - 北京
  • eBay - 上海
  • EMC - 上海
  • Ericsson - 上海
  • Google - 北京/上海
  • Grab - 北京
  • HP - 上海
  • HSBC - 上海/广州/西安
  • Hulu - 北京
  • IBM - 上海 (GBS除外)
  • Intel - 上海
  • LeetCode - 上海
  • Microsoft - 北京/上海/苏州
  • National Instruments - 上海
  • NVIDIA - 北京/上海
  • Oracle - 上海
  • PayPal - 上海
  • Pivotal - 北京/上海
  • RingCentral - 厦门
  • SAP - 上海
  • Splunk - 上海
  • SUSE - 北京/上海/深圳
  • ThoughtWorks - 西安/北京/深圳/成都/武汉/上海/香港
  • Trend Micro - 南京
  • Vipshop (唯品会) - 上海
  • VMware - 北京/上海
  • WeWork - 上海
  • Works Applications - 上海
可以明显看到列表里,Hulu、Google、Oracle、Mircrosoft、PayPal 这些都是外企,真是奇了怪了,为什么外企能够在 955 的情况下还经营得这么好呢?
而国内一众互联网公司都是 995 起步,996 也不少见。
当然,国内如 知乎、唯品会、豆瓣等还是在 955 名单内的,大家可以考虑下,但是,相对的,薪资肯定没有阿里、腾旭、拼多多这些香了。
点名表扬下@知乎。
到底是选择某多这种高薪但是舍弃部分生活,还是知乎、豆瓣这种 WLB 的公司就看大家的追求了。
如果你是技术岗的话,请务必看下下面这个回答,可能会改变你的一生:
程序员需要达到什么水平才能顺利拿到 20k 无压力?大家觉得有用的话,点个赞,让更多同学看到这个回答呀!!!
选offer一定记住两点:赚得到钱 + 工作舒服/顺心,两者兼顾最好,当然事事难两全,选钱还是生活就交给大家了,祝大家都能找到满意的工作,赚到更多的碎银!!
hao898 发表于 2023-10-12 09:22:30|来自:北京 | 显示全部楼层
不多bb,直接上公司汇总,方便大家收藏和投递,后面附大厂应届生薪资
北京


上海


深圳


成都


重庆


厦门


广州


杭州


武汉


南京


此外,读本科和研究生期间,我买了很多书,大部分是一些技术书籍,也收集了这些书籍的电子版,都在这里,现在免费share给大家。


书籍download:

计算机必看经典书单(含下载方式)​mp.weixin.qq.com/s?__biz=MzkyMTI3Mjc2MQ==&mid=100002220&idx=1&sn=8e17cc87f65e83880afbf51402e606a6&chksm=4187617a76f0e86cb73da6281732b97bf8185d97d3283801a4b80393131f5c6ecb94a00164e9#rd​mp.weixin.qq.com/s?__biz=MzkyMTI3Mjc2MQ==&mid=100002220&idx=1&sn=8e17cc87f65e83880afbf51402e606a6&chksm=4187617a76f0e86cb73da6281732b97bf8185d97d3283801a4b80393131f5c6ecb94a00164e9#rd​mp.weixin.qq.com/s?__biz=MzkyMTI3Mjc2MQ==&mid=100002220&idx=1&sn=8e17cc87f65e83880afbf51402e606a6&chksm=4187617a76f0e86cb73da6281732b97bf8185d97d3283801a4b80393131f5c6ecb94a00164e9#rd​mp.weixin.qq.com/s?__biz=MzkyMTI3Mjc2MQ==&mid=100002220&idx=1&sn=8e17cc87f65e83880afbf51402e606a6&chksm=4187617a76f0e86cb73da6281732b97bf8185d97d3283801a4b80393131f5c6ecb94a00164e9#rd
包括了计算机类常用电子书,包括C,C++,Java,Python,Java,Linux,Go等。
互联网大厂应届生薪资

此外,再来带大家来看下2021届秋招中,国内10大互联网公司的应届生年薪。
本文涉及到的薪资数据大多整理自知乎、脉脉、OfferShow、牛客等,如有错漏,欢迎指正。
腾讯



腾讯还有住房安居计划,今年额度也提高到了90w,整体待遇非常的香,是国内C++选手的首选。
阿里



阿里巴巴享受政府人才补贴,今年毕业的双一流大学及部分海外高校的本科生有8w,硕士则有10w,是国内Java选手的首选。
字节



字节跳动对应届生还是非常大方的,不仅有免费三餐,而且不分工作年限所有人每月1500元房补,只要地铁或者单车20分钟以内的距离都可以。
百度



作为老牌BAT之一的百度,虽然百度薪资略低一些,但百度技术岗的个人成长空间还是非常不错的。而且签三方再去实习,实习工资是正式的90%,还是很香的。
快手



老铁厂的福利是很不错的,公司免费提供午饭、晚餐,每人每天是120元的标准,非常丰盛。而且在公司附近租房有补贴,房补2000元/月。如果不住附近,晚上10点之后打车报销。
美团



号称开水团的美团今年校招开始放大招,涨薪幅度超级大,以算法的最高档总计为例 48w,相比去年算法岗最高档 offer 35w,整整多了 13w,如今已是香水团。
拼多多



拼多多还是一如既往的舍得砸钱,但拼多多也是超级累,别人家的大小周是一周双休、一周单休,拼多多的则是一周单休,一周无休。
京东



京东的薪资待遇应该是互联网企业里算中游的,大部分部门都是有双休的。
滴滴



滴滴的补充商业保险福利计划,不仅员工的全部医疗费用能够报销,还能通过弹性自选让爸妈、配偶、子女也享受这个福利。
网易



网易作为老牌的互联网公司,应届生薪水还算中规中矩。
最后, @程序员库森
帮我点个赞呗~
limao100 发表于 2023-10-12 09:22:48|来自:北京 | 显示全部楼层
最近陆陆续续有几个涅槃计划的学生跑过来找我提前改简历,说要参加2022年的的暑期实习,我才意识到:2022年的校招其实已经开始了·······
最近几年校招的时间越来越早,竞争早已从暑期实习就已展开,更不用说六七月份的提前批。所以咱们一定要尽早准备,争取先发优势。
作为几年前参加过惨烈的秋招,现在已经在互联网行业做了6年产品的说一下该如何高效的准备校招。
校招的准备,总共分为以下几个步骤:
步骤1:简历的准备

求职的第一关就是简历撰写。简历是我们能否拿到面试的敲门砖,因为简历质量的高低直接影响筛选通过率。
1)如果已经有完整的项目经验或者实习经验,但是不知道该如何撰写简历,建议可以参考之前的写的一篇高赞答案:
通过BAT、网易、京东产品经理的简历大概什么样?
2)如果马上面临校招了,然后简历上还依然没有任何项目或者实习经历,这时候就需要抓紧想办法弥补了,不然很可能拿不到面试,变成一个”陪跑“的人。如何才能在没有实习的情况下,去弥补项目经验呢?建议参考下面这篇文章:
薛老板:2021年,写给想转行做产品经理的你
步骤2:群面的准备

对于应届生秋招和春招而言,大部分情况下第一轮面试就是群面。群面的淘汰率相当高,一般是10进2的比例,针对这个通往offer之路上的“拦路虎”大家一定要重视。
针对群面的准备,主要有两个维度:
1)群面真题的回答技巧,即群面之道
2)  群面如何争取到自己擅长的角色,即群面之术
关于这两部分的内容,建议大家参考之前的回答:
群面的无领导小组讨论中应该怎样表现好呢?
步骤3:公司的挑选【有哪些值得加入的互联网公司】

参加校招前,相信大家心中已经有了一个最想去的城市。比如我当年是在北京读的书,有特别多的朋友,而且自己本身也是北方人,我会更倾向于留在北京。南方没有湿冷的冬天我真的害怕,所以秋招我拿到了腾讯的offer,最终也没有去。还比如你作为一个北京人,就算长沙/西安有很好的公司,你也大概率不会考虑对不对?
其次,想清楚要留在哪个城市之后,我的建议是海投这个城市的目标岗位,尽可能多的投递。在拿到offer之前就开始纠结哪家公司福利好,哪家公司好不好都是耍流氓。都给你发offer呢就开始想这些问题是不是有点早?等你拿到多家offer之后我们在从收入、福利、发展前景、工作氛围灯维度去对比才更有意义。
基于以上两点,我会主要基于城市这个维度来梳理值得去的公司(注;只梳理了自己认为值得去的公司,不知名的小公司几乎没有梳理,欢迎拍砖及补充):
北京:

百度【可内推】、京东【可内推】、字节跳动【可内推】、美团、滴滴、小米【可内推】、腾讯科技(北京)、阿里健康;
爱奇艺、网易有道【可内推】、搜狐、新浪【可内推】、高德、搜狗、58同城、360、知乎【可内推】、新浪微博、猎豹移动、微软中国;
猿辅导【可内推】、陌陌科技、Vipkids、去哪儿网、盛大文学、自如网、凤凰网【可内推】、穷游、36氪、虎嗅、豆瓣【可内推】、拉勾、宜信【可内推】、人人车、马蜂窝、用友软件、美菜网、学而思、旷视(face++)【可内推】、智联招聘、完美世界、搜狐畅游、甲骨文、新浪乐居、猎聘网、金山软件、汽车之家、粉笔网【可内推】、艺龙旅行网、赶集网、中华英才网、印象笔记、轻课【可内推】、兰亭集势、易车网、折800、蓝港互动、看准网、酒仙网、宝宝树、百合网、开心网、一点资讯、大街网、寺库网、果壳网、墨迹天气、豌豆荚
上海:

拼多多、携程【可内推】、饿了么、大众点评、前程无忧、盛大网络、爱回收、小红书【可内推】;
触宝科技【可内推】、学霸君、巨人网络、安居客、拍拍贷、优步、网宿科技、东方财富网、驴妈妈旅游网
深圳:

腾讯【可内推】、大疆【可内推】、华为、百度深圳分公司、字节跳动深圳分公司【可内推】;
珍爱网、平安科技、深信服科技、迅雷、土巴兔、房多多、微众银行、人人都是产品经理
广州:

腾讯微信、网易游戏【可内推】、唯品会、百度广州分公司、卓越、欢聚时代、三七互娱、腾讯大粤网
杭州:

阿里巴巴(淘宝、天猫、蚂蚁金服、口碑)【可内推】、网易【可内推】、有赞、同花顺、蘑菇街、浙大网新、丁香园、美丽说、贝贝网、51信用卡管家
南京:

腾讯大苏网、苏宁易购、途牛、中兴软创、畅途网、趋势科技、焦点科技、西祠胡同、扇贝单词(贝湾教育科技)
成都:

阿里巴巴成都分公司、华为【可内推】、中兴软件、百词斩(超有爱科技有限公司)、英特尔产品(成都)、实习僧(成都萌想科技有限责任公司)【可内推】
武汉:

海豚浏览器/百纳信息【可内推】、美团榛果民宿【可内推】、斗鱼
西安:

暴走漫画、新蛋、西安新浪游戏
梳理清楚自己想去的城市及公司之后,再教大家一个高效的校招管理方法,其实就是项目管理技巧,自己校招的时候就是使用这种方法。
第一步:把自己最想去的公司罗列在公司名称一栏
第二步:去这些公司的校招官网,把宣讲会时间、网申时间、笔试时间、一面时间、二面时间、HR时间等信息都整理下来
第三步:每前进一步都要跟新一下这个表格,比如通过笔试收到面试通知;通过一面拿到二面通知;拿到offer等
流程结束的,比如已经拿到offer或者明确已经挂掉的,都标注一下,这些都不再需要关注,精力重点放到其他流程进行中的公司即可,争取多拿几个offer。



步骤4:开始面试

挑选好投递的公司之后,就需要开始准备面试了。 面试必然会遇到常见高频问题,这些问题一定不能临场发挥,而是需要提前准备,自己撰写答案,并且要背下来,下面帮大家梳理了高频20题及答案,供参考:
薛老板:产品经理面试习题大汇总
步骤5:offer的选择

经过面试”过五关斩六将“的残酷洗礼,相信很多人都拿到了自己心仪的offer,甚至有人拿到多个心仪的offer。
这时候拿到多个offer的人会纠结、会苦恼。到底该如何选择呢?毕竟这是人生很重要的第一步,哎,幸福的烦恼。
关于offer的选择建议大家从行业、城市、工资、待遇等维度进行选择,具体可以参考下面的文章:
薛老板:求职面试,拿到多个offer该怎么选择?
预祝大家2022年校招顺利,大吉大利,今晚吃鸡。
以下知乎高赞答案也许同样对你有帮助:
产品经理可能用到的专业术语有哪些?
2020 年校招,最值得加入的互联网公司有哪些?
为什么这么多人想转行做产品经理?
通过BAT、网易、京东产品经理的简历大概什么样?
产品经理需要懂技术吗?懂到什么程度?
产品经理不想做产品了能去做什么?
产品经理面试用的笔试部分问题和答案有哪些?
如何在群面中表现自己?
薛老板:产品经理面试必备常见10道题及解析
薛老板:2020年,写给想转行做产品经理的你
❤️看完两件事❤️

看完这篇内容之后如果对你有帮助,我想请您帮我两个忙:
1、点赞,让更多的人看到这篇内容(收藏又点赞,手拉手好朋友);
2、关注我和专栏,让我们成为长久的朋友关系,精彩回答可以第一时间收到;
谢谢您的支持!

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则