Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【offer收割机必备】我简历上的Java项目都好low,怎么办?

【offer收割机必备】我简历上的Java项目都好low,怎么办?

作者头像
JAVA葵花宝典
发布于 2019-05-24 12:39:55
发布于 2019-05-24 12:39:55
8020
举报
文章被收录于专栏:JAVA葵花宝典JAVA葵花宝典

点击上方"蓝字", 右上角选择“设为星标”

本文转自公众号:石杉的架构笔记(ID:shishan100) 作者:中华石杉,十余年BAT架构经验倾囊相授。

目录:

  • 高级工程师必备:系统设计能力
  • 如何让你的项目更有技术含量

这篇文章我们来聊一聊,在系统设计项目经验这两块,应该如何充分的准备,才能拿出有技术含量的项目经验战胜跟你同台竞技的其他工程师,征服你的面试官,收获各种心仪的offer。

(1)高级工程师必备:系统设计能力

我们一般在招聘高级及以上工程师的时候,一定会严格考察一项能力,系统设计能力。

因为如果你仅仅是对各种各样的技术都熟悉,有技术广度,也有一定的技术深度,实际上是不够的。如果你的系统设计能力不到位,可能导致你在开发系统的时候会乱用技术。

比如说,有的系统他有一些自己特殊的业务场景和技术挑战,实际上在这个场景之下比较合适的是采用 “缓存 + 数据库” 的技术方案来应对。

但是呢,有的工程师会很多技术,但是缺少这种准确的分析系统问题,提出合理的技术方案的能力,也就是缺少系统设计能力,导致他可能会引入Elasticsearch这种技术来尝试解决这个问题。

那么结果必然是失败的。所以之前很多人找我问问题,说我在XX场景下,用了XX技术,但是没有起到我想要的那个结果啊?

我帮他一看,这不是必然的么,你的XX技术应该用在YY场景下,结果你用到XX场景下,肯定是不行的。

这就是系统设计能力的重要性。

那么落地到现在的互联网行业的面试,大家应该会注意到,很多大厂都会越来越开始问一些系统设计类的问题,举几个例子来看看:

1

如果让你设计一个秒杀系统,你会如何设计?

2

如果让你来设计一个消息中间件,你会从哪些方面来考虑?核心的架构以及数据结构如何设计?

3

如果让你来负责一个电商双11大促系统,你会如何来考虑和设计?

4

我们公司有这样的一个业务场景,XXXX,我给你画个图,YYYY, 就根据这样的一个场景以及面临的问题。如果让你来设计这个系统, 你会如何考虑?

其实如果你在面试的时候遇到上面的那些问题,就是典型的系统设计问题。

面试中的系统设计问题主要分为两类,一类是常规性的,比如秒杀系统的设计,另外一类是那个公司自己的业务场景下的系统设计。

第一类系统设计问题其实很好快速突击准备,你可以到网上搜一搜互联网公司常问的一些系统设计问题。

收集好一些典型问题之后,百度一些技术博客给出的技术架构设计的思路,将这些思路自己进行整理总结,然后转化为自己的语言,最后落地到纸上画出架构图。

到面试现场,你能够画图把这个系统设计思路说清楚,这个基本就OK了。

这个准备时间不长,突击的话可能几天时间也足够了。

当然,还是那句话,最好的结果,必然是你自己本身做过类似的一些有挑战的系统。

此时你遇到这种系统设计问题,直接可以很牛叉的说,这类系统我之前做过,然后把自己之前的项目经验都现场画图给说出来。

第二类系统设计问题就不太好准备了,因为完全考验的是你实打实的系统设计能力,短时间内针对一个业务场景和技术难点,能否迅速给出一个初步的架构设计和技术方案。

第二类系统设计问题,从长期积累和准备的角度,我的建议是在平时自己在开发系统的时候多思考,自己的这个系统有没有什么技术难题,针对这个技术难题应该用什么什么技术,什么方案来解决,这就是潜移默化的在积累系统设计能力。

但是如果从临时抱佛脚的角度,平时没那样的积累,遇到第二类灵活开放的系统设计问题,那也不能一问三不知,大眼瞪小眼。

因此,我的建议是:

  1. 对于你要面试的公司,尽可能的多做了解。比如公司业务背景,大概用户量,这些都可以了解一下。
  2. 如果目标公司有官方的社区或者官方公众号,关注一下,看看上面的技术分享。
  3. 然后如果面试时,面试官针对他们公司的具体业务出了一个系统设计题目,你如果没有思路,建议尽可能的结合第一类的常规系统设计题目来思考套用。

举个例子,比如你面试一个p2p金融业务的公司,如果被问到大量用户同时抢标,如何设计架构?

你没有做过,但是你可以结合一些常规的系统设计题,比如秒杀系统的设计思路,套用在这个新的业务上。

而你如果在面试这家公司前,大致了解了其业务背景,那么对你回答这类系统设计相关的题目,肯定也是很有帮助的。

(2)如何让你的项目经验更有技术含量

在解决了系统设计问题之后,任何一个公司,任何一个面试,都一定会涉及到你作为一个工程师最最核心的价值和能力,就是你的经验,具体来说就是你做过的项目。

这块是面试准备时的重中之重,应该作为最高优先级来对待。

有很多同学,做的项目其实挺不错,但是平时疏于总结,面试前也不准备,结果面试时支支吾吾,半天答不上来,白白浪费面试机会。

比如一个非常典型的项目经验的面试考察情景如下:面试官反复的追问项目的各个地方的技术实现细节,就想看看有没有哪个地方是有一定的技术难度的,可以体现出这个候选人的一些项目上的亮点。

但是呢,候选人说来说去,总是从业务的角度去说,就说有哪些子系统组成,分别是干什么的,如何交互的,看来看去都是系统业务的东西,就是没看到什么有技术含量的东西在项目里体现出来了。

如果出现上述的情况,那么这个候选人要拿大厂offer的概率就很低了。

因为你的项目里没看出来什么东西,没什么亮眼的地方。你看起来就跟千千万万个普通的工程师没任何区别。

而且,在薪水方面,你要价23k,但是另外一个人要价是20k,还有一个人要价是18k。

在这种情况下,你觉得你的offer好拿么?我们为什么不找一个更年轻,更有活力的,有冲劲的小伙子,他也做过跟你类似的一些没太大技术含量的项目。

虽然你工作了5年,人家就工作了3年,但是从技术和项目两块考察,你跟他没太大区别。你不过就是比他多工作了2年,多做了几个没技术含量的项目罢了。

但是在薪资要求方面,你可比人家多了5k,在这个时候,面试官在没更好选择的情况下,一定会找那个薪资要求仅18k的小伙子。

这也是为什么很多同学不好好准备出去面试,结果面半天,老是被人家说:你先回去等通知,我们要再多面试几个候选人综合考察一下。到最后面试好多次也拿不到几个offer。

其实原因很简单,你没什么能打动面试官的亮点,没什么太突出的能力。而你的工作年限越长,薪资要求越高,就越是不容易拿到好公司的offer。

上面说的,是一个极端,这类同学对自己做过的项目毫不重视,导致无法在面试中复现项目中的各种技术细节、技术难点。

这样,即使你的项目很牛,那又有何用,你当时做项目的时候,面试官又不在场。。。

然而,也有不少同学,他们的项目其实并不高端,甚至是有点low。但是呢,人家凭借自己精心的准备,加上一些面试技巧,巧妙的让自己的项目脱胎换骨,瞬间变得高大上。

所以说,项目准备,百转千回,这里面有不少门道,接下来咱们就来聊聊。

同样,咱们分为两条路线来谈:一个是长期准备型;一个是短期突击,临阵磨枪。

对于前者,我个人的建议,还是像之前说过的一样,平时你工作的时候,一定多给自己设立技术挑战。总结起来一句话:没有困难,制造困难也要上。

这里面可能会存在对于架构的过度设计的问题,站在公司的层面会觉得花那么多时间设计这些架构实在是无用功,但是从个人发展的角度,为了你的职业生涯发展,你有时不得不过度设计一下。

况且,这个对公司也未必是一件坏事,万一你公司以后规模发展起来了呢?这个谁又说的清楚。

举个例子,你在公司目前是负责一个OA办公系统,就内部几十个人使用,主要就是写写业务,crud啥的,看起来很low的项目。

然后呢,你使用的技术就是简单的SSM,可能连SpringBoot都没上,整个项目就部署的一个单体工程,没有微服务、没有缓存、跟所有高并发高可用等技术完全绝缘。

确实,几十个人用,你何必杀鸡焉用宰牛刀呢?

但是想象一下,如果你的公司是一个世界500强,这套OA系统有上万人使用,那么情况肯定就不同了,可能就需要另外一套技术架构。你完全可以在工作中给自己做这样的假设,设置这样的难题。

当然,这只是笔者举的一个例子,之所以用这个举例,是想说明一下,无论你做的是什么项目,你都可以从某种角度出发,给自己制造各种技术难题,然后解决难题。

你可以在不要给工作量增添太多的情况下,尽可能从公司发展的角度去考虑,向领导阐述你的考虑,这样公司未来发展5~10年,这套架构都够用了。

并且在面试时,你在阐述项目经验的时候,可以让面试官看到你在里面有更多的技术架构的设计,考虑到了解决更多的技术问题,那么自然你的面试表现就会更好,就更加容易会拿到更好的offer了。

上述就是所说的第一点,长期情况下应该如何积累自己的项目面试经验。

接下来说说第二点,项目的短期突击应该如何进行,才能尽可能的让我们的项目显得更加吸引人。我估计可能更多的同学需要这方面的技巧。

但是笔者还是事先强调,这种短期突击、临阵磨枪,效果肯定是比不上长期的一步步稳扎稳打,这只是一种应对面试的退而求其次之选。

如果大家有时间,或者说通过这种短期突击的打法拿到了心仪的offer,还是应该沉下心来,一步步积累,技术的东西,来不得半点马虎。

如果你之前因为种种原因,在面试前没有做过多的长期积累,那么短期的情况下,应该如何临阵磨枪呢?

我这里的建议是,你自己至少应该反复思考,你目前负责的系统应该引入什么样的技术架构,采用何种技术方案,才能抗住各种冲击。

突击准备,你肯定没有大把时间来付诸实践,但是你一定要自己思考,同时百度一下国内大型互联网公司的技术架构,他们使用了哪些高大上的技术,对于某个技术难点采用了什么技术方案。

然后在面试的时候,可以对面试官阐述一下你对这个项目一些问题的思考,以及技术方案、架构如何来设计,这样设计可以解决什么技术问题,有没有更好的方案选择。

这样一来,你起码比普通工程师多一些思考,提出更多的方案,这也能成为你更加亮眼的地方。

还是那句话,做,总比不做强。你对自己的项目思考了很多的技术方案,这样和面试官总还有一些技术上的交流和探讨的东西。你的项目也不至于说充满了各种CRUD,毫无亮点可言。

往期精彩回顾(都有答案)

了解一下Spring中用了哪些设计模式?这样回答面试官才稳

dubbo 面试18问

拜托!面试请不要再问我Spring Cloud底层原理

稳了!Java并发编程71道面试题及答案

【附答案】Java面试2019常考题目汇总(一)

这10道springboot常见面试题你需要了解下

JVM面试题 巧用这19条MySQL优化,效率至少提高3倍

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-03-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JAVA葵花宝典 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【offer收割机必备】我简历上的Java项目都好low,怎么办?
因为如果你仅仅是对各种各样的技术都熟悉,有技术广度,也有一定的技术深度,实际上是不够的。如果你的系统设计能力不到位,可能导致你在开发系统的时候会乱用技术。
凯哥Java
2019/06/28
6530
【offer收割机必备】我简历上的Java项目都好low,怎么办?
作为面试官,我是怎么快速判断程序员能力的?
技术面试是一个工程师成长到一定阶段后必然要承担的一项工作,优秀的技术面试官能帮助公司筛选出优秀的工程师,并且潜移默化的吸引候选人选择加入公司。相反,糟糕的面试不仅会错失优秀候选人,甚至还会给公司招来大麻烦。尽管技术面试如此重要,我还是了解到,很多公司的技术面试官都是“无证上岗”,hr 随便抓壮丁去面试,面试质量参差不齐。本文就这个问题,根据我自己的面试经验和思考,总结了一些面试技巧分享跟大家,希望有所帮助。
JAVA高级架构开发
2018/10/11
1K1
作为面试官,我是怎么快速判断程序员能力的?
程序员读书节重磅直播丨IT 工程师面试指北:如何收割心仪的Offer
一些专注技术的同学表达能力向来不强,但面试却需要在很短的时间内展示自己,这时候该怎么办?打开面试之门的钥匙其实是你的简历,如何编写让人事和技术看到你若隐若现的闪光点有哪些诀窍呢? 在面试开始之前,大家心里都会打鼓: 求职网站上的简历投了没有回应,怎么办?面试官到底关注哪些点?他会以什么方式发问?面试官的问题如何回答?我能不能反问?又问些什么? 简历应该怎么写?哪些是必要信息?哪些信息又是累赘呢?学历放在前面还是工作经历放在前面?项目经验怎么描述,直接写“我带领团队超额完成了年度指标,获得嘉奖”行不行? ……
博文视点Broadview
2023/05/19
1830
程序员读书节重磅直播丨IT 工程师面试指北:如何收割心仪的Offer
大前端面试宝典 - 图解前端
这不仅仅是一份用于求职面试的攻略,也是一份前端er用来检视自己,实现突破的宝典。 希望通过这个指南,大家可以打通自己的任督二脉,在前端的路上更进一步。
前端迷
2019/07/19
2K0
转Go后offer之路上的那些真相
可能有的小伙伴看到这里就笑了,JD摆出来是干什么的?答曰:看看就行,全信你就傻了。我问过HR和猎头,很多关于面试和录用的决定要素很多时候不会出现在JD里,因为要增加简历来源,比如年龄歧视(呵呵)、学历、以往业务经验和其他技术优势和学习能力等等。
李海彬
2019/05/13
4.2K0
转Go后offer之路上的那些真相
备战阿里面试的经历:如何在一晚上拿到阿里offer的?(获得offer却没去)
网上的面试题很多,但是讲解备战面试经历的文章很少,这篇文章从简历到模拟面试再到面试都有详细的讲解,十分难得,推荐给大家一起学习下。下文中的我指的是作者七分熟pizza。
Android技术干货分享
2019/05/15
1.8K0
零架构项目经验的程序员,如何升级成架构师
2 如何判断程序员是否已经成为java架构师?不是看程序员掌握的技能,更不是看程序员干的活,而是看是否拿着架构师的工资。
用户1153489
2021/12/28
2220
Java工程师职业发展路径(面试宝典分享)
一般来说,技术人员对职业发展有两个发展方向,一个是技术方向,另外一个是管理方向,这两条路径侧重的能力点不同,需要根据自己的兴趣、能力优势有侧重的进行能力培养,成长路径如下图所示。
马拉松程序员
2022/04/26
8770
Java工程师职业发展路径(面试宝典分享)
原创 | 掌握这些诀窍,让你的简历从优秀到牛X
大家好,最近又有了启发来给大家写一点面经。这次的内容会深入一些,看不懂也没关系,可以先点个收藏。
TechFlow-承志
2020/09/22
2920
iOS 面试策略之简历的准备到面试流程
在面试中,我发现很多人都不能写好一份求职简历,所以我们首先谈谈如何写一份针对互联网公司的求职简历。
会写bug的程序员
2021/03/30
1.3K0
iOS 面试策略之简历的准备到面试流程
阿里P8架构师剖析——Java程序员如何在竞争中保持优势
Java程序员入门容易,进阶很难,想要在竞争中保持优势,脚踏实地的同时也要仰望星空规划自己的未来。时间在流逝,年龄在增加,你期望的薪水也在不断增多,你总得让自己能力持续增加以配得上想要的收入吧。
慕容千语
2019/06/12
4560
2016年百度校招小结:我做技术面试官的一些思考
一个多月前,作为技术面试官参加了百度 2016 年的校园招聘深圳站面试,主要目标学生是清华/北大/哈工大/中科院在本地的研究生院(实际上并没有设限,有不少江西广西福建的同学过来面试了),这里和大家分享一点自己的思考。
哲洛不闹
2018/09/18
5760
2016年百度校招小结:我做技术面试官的一些思考
面试面到自闭。
去年年底想出来看看机会,最后很幸运地拿到了 PingCAP,今日头条的 offer 以及蚂蚁金服的口头 offer。
Java团长
2022/04/08
1.1K0
面试面到自闭。
软件测试如何制作简历?
在IT行业,如果你是工作多年的大牛,在BAT TMD等一线互联网名企任职,那么基本上你是不需要做简历,投简历的,基本上会有猎头公司主动来找,大把的机会等你来挑。
测试小牛
2022/04/26
9130
面试时,如何正确介绍自己的项目经验?
在面试时,经过简单寒暄后,面试官一般先从让候选人自我介绍开始,紧接着就是问候选人简历中所列的项目,让介绍下项目经验。常见的问法是,说下你最近的(或感觉不错的)一个项目。
前端达人
2022/04/18
5.6K0
面试时,如何正确介绍自己的项目经验?
十年编程经验一朝面试被刷,技术面试如何提升表现?
又是一年金三银四,不同以往的是,当前的职场环境已经不再是那个双向奔赴的美好时代了。求职者在变多,HC 在变少,岗位要求还更高了,面对这样的困境,技术人员应该如何突围? 腾讯云开发者社区特邀前贝壳金服小微企业生态 CTO、腾讯云 TVP ,有着多年技术管理经验的史海峰老师,为大家分享了技术面试中的那些弯弯绕绕,分析了工程师面试通过率低现象背后的问题,并提出了 10 大提升面试表现的策略,希望能帮助大家,找到心仪的工作!
腾讯云开发者
2024/04/18
6600
十年编程经验一朝面试被刷,技术面试如何提升表现?
面试中更多会考核相关技能的项目经验——再论程序员该如何准备面试如何准备Java面试?
这篇博文后,提到了不少引导的说辞和技巧,如果能把面试官的提问引导到事先准备好的亮点上,一方面确实可以更有效地耗费面试时间,另一方面也能最大程度地挖掘和展示自己的亮点。
用户1153489
2020/03/19
5800
我也想进BAT,有没有什么窍门分享?
最近春招在即,有一些小伙伴私聊我询问面试、简历相关的事情。大概整理了一下一些体会和心得,写成文章分享给大家。
TechFlow-承志
2022/09/21
1640
18年底Android面经分享(已获头条、顺丰、OPPO等大厂offer)
本人水平有限,此文针对于自认为技术实力对标阿里P6,百度T5或者以下的读者,如果是大佬不小心点进来了,可以自行点x略过。文内并不会出现每一家公司的面试过程细节,主要目的在于帮助大家怎么在像我一样菜的情况下在这寒冬拿下offer或者说有复习准备方向。
程序亦非猿
2019/08/16
8600
Android面经:面试前,这样准备提高专业技能,赢offer的胜算提高一倍!
笔者不在HR岗位上,但在工作中有6年的招聘经验。我发现,很多求职者在面试前都没有做好充分的准备,即便有机会参加面试,也很难赢得offer。在这篇文章里,我会跟大家分享,程序员求职者在面试前要怎样做准备。
Android技术干货分享
2021/06/07
6710
Android面经:面试前,这样准备提高专业技能,赢offer的胜算提高一倍!
推荐阅读
相关推荐
【offer收割机必备】我简历上的Java项目都好low,怎么办?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档