阿里面试,有点焦虑。。
恭喜发现宝藏!搜索公众号【TechGuide】回复公司名,解锁更多新鲜好文和互联网大厂的笔经面经,目前已更新至美团、字节…
作者@TechGuide【全网同名】
聊聊春招
春招来了,有些24届校招生可能还在做最后的努力,有些25届的小伙伴可能想要找到一个大厂实习给简历镀金。我知道,面对即将来的笔试面试,许多同学可能感到压力山大,焦虑不安。但是请记住,焦虑是一种正常的情绪,更是一种可以被转化为动力的能量。那么,如何化解焦虑呢?那就是,行动起来!
不想听声哥唠叨的可以直接跳到面试题目的部分~
-
首先,让我们正视焦虑,而不是回避。对于校招的不确定性,我们可以通过更积极的准备来缓解焦虑。笔试可以把历年考过的编程题认真刷一刷,根据TechGuide四年多做笔试题的经验来看,很多大厂的真题库是重复考察的,比如华为、美团这些…,所以只要力扣基本过关,加上往年真题的积极练习,通过笔试和面试的手撕算法问题不大,甚至能直接碰到笔试原题。切记,不是刷越多题越好,而是要注重理解算法思想和解题方法。逐步提升自己的解题速度,这将在笔试和面试中帮助你游刃有余。
-
其次,交流和合作也是减轻焦虑的有效途径。在这个过程中,和同学们多交流、相互学习,共同进步。可以参加牛客小圈子、大厂校招群等等,与他人分享学习心得、讨论技术问题,这样能够拓宽自己的视野,收获更多的知识。记住,团队合作是我们未来职场中必不可少的能力,而从现在开始培养这个能力将对你未来的职业生涯大有裨益。
-
此外,项目实践也是提高竞争力的关键。多参加一些实验室课题/实习,哪怕是自己做一些github开源的项目,将理论知识应用到实际中。这不仅能够提升你的编程能力,更能在面试中让你更有底气地回答问题。这是一种能够让你对计算机专业有更深刻理解的方式,同时也会让你在面试中更具自信。
-
最重要的是,别忘了保持良好的心态。焦虑是人生旅途中的一部分,但它不应该成为我们前行的绊脚石。记住,每一次笔试面试的挫折和失败都是成长的过程,通过好好滴复盘,它们会让我们更加坚韧,更加勇敢。在面对校招的压力时,保持积极的心态,相信自己,你一定能够迎接所有的挑战,拿到满意的offer!
下面看下阿里云的三轮面经,好好地复盘模拟下吧~
基本情况
投递岗位:后端开发
投递部门:阿里云
招聘类型:暑期实习
Base地点:杭州
问题记录
一面(60 min)
电话面。一开始知道是电话面试,本来以为不需要写算法题的,谁知道最后感觉快结束的时候发了个链接过来让打开写Orz,所以一定要做足准备,不要心存侥幸哎。
- 自我介绍
- 项目简单介绍。大概说下做了哪些项目,项目的需求是什么,大概用到了哪些技术栈;
- Java相关:String为什么是不可变的?Java相关:String、StringBuffer和StringBuilder的区别?
- Java相关:在循环内使用“+”进行字符串拼接的话会有什么问题?
- JVM相关:堆空间的结构?分配策略有哪些?
- JVM相关:Minor GC和Full GC的区别?
- Linux相关:文件的概念?(可能是想让我指出Linux中所有内容都是以文件的形式保存和管理)
- Linux相关:文件有哪些类型?各自的作用是什么?
- Linux相关:inode的作用?inode包含哪些内容?给出一个文件名,Linux是如何根据该文件名打开文件的?(文件名->inode->block)文的访问时间是如何记录的?
- Linux相关:零拷贝是什么?用来解决什么问题?有哪些应用场景?实现方式有哪些?
- Linux相关:压缩和解压使用的命令?相关参数的作用?
- 网络相关:TCP 和 UDP 可以使用同一个端口吗?
- 网络相关:三次握手与四次挥手流程?TIME_WAIT出现在什么时候?要等待多久?(2MSL)为什么要等待这么久?
- 算法题:Leetcode15 三数之和
二面(75 min)
- 自我介绍;
- 项目介绍:参与了哪些项目,自己挑一个项目详细展开,介绍项目的创新点和难点,针对其中存在的问题有没有一些思考;
- 实习经历介绍:介绍下完成了哪些需求,业务流程,完成需求过程中遇到了哪些问题,如何解决的;
- Mysql相关:MyISAM和InnoDB的区别?(行级锁、事务、外键、崩溃后的安全恢复、MVCC、性能等)
- Mysql相关:索引的底层数据结构?为什么选择这样的结构?(B+树)
- Mysql相关:自己选择维度划分介绍有哪些索引类型?(按照底层存储方式角度划分:聚簇索引和非聚簇索引)
- Mysql相关:最左前缀匹配原则是什么?自己举例进行说明;
- Mysql相关:索引下推是什么?(在遍历过程中,对联合索引中包含的字段先做判断,直接过滤掉不满足条件的记录,减少回表次数)
- Mysql相关:事务隔离级别?InnoDB引擎的默认隔离级别?InnoDB引擎如何解决幻读?(读未提交、读已提交、可重复读、串行化)
- Mysql相关:你在项目中使用了哪些方式来对数据库查询进行优化?
- Spring相关:介绍下IoC和AOP?在项目中哪些地方有使用?(Mybatis)
- Spring相关:介绍下项目中和数据库有关的操作?在Spring中连接数据库进行数据插入操作时有哪些需要注意的地方?
- Spring中事务传播行为有哪些?你在项目中基于什么考虑使用的?(TransactionDefinition.PROPAGATION_REQUIRED、TransactionDefinition.PROPAGATION_REQUIRES_NEW、TransactionDefinition.PROPAGATION_NESTED);
- Spring相关:bean的生命周期?有哪些注入方式?(构造器、setter和属性注入)
- Spring相关:线程池有哪些核心参数?各自的作用?项目中如何使用的?(核心三参数:corePoolSize、maximumPoolSize和workQueue)
- 并发相关:进程、线程和协程的区别和作用?
- 并发相关:volatile关键字的作用?在保证线程安全的情况下实现单例对象的获取?(双重校验锁)
- 并发相关:synchronized关键字的作用?底层实现原理?和ReentrantLock的区别?锁升级及实现原理?(偏向锁->轻量级锁->重量级锁)
- Redis相关:有哪些持久化方式?AOF和RDB的底层实现原理?在项目中用的是哪种?基于什么考虑使用的?
- Redis相关:引入哨兵集之后,主从故障的转移过程?
- Redis相关:Redis是单线程吗?采用单线程为什么速度快?
- Redis相关:Redis阻塞的原因有哪些?出现阻塞后的排查以及解决方式?
- 算法题:Leetcode53 最大子数组和;
- 算法题:Leetcode146 LRU缓存。
二面开始针对项目和实习经历的追问开始变得多了起来,而且会在听你介绍的时候针对其中的一些点展开追问,这个过程中会涉及到八股文的提问。所以,在准备项目的过程中,一定要好好想想项目用到了哪些技术,相关的知识点最好都多看看,这些在面试中都是极有可能会问到的。二面开始,面试官会更加看重你在做项目过程中的一些思考,比如遇到问题的解决方式和一些反思总结。因此,除了八股文外,还应该多思考下自己项目的亮点,最好有一些别人没有的创新点,这样会很有优势。在介绍项目的时候也可以简单说说你通过项目学到了什么,有哪些总结思考,以此来展示自己的学习能力。
PS:本来是给的一道算法题,估计看我写的很快,问我是不是做过,回答是之后又给了一道Orz。也许做题速度也需要稍微控制控制hhhhh。
三面(50 min)
- 自我介绍;
- 项目相关:面试官挑了其中一个项目让介绍,主要是问了项目的技术栈、实现效果和创新点;
- 实习经历相关:概述一下完成了哪些具体需求,以及这些需求所涉及的业务流程。在实现这些需求的过程中,遇到了哪些挑战和困难?又是如何有效地解决这些问题的?具体的解决方案和应对策略。
- 场景题:不考虑系统限制,如何快速在大量字符串中统计出现次数前10的字符串?如果考虑内存限制,应该采取什么措施在海量数据中进行统计?
- 场景题:设计实现一个高可用、高并发的系统,讲讲有哪些需要注意的地方?对于突发的大流量有哪些处理方法?热点数据有哪些处理方法?
- Redis:刚刚场景题中用到了redis,为什么redis是单线程但速度依旧很快?
- 操作系统:介绍下IO多路复用?select、poll和epoll各自的区别?
- 操作系统:磁盘快照有了解吗?介绍下COW和ROW?
- 操作系统:进程、线程和协程各自的作用和区别?进程和线程的组成?
- 操作系统:CPU数量为1的进程执行死循环会发生什么?如何解决?
- 计算机网络:有哪些网络攻击方式?在项目中针对可能的网络攻击采取了哪些相应的防范措施?
- 计算机网络:cookie、session和token的区别?各自的使用场景?
- 数据库:项目中使用了NoSQL和MySQL,说说NoSQL和关系数据库的区别?
- 其他:最近在看什么书?有哪些收获?
- 其他:大学以来最有成就感的一件事?
- 其他:有多家公司的offer根据什么标准进行选择权衡?
三面没有算法题,相比一面二面主要增加了场景题的询问。在整个面试过程中,感觉面试官比较看重个人的思考,比如场景题中你说了一种设计思路,面试官会问你觉得目前的设计还有没有可以提升的地方,这种时候即使回答的不是标准答案,面试官也很高兴地会和你进行探讨。此外,一些其他问题也会在三面和后续的hr面多起来,这些也可以稍微准备准备。
相关文章:
阿里面试,有点焦虑。。
恭喜发现宝藏!搜索公众号【TechGuide】回复公司名,解锁更多新鲜好文和互联网大厂的笔经面经,目前已更新至美团、字节… 作者TechGuide【全网同名】 聊聊春招 春招来了,有些24届校招生可能还在做最后的努力,有些25届的…...
24计算机考研调剂 | 石家庄铁道大学
01石家庄铁道大学 智慧交通研究室招少量调剂学术型硕士(数一英一320分以上工科专业) 考研调剂招生信息 学校:石家庄铁道大学 专业:工学->计算机科学与技术->计算机应用技术 工学->测绘科学与技术->地图制图学与地理信息工程 工学->交…...
勇敢尝鲜之Springboot3大坑-集成Mybatisplus报错:ddlApplicationRunner
🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 往期热门专栏回顾 专栏…...
linux高级编程:线程(二)、进程间的通信方式
线程: 回顾线程(一): 1.线程间通信问题 线程间共享同一个资源(临界资源) 互斥: 排他性访问 linux系统 -- 提供了Posix标准的函数库 -- 互斥量(互斥锁) 原子操作&#x…...
Unity 佳能SDK 及数据获取
1. 填写信息跟官方申请SDK,大概1-2个工作日会邮件回复你 佳能(中国)- 佳定制(佳能影像产品),SDK,EDSDK,CCAPI,软件开发包下载 2. 将SDK这两个文件放到 Unity Plugins文件夹 3. 把CameraControl 下面只要是绿色的 .cs 文件都复制到Unity 中...
Unity(第二十三部)导航
你可以使用 unity官方提供的 unity导航组件或第三方 unity导航组件,以实现游戏中角色或其他物体的导航。 unity导航组件通常具有多种导航模式,如飞行模式、步行模式、车辆模式等,可以根据不同的需求选择合适的模式。同时,unity导…...
根据建表sql语句生成go的struct代码工具
sql2struct 一个根据"CREATE TABLE"建表语句生成对应的Go语言结构体的工具,暂只支持 MySQL 表。 开发目的 在 github 中找到一些 sql2struct,但要么是 chrome 插件,要么是在线工具,要么是需要连接 MySQL,…...
Qt 自定义长条进度条(类似播放器进度条)
1.运行界面 2.步骤 其实很简单。 2.1绘制底图圆角矩形 2.2绘制播放进度圆角矩形 参考:painter绘图 3.源码 #pragma once#include <QWidget> #include <QLabel> #include <QHBoxLayout> #include <QMouseEvent> #include <QDebug&g…...
休息日的思考与额外题——双指针、原地哈希day28
文章目录 前言一、11. 盛最多水的容器二、41. 缺失的第一个正数三、42. 接雨水总结 前言 一个本硕双非的小菜鸡,备战24年秋招,计划二刷完卡子哥的刷题计划,加油! 二刷决定精刷了,于是参加了卡子哥的刷题班,…...
数据修改
Oracle 目录 数据修改 将员工编号的 7369 的员工工资修改为 810,佣金改为 100 将工资最低的员工工资修改为公司的平均工资 将所有在 1981 年雇佣的员工的雇佣日期修改为今天,工资增长 20% 数据的更新操作 Oracle从入门到总裁:https://blog.csdn.n…...
Android JNI复杂用法,回调,C++中调用Java方法
Android JNI复杂用法,回调,C中调用Java方法 一、前言 Android JNI的 普通用法估计很多人都会,但是C中调用Java方法很多人不熟悉,并且网上很多介绍都是片段的。 虽然C/C调用Java不常用,但是掌握多一点还是有好处的。…...
C++从零开始的打怪升级之路(day41)
这是关于一个普通双非本科大一学生的C的学习记录贴 在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料 那么开启正题 今天分享的是关于继承的知识点 1.派生类的默认成员函数 首先我…...
uni-app app实现web-view H5图片长按下载
问题和使用场景描述: uniapp app web-view中图片无法长按保存,IOS下是正常的,但是Android下长按无反应 解决方案: 下载mui.min.js,放到项目中的static下(下载见最上面的压缩包) 在static目录下新建script.js mui.…...
全量知识系统问题及SmartChat给出的答复 之5
Q15. 支持前端(知识表征)的自然语言能力 需要一个 元语言注释工具 以及两个库(叙词库和语料库)和主题词表。请 1)设计 两个库和主题词表的结构 ,2)分别设计它们的接口,3)通过调用它们…...
DolphinScheduler——工作流实例的生命周期
目录 一、DolphinScheduler架构原理 1.1 系统架构图 1.2 DolphinScheduler核心概念 1.2 创建工作流 1.2.1 如何触发一个工作流实例 1.2.2 任务调度链路监控 1.2.3 Workflow-DAG解析 DAG解析 Dispatch分发流程 Master和Worker的交互过程 1.3 任务运行状态 该篇文章主…...
阻塞和非阻塞网络io有什么区别,分别有哪些应用场景?
阻塞(Blocking)和非阻塞(Non-blocking)网络I/O是两种不同的I/O模型,它们在处理I/O操作时的行为和特点有所不同。 阻塞式网络I/O(Blocking I/O): 在阻塞式网络I/O中,当应…...
面试数据库篇(mysql)- 12分库分表
拆分策略 垂直分库 垂直分库:以表为依据,根据业务将不同表拆分到不同库中。 特点: 按业务对数据分级管理、维护、监控、扩展在高并发下,提高磁盘IO和数据量连接数垂直分表:以字段为依据,根据字段属性将不同字段拆分到不同表中。 特点: 1,冷热数据分离 2,减少IO过渡争…...
LaTeX中的多行数学公式
目录 参考链接 一、gather以及gather*环境编排公式 1、 gather环境 2、 gather*环境 3、 阻止编号 二、align以及align*环境设定公式对齐方式 1、align环境 2、align*环境 三、split环境实现一个公式多行排版 四、cases环境实现分段函数 参考链接 LaTeX中的多行数学…...
绕过5秒盾Cloudflare和DDoS-GUARD
绕过5秒盾Cloudflare和DDoS-GUARD 5秒盾的特点免费版5秒盾的绕过方法付费版5秒盾的绕过方法 5秒盾的特点 <title>Just a moment...</title>例如: <!DOCTYPE html><html lang"en-US"><head><title>Just a moment...</title&…...
react 原理揭秘
1.目标 A. 能够知道setState()更新数据是异步的 B. 能够知道JSX语法的转化过程 C. 能够说出React组件的更新机制 D. 能够对组件进行性能优化 E. 能够说出虚拟DOM和Diff算法 2.目录 A. setState()的说明 B. JSX语法的转化过程 C. 组件更新机制 D. 组件性能优化 E. 虚拟DOM和D…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
JavaScript基础-API 和 Web API
在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...
STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...
Python 实现 Web 静态服务器(HTTP 协议)
目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1)下载安装包2)配置环境变量3)安装镜像4)node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1)使用 http-server2)详解 …...
Linux部署私有文件管理系统MinIO
最近需要用到一个文件管理服务,但是又不想花钱,所以就想着自己搭建一个,刚好我们用的一个开源框架已经集成了MinIO,所以就选了这个 我这边对文件服务性能要求不是太高,单机版就可以 安装非常简单,几个命令就…...
