📜  微软面试经历 |设置 176(校内)(1)

📅  最后修改于: 2023-12-03 15:39:34.823000             🧑  作者: Mango

微软面试经历 |设置 176(校内)

简介

在校内举办的微软校招活动中,我们进行了一场面试。在这篇文章中,我将分享我的面试经历和面试所涉及的主题。

面试流程

面试大致分为以下几个环节:

  1. 自我介绍,让面试官更加了解你。
  2. 技术考察,面试官会针对你的技术水平进行提问。
  3. 代码搭建,你需要在一定的时间内完成一个小型的代码项目。
  4. 项目介绍,针对你的代码项目,面试官会针对你的技术选型,架构设计等方面进行提问。
  5. 总结和结束。

整个面试流程较为系统和规范,面试官会根据你的回答情况和代码质量进行评判。

技术主题

在面试过程中,我们涉及了以下的技术主题:

  1. TypeScript: 面试官会针对 TypeScript 相关的语法,类型定义和转换等方面进行提问。TypeScript 在微软内部广泛使用,是一个非常重要的技术驱动。
  2. React: 面试官会针对 React 相关的生命周期,虚拟 Dom,渲染等方面进行提问。React 在微软内部也被广泛应用于各种业务场景中。
  3. 网络请求: 面试官会考察你的网络请求技能,比如使用 fetch,axios,XMLHttpRequest 等库进行请求。
  4. 数据库: 面试官会关注你对 SQL 和 NoSQL 相关数据库的了解和使用能力,包括但不限于 MySQL,MongoDB,Redis 等等。
代码片段

以下是一个实现一个获取 Github 用户名下的所有仓库信息 API 的 TypeScript 代码片段:

import axios from 'axios';

interface Repository {
  fullName: string;
  description: string;
}

async function getRepositories(username: string): Promise<Array<Repository>> {
  try {
    const response = await axios.get(
      `https://api.github.com/users/${username}/repos`
    );
    return response.data.map((repo: any) => ({
      fullName: repo.full_name,
      description: repo.description,
    }));
  } catch (error) {
    return [];
  }
}
总结

这是一次非常有收获的面试经历,在这次面试中,我加深了对技术的理解,同时也意识到自己需要进一步提升自己的能力。希望能对即将面试的同学提供一些参考和帮助。