【面经】微软苏州+腾讯PCG

最近刚完成微软苏州的面试,微软面试体验非常的好,微软办公楼也很漂亮。
这次面试完成后相当于我的实习也尘埃落定。这期间在牛客网上看了不少面经,也来回馈一下。

微软苏州

微软从网申、笔试再到面试,均通过邮件发送通知,邀请现场面试会负责来回路费。

面试前一周邮件通知3.23下午3点面试,期间HR还电话联系最终确认了一下。

提前半小时签到,3点带我们一批人(大概十几个)上楼,稍等不多久面试官就来挨个叫了。

15.00 - 15.40 一面

简单自我介绍之后聊了两句就开始做题了。好像问了一下 Java 反射机制。

第一题是按序输出格雷码。输入的参数是格雷码长度N。

刚上来可能紧张,没什么思路。面试官问了我一下,就提示我是不是可以从前一个序列中找到规律。我一下子反应过来,就跟他说了我的想法。

一般在交流后如果觉得你的思路没问题,就开始在白板上写代码。要求是能运行的代码。

第二题是最长递增子序列。Longest Increasing Subsequence - LeetCode
我首先想到动态规划方法,就跟面试官说了一下。他说可以的,你想一下方程吧。
想好后和他交流了一下,这次没让我写代码,但让我继续优化。不过这次始终没想起来。

16.00 - 16.50 二面

二面的面试官非常和蔼,上来先英文自我介绍了一下,他说是2分钟左右。
因为我自我介绍中提到了Java,于是他开始问Java的知识,包括GC、运行时栈帧、与C++相比有何不同等。
也就几分钟之后开始做题。这次题目是求二叉树中任意两点形成的路径上节点(每个节点有个值)之和的最大值。
我想到方法后也是先跟他确认,然后开始写代码。写的时候我还问他节点值是否可能为负。
写好代码之后他会仔细看代码。(一面面试官也很仔细)几乎是一行一行地读。
这次读代码解释代码的时间比较久。就没有第二题。

17.20 - 18.20 三面

三面应该是个Leader?也是先聊天,还说之前去南大宣讲我记不记得他。哈哈,我说你这么一说我才想起来。
他就空着手过来,不像一二面面试官(顺带一提,二面面试官用的 MacBook + macOS)。
就闲聊了几句,我就记得问我觉得自己的优势是什么。然后问了前两面问了啥题,然后开始做题。
这次这个题目罗里吧嗦的:
有三个转盘(A-Z),处于某一个状态start,比如MSF。求出将start转到另一个状态target所要转动转盘而形成的字符串序列。比如MSF->OFC:[MSF,NSF,OSF,OSE,...,OFC。此外,有另一个参数BlockList,是个字符串列表,输出的序列不能包含BlockList中的字符串,即转动时不能经过这些状态。
问我有没有问题他就出去了,我就开始写,我就组合了一个BFS和递归写了一个,有点乱,白板上也不好改。没过多久他就回来了。开始也像前两面一样逐行读代码,解释。我也不知道对不对🤦‍♂️。看他的表情也不知道对不对。
不过这次因为快到下班时间了,就很快结束了。

三面结束后出去没多久(大概2分钟)HR就过来跟我说通过了,但是可能还要后续比较,回去等邮件通知。

腾讯PCG

这个时间过去的比较久,我就根据手里当时记得几个关键词回忆一下。

3/13 一面

  1. C/C++
    1. C语言结构体字节对齐
    2. 申请空间、释放空间
  2. Java
    1. 列举异常
    2. 反射 私有属性能否修改
    3. 继承 私有属性是否继承
    4. 网络编程
  3. Android
    1. 四大组件。重点讲讲Broadcast
    2. Layout
    3. 实现微信底部导航栏用到什么。
  4. 智力题:五条线连十个点。(五角星)

其他就是聊了一下项目。

3/18 二面

一面当晚打电话约二面时间。二面面试时间长一点,什么都问,太可怕了。

  1. 计算机体系结构
    1. 虚拟地址空间
    2. 内存泄漏和内存溢出
    3. 线程和进程/多线程和多进程
  2. Java
    1. volatile 和 Lock
    2. ArrayList 和 Vector
    3. hash
    4. 网络编程
  3. 网络
    1. HTTP 协议
    2. 报文头的几个字段
    3. 断点续传
    4. socket
    5. ipv4 枯竭
  4. 设计模式
    1. 内聚 耦合
    2. 单例模式
  5. 数据库
    1. 几个 SQL 语句
    2. 事务
  6. 其他
    1. git 命令
    2. 简历中项目里的问题

最后还有好几个智力题(搞不懂是干嘛的)。倒水、找劣质硬币、切金条。

3/26 三面(加微信视频)

先来电话约时间,然后加了微信视频面🤦‍♀️。
这一面印象不是很深,几分钟聊了一下项目。
然后就问了C/C++的区别,C++/JAVA的区别。还有个什么 extern "C" 是干嘛用的。
还有一些经典问题:TCP三次握手四次挥手。JAVA动态绑定的问题。C++虚函数的问题。
然后给了一个问题:怎么实现对 8bit 二进制码是否为 “4个1,4个0” 的判定。时间复杂度一步步优化。这应该是编程之美上的一个以空间换时间的问题。
这一面比较轻松。半小时结束。

两天之后HR面。再两天之后OFFER。

#腾讯##微软##面经##实习##C++工程师##Java工程师#
全部评论
转盘那个题咋做呀😶
1 回复
分享
发布于 2020-02-22 19:25
大佬我和你一批面的微软苏州,所以你拿到offer没😂
点赞 回复
分享
发布于 2019-04-26 09:19
淘天集团
校招火热招聘中
官网直投
大佬,我也想去微软
点赞 回复
分享
发布于 2019-04-26 10:01
楼主你好,请问下二叉树最大路径和那题怎么做呀?
点赞 回复
分享
发布于 2019-04-26 10:07
请问下微软是内推的嘛,,在哪投呀。。。
点赞 回复
分享
发布于 2019-04-26 10:15
微软员工不用surface吗
点赞 回复
分享
发布于 2019-04-26 16:47
楼主面试微软是Android方向的吗
点赞 回复
分享
发布于 2019-04-29 20:05
楼主去哪里了
点赞 回复
分享
发布于 2020-03-04 18:04

相关推荐

招聘对象:2025届毕业生(2024年11月-2025年10月毕业)招聘岗位:基础平台研发工程师,负责分布式查询引擎内核模块的架构设计、开发、测试、性能调优等工作。base地点:杭州/上海     阿里云表格存储是一款分布式结构化数据存储的多模型数据库,诞生于 2009 年阿里云成立时,在 2014 年正式商业化面向公共云提供服务,最主要特点是分布式、Serverless、按量付费、水平扩展和查询功能丰富等。历经 10 余年的打磨,目前已在阿里巴巴集团、阿里云公共云以及专有云内得到广泛应用,涵盖电商、金融风控、物联网、人工智能、大数据、社交媒体等不同业务领域,支撑钉钉、优酷、手淘、IoT、计算平台等多个内部核心 BU 和业务。    表格存储丰富能力的背后,依赖底层的两大引擎:表格引擎和分布式查询引擎。分布式查询引擎团队近年来发展迅速,在 Serverless、多租户隔离、稳定性、高性能、成本方面投入了大量精力,取得了不少成果,相对于业界开源产品在稳定性、安全、性能和成本方面都有很大优势,团队技术水平在业界属于前列。    团队内的工作内容主要是分布式查询引擎内核的架构设计、开发等。团队有良好的新人培养机制,为实习生分配两位师兄,同时也会定期组织技术交流,讨论技术进展和相互学习。队内氛围融洽,沟通协作便捷高效,每个同学都能在有挑战的事物中挖掘自己的价值,期待志同道合的同学加入我们。岗位要求1. 需要熟练掌握 Java、C++、Rust 语言中的至少一项,了解关键功能的实现最好。2. 计算机类或者软件类专业,拥有扎实的计算机基础知识,包括计算机体系结构/网络/操作系统/数据库/并发编程等。3. 以下内容为加分项,对其中一项或者多项熟悉甚好:  a. 对分布式系统/存储/高可用等领域有兴趣,或有相关的背景/经验,例如 Elasticsearch、Lucene、HBASE、Cassandra、Clickhouse、Presto、Influxdb等等。  b. 了解分布式原理,例如CAP理论,RAFT、PAXOS等分布式一致性算法。  c. 学习过6.824/6.828/DDIA。  d. 参加过 ACM-ICPC 竞赛,获得过金牌或银牌。投递方式私戳 or 邮箱投递(pdf格式:姓名-学校-学历) #阿里云##阿里巴巴##实习##校招#
点赞 评论 收藏
转发
13 126 评论
分享
牛客网
牛客企业服务