zoukankan      html  css  js  c++  java
  • 2020 年面试记录 [Microsoft / Coupang / CoinMarketCap]

    微软 O365 苏州

    一面

    • 算法题:给你一个字符串,输出所有字符能组成的不同的字符串的个数
    • 有什么想问的问题?
      • 小组负责的事情:中国美国双线汇报、Office 技术上 Azure、Azure 技术引入、老应用服务&容器化

    一面补充面

    • 中文自我介绍
    • 介绍一个在阿里的项目、遇到了哪些难点以及怎么解决的
    • 为什么想换工作(答:WLB & 技术挑战)
    • 有什么想问我的(具有什么特质的人更能在微软发展的更好?)
    • 英文问答:解释序列化和反序列化是什么
    • 在记事本上共享屏幕写题(英文):
      • 给一棵树,实现序列化和反序列化函数,在Windows记事本上手写,并英文解释问答
      • 面试官说最好用 non-recursive,然后我懵了不会写最后用的 recursive,代码
    • 问我今天的安排,请假了还是?

     

    Coupang - 上海

    一面

    基本没有印象了... 应该是基础知识面(好像有问 JDK 8 新特征)

    二面 - 项目面

    • 自我介绍
    • 介绍考核项目、遇到的问题、难点、指标介绍等
    • 介绍分层项目,遇到的难点,稳定性怎么优化的
    • 介绍数据化项目,数据来源等
    • 有什么想问的:负责的事情、技术挑战

    三面 - 基础算法面

    四面 - 进阶算法面

    • 算法题1:给一个表达式如 1+2*4-5/2,只有加减乘除,问最后结果是多少
    • 算法题2:给几种金额的硬币,和物品总价值,问有几种组合法,LeetCode 原题现场代码
      • 如果有特殊输入,比如金额或价值为 0 或负数怎么处理(考察边界、抛异常等)
    • 做完还没结束,问了其他:如何保证消息队列的 消息不重复、消息不丢失

    五面 - 系统设计/架构面

    • 设计一个分布式任务调度系统:产品功能、整体架构设计、细节设计
    • 设计一个分布式爬虫系统:Master / Slave 设计、任务调度&优先级、去重、一致性 Hash、存储 等
    • 有什么想问的:日常工作模式和强度(貌似不应该在终面问这个...)

     

    CoinMarketCap - 上海

    一面

    • Java 中 HashMap 和 ConcurrentHashMap 原理
    • 类加载过程、垃圾收集器、Java 内存区域划分、OOM
    • 线程状态、线程池
    • 项目开发模式、为什么想换工作
    • 有什么想问的:公司状况、加班情况(据说到 9 点,去了主要做项目迁移)

     

    微软 Intune 苏州

    一面 

    • 面试官自我介绍,对方是前端,目前前后端分工比例大概是3:7
    • 简单介绍目前所做的一个项目,技术栈、项目中的角色等
    • Java 中 HashMap 的原理,复杂度等
    • HTTPS、HTTP 的区别,SSL 加密过程,对称加密还是非对称
    • 数据库使用哪些?是否用过 MongoDB,与  MySQL 这类数据库的区别
    • 算法题,可以用 IDE
      • 基础:给二维数组,1 代表有路,0 反之,点可以走向上下左右;给两个坐标,问是否连通(BFS)
      • 进阶1:给出两个点之间的距离,求两个坐标的最短距离(单源最短路)
      • 进阶2:给任意两个坐标,连续查询是否连通,优化复杂度(并查集)
    • 时间剩不多了,想再做题还是问面试官问题?
      • 我选择问面试官问题:组里做的事情、跟美国合作情况、加班情况

    二面

    • 自我介绍
    • 项目中遇到的难点是什么,怎么解决的
    • 常用什么设计模式?单例模式在序列化场景会多个,如何解决
    • 项目是什么架构?微服务还是单体?互相之间怎么联动?
    • 用的缓存在高可用方面有什么考虑?缓存穿透和雪崩是什么,怎么解决?
    • Java 中的 HashMap、HashTable、ConcurrentHashMap,及 1.8 优化
    • 算法题1:给一个只有 0 1 2 的数组进行排序;代码
    • 算法题2:实现 LRU:代码;进阶:实现 LFU

    三面

    • 介绍最拿得出手的项目、具体怎么解决的
    • 做题:给一些课程及依赖的前导课程、一个同学想上的所有课程(不想上这之外的课程),输出上课顺序,如果不能上完,返回空
    • 进阶:这个同学可以上这些课的前导课程了,输出上课顺序;代码

    四面

    • 自我介绍,最有亮点的项目介绍
    • 短网址服务设计、进阶设计(高 QPS)、代码实现 long2short、short2long;现场代码
    • 如果需要去支持前端的项目,是否愿意
    • 英语怎么样(时间不够没有问题英语的问题)
    • 有什么想问我的,项目的前景、目前的业务开发节奏怎样

    五面

    • 这轮是全英文面,附上大佬 LinkedIn:https://www.linkedin.com/in/nathansgreen/
    • 面试官介绍整个面试流程、面试官自我介绍
    • 英文自我介绍;介绍做过的项目、难点、解决;在项目中的角色,其他人的角色
    • 算法题:字符串压缩,aaaaccdddggg 压缩成 a{4}c{2}d{3}g{3}
      • 用啥语言写?思路是什么、编码
      • 异常输入如何解决思路,考虑字符非常多的情况,用 int 是否合适
      • 如果使用 bigInteger 用 cplusplus 如何实现?
      • 如果使用 bigInteger 在 decompress 时候会不会有问题,如果数据太大会不会爆掉内存,如何解决
    • 设计题:一个数据,来自于多个数据源,如果在查询、排序、过滤的时候都有比较好的体验?(崩了,本来思路就不是很好,解释起来还比较麻烦... 面试官怕我听力有毛病直接手打字了)
    • 有什么想问面试官的:What kind of people do well in your team or company?

    六面

    • 这轮是中文面,附上大佬 LinkedIn:https://www.linkedin.com/in/jeff-liu-82a651107/
    • 面试官介绍整个面试流程
    • 自我介绍、最优难点的项目
    • 日常需求如何管理
    • 算法题:给一个数组,数字是有序的,其中缺失1个数,输出这个数,如 1,2,3,5 输出 4。思路和code,单步样例跟踪讲解:现场代码
      • 进阶1:如果缺失了多个数,输出所有缺失的数字,怎么解决?
      • 进阶2:如果只需要求缺失了多少个数字呢?
    • 对于整个面试有什么问题?面试感受怎么样?有什么想问我的?

    心得体会

    • 记得几年前有个阿里同事说,每年都要去外面面试看看,看看自己的水平怎么样了,也看看外面的行情
    • 面试不仅仅是面试官对候选人的选拔,也是候选人对于各公司的很好的了解的途径。面试官的考察方式、技术水平、是否尊重人、甚至面试邀约安排方式 都很重要
    • 好的面试不应该是考察八股文(如红黑树旋转原理),而是引导候选人不断深入思考,最大程度挖掘候选人的横向和纵向潜力,再看是否符合公司对人的要求

     

  • 相关阅读:
    JSONP的学习(收集整理)
    10个必备的移动UI设计资源站(转)
    iscroll4框架解析[webapp开发](转)
    IE9中Media queries在iframe无效的解决方法
    mustache模板技术
    企业级的响应式设计(Responsive design at enterprise level)译
    在JSP中使用jQuery的冲突解决(收集整理)
    Java开发 Eclipse使用技巧(转)
    Front End中Javascript兼容问题收集(转)
    vector it->和*it
  • 原文地址:https://www.cnblogs.com/kunsoft/p/13781816.html
Copyright © 2011-2022 走看看