工作基本满两年,但是仍然提高不大。唯一增长的是对于工作方式,架构方面的理解和经验了。现在的工作内容和团队已经很难对于自身的提高有显著的帮助。虽然这样很”自私“吧,但是项目我都跟到了底,直到最终上线并维护了一段时间,结果并不完美。年后必须辞职,哪怕薪资有些低也没有关系,希望能对于个人而言,不是庸庸碌碌地熬天期待着一份”累计“后的价值!时间成本反而浪费了。
最近面试了大概有4家公司,对于自身认识而言有了一个新的认识。原来一直觉得程序员是一个翻译员,是将已有的信息和实现传递给程序本身,加之工作原因,一直强调着工作进度尽力实现策划需求,不断的加班,加班。这种想法并没有错,但是太过于沉迷在语言本身特性和API的追逐当中,一心想着快速实现,反而忽略了一些更有价值的信息。缺乏思考是个大错!面对面试官的提问对于算法认知,我原有想法只是实现思路以及兼顾性能即可。因为大的架构成型以后,整个系统的整体效率就已经存在了一定程度的上限。但是这些都是有一定先决条件的。对自己的无知感到迷之感动!
工具,能力,经验,思维方式
这是我对于这四次面试后的收获与总结。即使年前面试全部失败,过年时间也需要认真准备。以下是个人粗浅的认识和不足,留待不断的学习中进行思考。
工具,语言是工具,架构也是工具,UML,设计模式也是如此。对于语言而言的学习没有太多的疑问,自己已经有了自己的理解和思路,架构在面对工作时仍然有理解深度的不足,其实主要还是设计模式在应用过程中存在理解问题。在面试表述过程中并不能通过UML等方式,做出更好的表达。SQL语言的不熟悉也大大的降低了自身的竞争力。
能力,这个只有自己知道,我认为我个人而言,对于技术看法存在过于片面的缺乏逻辑的思考,造成方向上存在了一定的偏差。但是本人的有点就是获取信息的能力,能够透过点和途径的尝试突破,来让自己能够走出已有的思维误区。对于公司管理方式而言理解是深刻的,并得到了一定程度的检验,能够意识到问题,但是解决问题能力不足。主要还是基础过于薄弱,对于工具不能灵活运用造成的。学习方法上而言,暂时不存在太多的问题,不同的东西知道调整和发问。
经验,2年的工作经验并没有给我带来更多的技术实力的提高,更多的扩充自己对于不同语言使用的经验,阅读代码和代码的亲和力又说增加。与人沟通上,也更加的”谨小慎微“。对于一些陷阱,不论是公司项目,还是个人项目踩的雷都不够。
思维方式,这是这几次面试后获得最大的收获了。有一个面试官一直强调大学学的东西很重要离散数学,线性代数,但是本人并没有有意识的去产生关联思考对于语言设计,接口设计等等都反复强调这些。有一个面试官强调了”工程师思维“,理性而有逻辑的思考。有一个面试官一直纠缠于架构设计上的理解和原理,尤其是设计模式上实际应用的侧重。他们都用自己的侧重和理解,形成了一个体系的逻辑闭环,而我相比较而言只是萦绕在一个点上不断的转圈了。
算法,并不是简单的实现”直觉“,而是在效率优先的先决条件下,基于数学基础提炼,求得最优解的逻辑推倒!
架构和系统,是设计工作流程产生的流水线作业方式的工具集成。本身是语言特性,设计模式,算法,各类基础知识达到的一种工作流程化的抽象的艺术。作为技术来理解,小看了这份儿美学了!
不是想不到,也不是做不到,而是根本就没有意识往正确的方向上靠拢。
本身看到的和接触的圈子太小了,这几次面试反而觉得Offer并不重要了。有这么多的收获,也算是亡羊补牢吧。今天是明天的基础,乐观! 乐观一点吧!