面试经验——面试项目准备工作

摘要

本博文主要是分享个人在面试中对于项目思考,希望帮助大家能够面试中能够很好的介绍和分享自己的项目。在面试官心中留下一个好印象,希望你能拿到自己满意的offer。

一、面试项目常见问题

1.1 工作经历中,最优技术挑战/亮点的事情是什么?

这个问题应该提前准备,如果没有思考清楚技术亮点的工作经历,就不应该开始面试,并且在面试的时候尽可能引导到这个优势点上来。该同学明显就是没有准备过,听了之后没有面试官只有一个结论: 工作两年,没有什么亮点。

问自己几个问题,确定自己项目的亮点:

你负责的业务是什么?

这个业务中最明显最核心的价值是什么?最难的技术点在哪?(面试官通常不了解你的业务)

去问负责这块的同事/看公司wiki/代码/业界前沿分享 总结出这个问题的解决方法

基于smart法则叙述这个问题

录音给自己听,直到讲明白位置

讲给好哥们听,直到他听懂为止

1.2 讲一讲微服务是怎么拆分的?

这个问题,考察的是你对项目整体的一个描述能力,一方面看你项目的复杂程度,一方面看你表达程度,更深一点是看你对自身的业务是否有一定的思考? 该同学的回答,面试官的评价是: 。。。表达能力有所欠缺。

这块的知识可以去学习 DDD。

1.3 系统是怎么设计的?

该同学简历写到他做了一个**系统,但是讲的过于简单,其实这里是可以吹一下的,可见他平时并没有挖掘自己的业务场景,这种情况下,要么就别写,写了就要精通,按该同学的回答,面试官的结论是: 该同学平时对自身业务思考不到位,自驱型不足,没有onwer意识。

1.4 设计分布式锁?

这里从上面的项目经验中引出纯技术问题,考察候选人平时的技术水平以及技术积累。

候选人的回答只能给到2分,5分值。 2分代表不胜任岗位,第一表达不清晰,第二回答的过于八股文,没有看到自己的思考,第三 稍微将题目变形一下,比如去问 用redis怎么实现公平锁就完全没有思路,这显的候选人不够聪明,同时一个最大的忌讳是,候选人直接说不会,没有思路,这说明候选人抗压能力差,遇到技术难点就主动放弃,这样在平时的工作中将很难胜任较难工作的开发。

1.5  微服务系统中如何排查线上问题?

这就考察候选人的真实工作经验了,通常没有实际经验的人,这个问题根本回答不上来,如何排查线上这是一个很有区分度的问题,非常考验候选人的实际水平,回答的时候最好结合自己实际工作中遇到的真实问题,然后如何快速发现,止损,修复定位,如果回答的既有逻辑又体现技术,将非常加分。

这是一个直接看到水平的问题, 给该同学的评价是: 没有什么大型项目工作经验,后端经验需要进一步提升。

1.6 微服务的治理,限流,熔断,降级怎么做?

纯粹考技术积累的问题 网上直接百度去吧,是比较常见的问题,后端必须掌握,推荐看看大厂实现,有自己的思考,面试的时候不要怂,直接回答即可。

1.7 Redis的数据结构,跳表与B+tree的区别?

技术问题,基于该同学回答,面试过的结论: 基本没有啥基础,这些基础问题回答的比较差,非常减分,这些问题答好了不出彩,答坏了直接pass。

1.8 线上redis使用的是什么版本?高可用使用的是哪种技术方案?

回答了哨兵,但是哨兵原理答得有点粗糙。

1.9 TCP 三次挥手整个过程,如果中间被连接一端ack一直不会怎么办? time wait 是什么东西?

简历上写了熟悉socket,但是对tcp/ip协议栈不熟悉,可以看出基础知识需要进一步加强。

1.10 如何优化mysql慢查询?

简历上写着熟悉mysql,慢查询部分单独列出一项,但是询问到如何优化慢查询时候,前面说了一大堆没说到点子上。最后提示了才答上来,体验比较差。

1.11 redis的IO模型熟悉吗?reactor模型能给讲讲吗?epoll的原理是什么?为什么epoll可以支持高并发?

这部分答的太粗糙,可见对这部分理解不够深刻。减分太严重。网上随便找八股文即可。

1.12 输入网址到返回结果整个过程是什么?

简历上写熟悉http,所以这个问题应该能准确回答。但是回答比较混乱,这个很减分。

这块应该是所有后端必须准备的面试题,或者是最重要的,因为他代表着你整个后端知识体系,非常具有区分度,技术不扎实的人,可能就像该同学一样,回答一两句话就完事了,技术扎实的同学可以答出花来: 参考:

1.13 项目中扮演着什么角色?未来如果让你负责从0到1实现一个项目,你会怎么处理?

这个问题主要是想考察面试者整体把控能力,工作2年多,应该拥有owner意识。但是整个回答还是把自己当作执行者,缺乏思考和推进能力。

博文参考

浏览器输入 URL 之后发生了什么(面试必问)计网系列文章 - AcWing

从输入 URL 到页面展示到底发生了什么?看完吊打面试官! - 知乎

从输入URL到浏览器显示页面的流程 - Nyima's Blog

网络编程系列(select、poll、epoll、Reactor模型、Proactor模型)_哔哩哔哩_bilibili

七种方案!探讨Redis分布式锁的正确使用姿势 - 掘金

Redis实现公平锁 - 掘金

面试官:你真的了解Redis分布式锁吗?

redis 分布式锁进化史

微服务,中台和低代码平台_哔哩哔哩_bilibili

Docs

Docs

Docs

面试时项目亮点怎样回答才满分?_51CTO博客_面试java项目技术亮点

本人真实经历:面试了20家大厂之后,发现这样介绍项目经验,显得项目很牛逼!-腾讯云开发者社区-腾讯云

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/119703.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch聚合----aggregations的简单使用

文章目录 Getting started1、搜索 address 中包含 mill 的所有人的年龄分布以及平均年龄,但不显示这些人的详情2、size0不展示命中记录,只展示聚合结果3、按照年龄聚合,并且请求这些年龄段的这些人的平均薪资4、查出所有年龄分布,…

【Android Studio】工程中文件Annotate with Git Blame 不能点击

问题描述 工程文件中想要查看代码提交信息但是相关按钮不可点击 解决方法 Android Studio -> Preferences -> Version Control-> 在Unregistered roots里找到你想要的工程文件 点击左上角➕号 然后右下角Apply即可

Python分享之多进程初步 (multiprocessing包)

我们已经见过了使用subprocess包来创建子进程,但这个包有两个很大的局限性:1) 我们总是让subprocess运行外部的程序,而不是运行一个Python脚本内部编写的函数。2) 进程间只通过管道进行文本交流。以上限制了我们将subprocess包应用到更广泛的…

【异常】理解Java中的异常处理机制

标题:理解Java中的异常处理机制 摘要: 异常处理是Java编程中的重要概念之一,它可以帮助开发者识别和处理程序运行过程中的错误和异常情况。本文将深入探讨Java中的异常处理机制,包括异常的分类、异常处理的语法和最佳实践。通过示…

Filter过滤器和Listener监听器

2023.10.26 Filter过滤器 过滤器,顾名思义就是对事物进行过滤的。Web中的过滤器,就是对请求进行过滤,我们使用过滤器,就可以对请求进行拦截,然后做相应的处理,实现许多特殊功能。如登录控制,权…

uniapp开发小程序—picker结合后台数据实现二级联动的选择

一、效果图 二、完整代码 <template><view><picker mode"multiSelector" change"bindMultiPickerChange" columnchange"bindMultiPickerColumnChange":value"multiIndex" :range"multiArray"><view c…

基于FPGA的电风扇控制器verilog,视频/代码

名称&#xff1a;基于FPGA的电风扇控制器verilog 软件&#xff1a;QuartusII 语言&#xff1a;Verilog 代码功能&#xff1a; 基于FPGA的电风扇控制器 运用 EDA SOPO实验开发系统设计一个基于FPGA的电风扇定时开关控制器,能实现手动和自动模式之间的切换。要求: (1)KI为电…

【Gensim概念】03/3 NLP玩转 word2vec

第三部分 对象函数 八 word2vec对象函数 该对象本质上包含单词和嵌入之间的映射。训练后&#xff0c;可以直接使用它以各种方式查询这些嵌入。有关示例&#xff0c;请参阅模块级别文档字符串。 类型 KeyedVectors 1&#xff09; add_lifecycle_event(event_name, log_level2…

@AutoConfigurationPackage注解类

包名package org.springframework.boot.autoconfigure 方法 String[] basePackages() 向AutoConfigurationPackages中注册的基本包&#xff0c;使用basePackageClasses作为基于字符串的包的类型安全替代方案 Class<?>[] basePackageClasses() 键入basePackage…

APP破解去广告

1.修改图标和名称 名称直接改 找到图标在进去把他替换掉 2.修改app包名实现分身 修改包名实现app分身_Tian翊的博客-CSDN博客 3.修改资源去广告 安卓逆向006之修改APK资源去广告_修改安装包去除app内广告-CSDN博客 打开模拟器后在cmd命令行输入adb devices连接上 在模拟器中…

【多线程】探索Java中的多线程编程

标题&#xff1a;探索Java中的多线程编程 摘要&#xff1a; Java是一种广泛使用的编程语言&#xff0c;具有强大的多线程编程能力。本文将深入探讨Java中的多线程编程&#xff0c;包括线程的创建、同步与互斥、线程池的使用以及常见的多线程编程模式。通过示例代码和详细解释&…

每日一练——返回链表的中间结点

&#x1d649;&#x1d65e;&#x1d658;&#x1d65a;!!&#x1f44f;&#x1f3fb;‧✧̣̥̇‧✦&#x1f44f;&#x1f3fb;‧✧̣̥̇‧✦ &#x1f44f;&#x1f3fb;‧✧̣̥̇:Solitary-walk ⸝⋆ ━━━┓ - 个性标签 - &#xff1a;来于“云”的“羽球人”。…

【单元测试】--维护和改进单元测试

一、持续维护单元测试 持续维护单元测试是确保它们继续有效的关键。以下是一些方法来保持单元测试的可维护性&#xff1a; 集成单元测试到持续集成流程&#xff1a;将单元测试包括在持续集成&#xff08;CI&#xff09;流程中&#xff0c;确保它们在每次代码更改后都自动运行…

Dockerfile文件自动化生成R4L镜像

Dockerfile文件自动化生成R4L镜像的步骤 1、安装Docker&#xff1a;2、使用Dockerfile一键生成镜像&#xff1a;3、查看生成的Docker镜像&#xff1a;4、删除Docker镜像&#xff1a;5、生成Docker容器&#xff1a;6、查看容器7、删除容器 1、安装Docker&#xff1a; curl -fsS…

sqoop和flume简单安装配置使用

1. Sqoop 1.1 Sqoop介绍 Sqoop 是一个在结构化数据和 Hadoop 之间进行批量数据迁移的工具 结构化数据可以是MySQL、Oracle等关系型数据库 把关系型数据库的数据导入到 Hadoop 与其相关的系统 把数据从 Hadoop 系统里抽取并导出到关系型数据库里 底层用 MapReduce 实现数据 …

如何巧妙告知家长成绩分数

如何让学生和家长们查询期中考试成绩,一直是让许多老师都头疼不已的问题。今天我就来交给大家怎么解决这个问题。 我们先了解一下成绩查询系统是什么。在互联网高度发达的今天&#xff0c;成绩查询系统已经不再是学校的专属&#xff0c;而是可以通过网络平台进行操作的一种工具…

LVS负载均衡(LVS简介、三种工作模式、十种调度算法)

LVS简介 LVS&#xff08;Linux Virtual Server&#xff09;是一种基于Linux内核的高可用性负载均衡软件。它通过将客户端请求分发到多个后端真实服务器&#xff0c;提高系统性能和可靠性。LVS支持多种调度算法&#xff0c;如轮询、最少连接、源地址哈希等&#xff0c;用于决定…

利用MATLAB创建栅格地图(代码可复制)

先做一个声明&#xff1a;文章是由我的个人公众号中的推送直接复制粘贴而来&#xff0c;因此对智能优化算法感兴趣的朋友&#xff0c;可关注我的个人公众号&#xff1a;启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法&#xff0c;经典的&#xff0c;或者是近几年…

解决msvcp120.dll丢失的问题的5个方法,修复系统dll问题

在使用计算机的过程中&#xff0c;我们经常会遇到各种各样的动态链接库&#xff08;DLL&#xff09;文件。其中之一就是“msvcp120.dll丢失”。这个错误通常会导致某些应用程序无法正常运行。为了解决这个问题&#xff0c;我们需要找到合适的方法来修复丢失的msvcp120.dll文件。…

MVCC 过程中会加锁吗?

MVCC 机制&#xff0c;全称&#xff08;Multi-Version Concurrency Control&#xff09;多版本并发控制&#xff0c;是确保 在高并发下&#xff0c; 多个事务读取数据时不加锁也可以多次读取相同的值。 MVCC 在读已提交&#xff08;READ COMMITTED&#xff09;、可重复读&…