面试

三年半Java后端面试经历

邮差的信 提交于 2021-01-23 08:18:01
<p>经过半年的沉淀,加上对MySQL,redis和分布式这块的补齐,终于开始重拾面试信心,再次出征。</p> <h3>鹅厂</h3> <p>面试职位:go后端开发工程师,接受从Java转语言 </p> <p>都知道鹅厂是cpp的主战场,而以cpp为背景的工程师大都对os,network这块要求特别高,不像是Java这种偏重业务层的语言,之前面试Java的公司侧重还是在数据结构、网络、框架、数据库和分布式。所以OS这块吃的亏比较大</p> <h5>一面基础技术面</h5> <p>电话面试,随便问了些技术问题,最后还问了个LeetCode里面medium级别的算法题,偏简单</p> <ol> <li>redis有没有用过,常用的数据结构以及在业务中使用的场景,redis的hash怎么实现的,rehash过程讲一下和JavaHashMap的rehash有什么区别?redis cluster有没有了解过,怎么做到高可用的?redis的持久化机制,为啥不能用redis做专门的持久化数据库存储?</li> <li>了不了解tcp/udp,说下两者的定义,tcp为什么要三次握手和四次挥手?tcp怎么保证有序传输的,讲下tcp的快速重传和拥塞机制,知不知道time_wait状态,这个状态出现在什么地方,有什么用?(参考quic)</li> <li>知道udp是不可靠的传输

Hi,这里是我的2020年,请查收!

泪湿孤枕 提交于 2021-01-23 06:39:43
Part 1. 回顾 还记得新年第一天,我在刚租的房子给自己做了一顿咖喱饭🍛 (不好意思放照片...) ,然后回顾并展望了一下自己的 2020。 2019 小结 - Notion 截图 转眼间,2020 就过去了。 总的来说 ,今年小目标 (比如博客 10 w 访问量) 完成得不错,但大方向上因为自己的 "贪玩" 有些没跟上。 如果给今年一个 关键词 的话,那么就是: 迷茫 。 今年我没有工作,当着 MC 的自由开发者,开发着 自己的组件 。 一点一点看着自己的想法在另一个"平行世界"实现,还是挺有成就感的,特别是还有人愿意为此"买单"。 有一天迸发了一个灵感,我花了 两个小时 实现了 (特别简单一个东西) ,后来靠着这个组件陆续进账了快 2w (这比我花一个月制作的大型组件还卖得好) 。 这让我明白了两件事,一是我进入了一个 创意优先 的环境,努力和技术都显得不那么重要;二是这个完全不同的赛道让我第一次感知到了 世界的多样性 ,让我开始重新审视起自己过去的工作和生活,追求和选择,我感到前所未有的迷茫。 我们自己实现的 PSP 简单还原 跨越了生存问题,没有工作和生活各方面的束缚,我开始思考自己真正享受什么,喜欢什么,究竟想要怎么样活。 享受写完文章发表的舒心就认真交付每一篇文章,不喜欢假装热闹的聚会就礼貌拒绝每一次邀约。 坦诚的面对自己内心的声音,开始学着接受自己,有被讨厌的勇气

十个程序员必备的网站推荐

 ̄綄美尐妖づ 提交于 2021-01-23 06:39:32
1、Github 代码托管( https://github.com/ ) 2、StackOverFlow 技术问答( http://stackoverflow.com/ ) Stack Overflow 是一个与程序相关的 IT 技术问答网站。用户可以在网站免费提交问题,浏览问题,索引相关内容,在创建主页的时候使用简单的 HTML。在问题页面,不会弹出任何广告、销售信息、Java 窗口等。 3、知乎( http://www.zhihu.com/ ) 4、全球最大中文IT社区( http://www.csdn.net/ ) 中国最大的 IT 社区和服务平台,为中国的软件开发者和IT从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。 5、博客园( http://www.cnblogs.com/ ) 6、程序员客栈( http://www.proginn.com ) 我们都知道,未来是互联网科技从业者的,更确切的说是属于程序员、设计师、产品经理的…因此,我们需要一个地方让这些人立体展现自我成就,建立影响力,输出价值,拓展机遇。同时我们帮助企业团队找到行业里最优秀的人才,解决难题。 7、码农网( http://www.codeceo.com/ )

11 月全国程序员平均工资出炉

大憨熊 提交于 2021-01-23 05:33:05
点击上方 " 后端架构师 "关注, 星标或置顶一起成长 后台回复“ 大礼包 ”有惊喜礼包! 关注订阅号「 后端架构师 」,收看更多精彩内容 每日英文 When you are free from desire, you will be happy, because you will never be disappointed. 当你没有欲望,你会快乐,因为你永不会失望。 每日掏心 话 其实我们每个人都拥有时光机器,有的能把我们带回从前,叫做回忆;有的能带我们迈向未来,被称为梦想。 来 自:有数可据 | 责编:乐乐 后端架构师(ID:study_tech) 第 1054 次推文 图 / 图虫 往日回顾: SpringBoot最最最常用的注解梳理 正文 工资好像又降低了,吓得我瑟瑟发抖。《权力的游戏》里面的一句话又回荡在我的耳边:winter is coming。 2020年11月全国招收程序员340579人。 2020年11月全国程序员平均工资14327元,工资中位数12500元,其中96%的人的工资介于3000元到85000元。 城市 北京,上海,杭州,深圳,仍然是工资最高的四座城市。 南京的工资爬了一名,超过了广州。真替广州捉急。。。 在公众号后端架构师后台回复“Java”,获取Java面试题和答案。 职能 敏捷教练,才是最赚钱的。最差的敏捷教练,他的收入也远远高于别人的中位数

解析MYSQL(二)

允我心安 提交于 2021-01-22 23:33:51
上一篇文章讲的是mysql的基本操作,这一篇会有一点难以理解,本节主要内容mysql视图,存储过程,函数,事务,触发器,以及动态执行sql 视图view 视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少。视图是存储在数据库中的查询的SQL 语句,它主要出于两种原因:安全原因, 视图可以隐藏一些数据。 1、创建视图 --格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS SELET nid, name FROM tab1 WHERE nid > 4 2、删除视图 --格式:DROP VIEW 视图名称 DROP VIEW v1 3、修改视图 -- 格式:ALTER VIEW 视图名称 AS SQL语句 ALTER VIEW v1 AS SELET A.nid,B. NAME FROM tab1 LEFT JOIN B ON A.id = B.nid LEFT JOIN C ON A.id = C.nid

实时数仓与离线数仓总结(一)

本小妞迷上赌 提交于 2021-01-22 18:48:45
今 天主要聊聊数仓的基础知识,分为两篇文章介绍,这是第一篇。 主要内容: 数仓基本概念 数仓架构演变 实时数仓和离线数仓的区别 数仓基本概念 首先说一下数据仓库的概念,以下简称数仓。 数仓是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。 主题 是公司从宏观出发,为了分析数据,分了用户主题、商品主题、设备主题等有助于决策的数据模型。 随着互联网的发展,数据源头越来越多且是分散的,除了业务库,APP埋点,web网站log,LOT 设备等会产生各种各样的海量数据,这些数据在进入数据仓库之前(或之后),需要进行统一(字段定义、主题归属、项目划分等),数据 集成 在一起。 数仓中的数据是不可修改的,主要用于数据查询,是相对 稳定 的。 数仓的数据一般都带有时间特征,数据是随着时间的变化而变化的。 数据反映的是一段相当长的时间内历史数据的内容,是不同时点的数据库快照的集合, 反应历史变化 。 数仓从模型层面分为三层: ODS,操作数据层,保存原始数据; DWD,数据仓库明细层,根据主题定义好事实与维度表,保存最细粒度的事实数据; DM,数据集市/轻度汇总层,在DWD层的基础之上根据不同的业务需求做轻度汇总; 很多面试的时候

Swagger天天用,背后原理来一次深度解析

点点圈 提交于 2021-01-22 17:40:01
先说一说Springfox和Swagger的关系 Swagger 是一种规范。 springfox-swagger 是基于 Spring 生态系统的该规范的实现。 springfox-swagger-ui 是对 swagger-ui 的封装,使得其可以使用 Spring 的服务。 由于工作中遇到需要基于 Swagger Json 做一些处理,但 Swagger Json 的格式不是那么满足需求。 本文springfox-swagger版本号:2.6.0 本文从问题出发,探索涉及的源码。 GET 方法的参数对象 第一个问题,当方法是GET请求,但参数是一个自定义 Object,在展示时(生成的JSON)是不包括本 Object 描述的。所以,就要看看什么时候会生成这些 Model 的描述。 万事有始有终,SpringFox始就在:springfox.documentation.spring.web.plugins下的 DocumentationPluginsBootstrapper。 该类实现了 SmartLifecycle 接口,实现此接口且通过@Component注入到容器的bean, 容器初始化后会执行start()方法. @Component public class DocumentationPluginsBootstrapper implements

如何成为一名合格的推荐系统工程师?

ぃ、小莉子 提交于 2021-01-22 15:10:57
由于近些年深度学习技术的飞速发展,大力加速推动了AI在互联网以及传统各个行业的商业化落地,其中, 推荐系统 、计算广告等领域彰显的尤为明显。由于推荐系统与提升用户量以及商业化变现有着密不可分的联系,各大公司都放出了众多推荐系统相关职位,且薪水不菲,目前发展势头很猛。 但是,这里存在几个问题,很多欲从事推荐系统的同学大多数学习的方式是自学,1、往往是学了很多的推荐算法模型,了解些推荐里常用的算法,如:协同过滤、FM、deepFM等, 但是却不清楚这些模型在工业界推荐系统中是如何串联、如何配合、有哪些坑,哪些trick的,导致无论面试还是真正去业界做推荐系统,都会被推荐领域的”老枪老炮“们一眼识别出小白属性 。2、对于算法原理理解不深刻,这就会导致实际应用时不能很好地将模型的性能发挥出来,另外面试时对于大厂面试官的刨根问底,只能是眼睁睁的丢掉offer。 CF、FM、DSSM、DeepFM等这些推荐业界明星模型,你真的清楚他们的内部运行原理以及使用场景吗?真的了解FM模型与SVM有什么相似之处吗?FM固然可以用作为打分模型,但它可以用来做matching吗,如果可以,如何做?item2Vec模型在业界是如何缓解冷启动的问题的?双塔模型优势在哪?深度模型到底是如何做matching的,是离线计算好结果还是实时的对网络进行前向计算?DeepFM具体实现时

彻夜怒肝!Spring Boot+Sentinel+Nacos高并发已撸完,快要裂开了!

我的梦境 提交于 2021-01-22 14:38:06
都说程序员工资高、待遇好, 2021 金三银四就要到了, 你的小目标是 30K、40K,还是 16 薪的 20K? 作为一名 Java 开发工程师,当能力可以满足公司业务需求时,拿到超预期的 Offer 并不算难。然而,提升 Java 核心能力最快、最有效, 短期内升职加薪的方法,到底是什么? 首先,你需要跳出日常工作,接触更有深度、更前沿的顶级项目 。 一个简单的逻辑:大厂之所以能够给到高于行业水准的薪资,正是因为即使是普通开发人员,也要应对很多 复杂的场景 。这些复杂场景和项目,就像“墙外的世界”,没有看过,没有接触过,你就无法进行体系化的学习和建立认知, 技术壁垒自然就出现了。 所以,如果你期望通过个人努力,实现收入增长和职位晋升, 那最好的方式, 一定是多学透几个大厂的真实项目经验。 比如炙手可热的 电商平台系统 ,它包含微服务系统、高并发设计与性能调优,涉及 Spring Boot、Dubbo 等核心组件 的应用,还有秒杀活动用到的 Nginx、Redis、MQ、DB 等, 从底层组件应用,到模块设计一应俱全 ,非常适合深入学习和反复琢磨。 但想要快速吃透繁琐的电商系统并不简单,在自学的过程中,难免会遇到一些困难: 日常工作接触的技术维度偏少,对电商系统缺乏基本的认知与概念,无从学起。而网上的资料零零散散,经常讲解不透彻或技术点已过时,耗费大量精力却没有太多收获。

2021面试脚本!夜读互联网Java开发27大专题,终入P7

不想你离开。 提交于 2021-01-22 13:56:34
但作为面试者,想进入BAT并成长为一名高级Java工程师却没那么容易。 虽然面试者具备了一定的工作年限要求,也长期使用Java语言进行开发,但面试时,面对刨根问底的提问,经常感觉get不到面试官的点,自己回答的也是马马虎虎,甚至无法完整描述自己开发过的系统或者使用过的技术, 因此也就很难得到满意的面试结果。 过完年就是金三银四,2021不会比2020好过,过一年有很多小伙伴在面试中屡屡碰壁,不是基本功不扎实就是遇到一些平时没怎么接触过问题还失败告终。 今天在这特地整理了一份阿里,美团,京东,拼多多,蚂蚁金服等大厂Java岗面试必备清单! 注意: 由于篇幅原因,在这只展示了目录和内容截图, 有需要这份大厂Java后端面试清单的(以及更多学习资料),可以免费分享给大家一起学习,转发后转发后添加小编vx:mxzFAFAFA即可免费获取!!! JVM专题 作为Java从业者,在找工作的时候,一定会被问及关于 JVM 相关的知识。 JVM 知识的掌握程度,在很多面试官眼里是候选人技术深度的一个重要评判标准。 如果连JVM都回答不好,大厂一面基本也就凉凉! 在这里我们将详细地整理常见的 JVM 面试题目,并给出标准答案, 提供给大家学习参考。 内容展示 Java并发/多线程专题 从事 Java开发的小伙伴们会发现 Java 多线程和并发无论是工作或者是面试都绕不开的话题