高级JAVA程序员应该具备什么样的能力?
从我个人的角度来看,这些所谓的高级程序员,他们至少做了3 - 5年,其实,就是修改并重写了几行代码,他们的工作性质,做了3年,5年,甚至10多年来,我相信也进步不了多少。
特别是,市场上的大量外包需求,要快速切入,程序员,甚至不理解为什么,他们已经制作出了东西,就像走过现场一样,要想在这种环境下成长,自己必须要多学、多想、多动手。我衷心希望中国的程序员能够超越几代人。
回到上一个话题,上述现象具有一定的合理性。我没有做太多评论,从我创立的程序思维而言,我对高级程序员有一些要求:
1、必须具有一定的业务分析和流程意识,能够进行简单的业务设计和功能分解。
2、具有一定的性能优化经验,能够为大数据(至少100W或更高)设计处理和功能开发。
3、拥有一支小团队(5人)管理经验,在人的帮助下,基本可以控制10人每月工作量的项目。
4、必须会语言设计和技能开发,虽然不精通,但也要擅长,可以处理大部分日常情况,少数情况下,通过探索和尝试解决。
第一阶段 ——三年
我认为三年是程序员的第一个门槛,这个阶段将消除一群不适合编写代码的人。在这个阶段,我们走出校园,进入社会,成为程序员,并正式从书的内容转移到真正的企业级开发。我们知道团队如何协作、如何使用项目管理工具、项目版如何控制、我们如何编写代码如何在线运行等,积累了一定的开发经验,对代码也有一定的深刻理解,是比较纯粹是coder的阶段。
第二阶段——五年
五年是区分程序员的第二个门槛。在过去三年中,除了完成工作外,有些人在业余时间不会学习其他东西。这些人永远是Coder。年龄较大的人将被年轻人取代;有些人在三年里,除了写代码之外,我还热衷于研究各种技术实现细节。读了很多好书、写了一些博客、来分享Github上的技术,这些人必须有能力在技术上独立并在五年内明确自己的未来。从Coder到系统分析师或架构师,开发方向成为项目团队中不可或缺的人物。
第三阶段——十年
十年是另一个门槛,转行或继续成为程序员就在这个节点上。如果您一直在考虑在过去几年不改变职业并努力工作,那么在这十年的这个节点,一些人将不可避免地对行业有深入的了解。对技术有深刻的理解。可以从头开始。分析产品的程序员,这样的人基本上是公司中最关键的位置,比如CTO、技术专家、首席架构师,这绝对是他自己的光荣事物,当然,老板在经济上也绝不会亏待你。
就是保持良好的心态。俗话说得好,只要功夫深,铁杵磨成针,采访的成功是在平时的积累,临时抱抱佛脚,看两道面试题是没有用的,只要足够努力,成功是理所当然的。平时不怎么研究技术的,这只是一个辞职的问题。只是展示你通常学到的东西。
因此,在我看来,不要将面试视为面试。作为一种技术交流,从我想找工作的时候改变面试的心态到我必须发现自己不足的事实。这样就会平和多了,即使失败不会有太多的失望。
此外,如果您是一位热衷于研究技术的朋友,那么您真的需要自信。不要觉得别人比你好。面试官可能不比你好。他问的问题往往是他经常学习的问题。你一样有很多自己的研究面试官未必知道。
此外,如果您希望以互联网公司为基础并且不能在互联网浪潮中淹没,那么就没有必要为项目的开发提供更少的技能。它也是衡量你自己能力的标准。多少等于你得到多少。一个看似简单的项目需求图,基本原理,您能了解多少实现原理?您需要多少知识来构建完整的B2C项目平台?所有这些都是我们需要考虑的事情。
首先,你需要有一个深入的Java基础:你将开始看到《Java编程思路》、《Effective Java》。这两本书绝不是一个普通的基础,但至少有1 - 2年的优秀的Java开发人员可能会完成,这两本书需要大约一年的时间才能阅读。
其次,您需要查看一些开源框架的源代码。如果您单独使用框架来实现业务而不深入了解框架核心和架构思想,您可能会发现在几年内您无法从框架中做任何事情。
成长为架构师
事实上,架构师并不像想象的那么困难,但你必须看看公司的架构师。我见过一个小企业架构师工作了八年,但我觉得这个级别只是阿里P6的水平。事实上,无论你是否能成为一名架构师,都与机遇有很大关系。例如,程序员已完成上述工作,但公司没有给他机会这样做,一个真正架构的机会。因为以前的架构师没有离开,他没有机会,这就是现实!事实上,更多的技术方面,我收集了一套Java架构路线图,与已经工作了2到6年的Java程序员共享,可以整理出自己的技术,这些东西可能就是你我一直在联系我的工作在工作中,但我缺乏全面而系统的研究,所以我对此并不了解。我希望在阅读路线图后,我知道从哪里开始学习。
- 上一篇:我靠,不小心把2T的库删除了怎么办?
- 下一篇:考诉你面试官关注的几点,祝你面试成功