基础能力包括数据结构和算法、操作系统、计算机网络、设计模式和面向对象思想。
这些东西是贯穿于整个软件开发过程,是核心。所谓万变不离其宗,这是内功。如果没有牢固的基础,上层建筑无法巩固。
通过这次面试,小辉表示「**5年的经验并没给我带来多少安全感」。**事实上他确实做了5年的业务开发,但其他诸如架构设计、系统非功能性需求关注不多。小辉就出去面试找工作了。以下是面试时小辉与面试官的对话。
我看你有5年经验,跟我聊聊你们的系统架构吧?
架构这块涉及不多,是架构师负责。
说说你都研究过哪些框架?
巴拉巴拉说一堆,具体源码可能没研究过。
性能调优有做过吗?
。。。。。。
说下你的期望薪水?
20-25k?(心想自己有5年经验)
好,我们今天到这。
小辉与面试官的对话
这次面试的失败意味着在这5年的某个时间点,程序员要实现一次技术储备上的升级,或许应该是在第3年的时候。但是这期间没有人会告诉你,你应该注意积累一些架构和系统设计的经验。如果你错过了这些时间点,等你满5年了可能就尴尬了。
有些程序员是为了工作而工作,只会敲代码,深层理论一概不知,闲余时间不会去做研究;另外一部分程序员除了写代码之外,还热衷于研究各种技术去实现细节,通过看了N多本书、线上报培训班、写博客、在Github上分享技术。
显然可见,不只会写代码,更懂得源码实现原理的后者基础扎实。两者去面试同一岗位时,面试官会毫不犹豫地选择后者。
0 2 规范能力
规范能力是把日常工作变成固定的流程,形成固定的规范。遵守编码规范,是一个合格程序员最基本的要求。不仅是为了方便存储和项目进展,也是为了团队和公司。
但很多程序员写的代码非常杂乱无章。在同一个jsp或者java源文件里,出现了三种以上的对方法的命名方式,有下划线间隔的,有全大写的,有拼音首字母的。估计10天后,他自己都无法看的懂。可悲的是,很多程序员根本没有意识到这个问题的严重性。随意堆砌网上搜来的代码,不管可读性和可维护性,只要能实现功能就行了,心想做完这个项目,就拍拍屁股走人了,这种行为缺少最基本的职责素养。
5年以上经验的程序员往架构师方向走时,要发挥一个团队的力量,而不是一个人的力量。让团队更高效的原因其实就是规范,也叫做约定。约定才能让团队的所有人往一个方向走。假设团队有十人,每个人都不flow规范,那十个人还不如一个人。
**在做同件事情的时候,都要遵守规范和约定。**比如说,命名有规范,架构也有规范,文档也有规范。这时去写代码,看到这个命名就知道这个的用处是什么。
0 3 落地能力
落地能力就是真正地把业务落地成代码。将书本上内容转化为生产力去解决实际问题。
比如说给你一个需求,你可以从宏观层面去设计。这个设计包括以下内容。
1.对业务的理解
2.对业务未来的容量规划
3.对业务的成本测算
容量规划的含义可以用个例子来表述。用户量在1万的时候会是怎么样;在5万的时候会怎么样;在100万的时候会怎么样。
成本测算,更高一点就到CPU的层面。例如做一个项目得清楚地了解以下几点。
项目规划
多少人才能开发出来
每个人的成本是多少
要多少台机器运行
每台机器的成本是多少
我们的访问量是多少
从总访问量怎么来规划整个容器容量
阿里有一个规则。三年经验的程序员要达到P6,5年经验的程序员要达到P7。达不到标准,社招是不会招的。如果一个工作经验5年的程序员去面试p6,是不可能被入选的。
5年经验的程序员需要具备以上三种能力,能在技术上独当一面,从一个**Coder向系统分析师或是架构师转变。**才能够顺应市场,不会被淘汰。
这是一个为程序员量身定做的求职公众号。我们有:
互联网企业创始人,技术类畅销书作者等行业大牛进行职业生涯经验的分享;
专注互联网行业、指导过上万份简历的资深HR面试tips分享;
累积四年以上的10余项主流技术的面试题库,涵盖各大厂、互联网名企面试题;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
总结
无论是哪家公司,都很重视高并发高可用的技术,重视基础,重视JVM。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。
最后我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。
最后我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。
[外链图片转存中…(img-3HL2VtCv-1713556932040)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!