前言
Redis作为基于键值对的NoSQL数据库,具有高性能、丰富的数据结构、持久化、高可用、分布式等特性,同时Redis本身非常稳定,已经得到业界的广泛认可和使用。因此,作为一个Java开发者,掌握Redis早就成了一项必备技能之一。
今天,想跟大家分享这份腾讯Redis压轴笔记,关注到了Redis开发方方面面,尤其是对于开发中如何提高效率,减少可能遇到的问题进行详细分析,不单单介绍怎么解决这些问题,而是通过对Redis重要原理的解析,帮助开发人员学会找到问题的方法,理解背后的原理,从而让开发人员不仅知其然,而且知其所以然。因此,也收获了圈内大佬的一致好评。
正文
我的第一份工作是在一家外企,当时抱着“逃离”上海的想法去了二线城市的分公司,但是管理文化氛围跟总部几乎都是一样的,这份工作经历对我后面的工作不论是做事风格、习惯上还是思考问题的方式方法上都有很大的影响。后面陆续进入国企,民企,再进入初创公司,从公司规模上可以说各种类型的都有过体验。下面从环境因素,平台效应因素等几个角度说说自己的感受。
1. 环境因素
环境对一个人的影响还是很重要的,不论是大家熟知的“近朱者赤近墨者黑”的说法,还是令我们中国人挤破脑袋的“学区房”现象,都说明环境对一个人的成长起着至关重要的作用。
小公司与大公司的环境差异首先体现在人员的素养、水平上。大公司的准入门槛相对高一些,所以人员的素质、水平也相对要高一些,如果你周围牛人比较多的话,跟牛人待久了,你也可能慢慢就步入牛人之列了——“近朱者赤”。而小公司,尤其是初创公司,为了尽快招人干活,往往人员的素质、水平会良莠不齐,你可能很难找到一个各方面让你信服,想跟着他学的真正的“牛人”。
其次在制度、流程规范上。大公司在制度、流程、规范方面相对健全完善,不论是人事管理还是日常合作分工都比较明确,你知道什么时候应该干什么(因为都给你安排好了),处理什么事情应该找谁,都有章可循,有人可找。而在小公司,可能很多人感觉的就一个字——“乱”,人员职责、分工、权限没有明确定义,没有人引导,不知道在什么阶段应该干什么,或者怎么干,明明是个小兵,老板却恨不得你是个全才,啥事都希望你能搞定。有人把在大公司工作比喻是做一颗螺丝钉,而觉得在小公司才能锻炼综合能力,但我觉得在一定的阶段,螺丝钉似的工作才能让你在专业能力上面得到更大的提升,而小公司所谓的综合能力,往往演变的是“打杂”能力,老板为了节约成本,充分发挥(压榨)每个人的能力(价值),往往一人要分饰多角,比如做人事的既要管招聘,又要管行政,甚至还可能被拉去监督项目进度,很难让你在一个专业的领域深度成长。
再次在产品规模上,大公司产品的日活规模可能少则上百万,多则上亿,不论是在技术实现还是产品运营上,都需要较高的要求与水准,你在其中能学习的技能与套路是小公司日活几千或几万的产品规模无法比拟的。
最后在文化氛围上,一般大公司都有形成自己的企业文化,包括周围人的工作风格、习惯,都会对你产生潜移默化的影响。比如我现在的不论是写代码,还是写文字,都会反复检查好几遍的习惯就是在第一家公司工作时养成的。因为你的每一行代码你的leader可能都会仔细帮你review,找出有问题的地方让你反复修正直到合格,你的每一封邮件都会被别人(在外企很多时候还包括美国人、印度人)认真查看,所以促使你在发出前会仔细核查是否有遗漏的点,是否存在错别字或语法错误,久而久之,就养成了这种反复检查的比较严谨的做事风格。而在小公司,一般很难在短时间内形成自己的企业文化,很多事情的处理都比较粗放,缺乏对细节的把握,你很难从企业文化氛围上受益。
如果用游泳来比喻大公司与小公司的差异,我觉得大公司就像是一个掌握各项泳姿、动作标准的游泳运动员,有规范有节奏,从而游得更远;而小公司则更像一个会“狗爬式”的乡下野孩子,虽然路子野,但有效——尽管比较费力,但是能游起来,但能游多远,得看方向对不对,人能不能坚持。
2. 平台效应因素
现在有些企业招聘,都明确要求毕业院校必须是985、211,甚至有些岗位直接面向BAT。前不久看到一个案例,上海交大硕博毕业因本科不是211,而被招聘企业直接拒绝。
现实就是这样,看背景,看出身。名企工作与名校毕业一样,对后面的跳槽都会有较大的加分与优势。从小公司跳大公司难,但从大公司跳小公司就容易很多,见过许多阿里系的普通技术人员跳到中小企业做技术管理者的情况。
名企光环,除了对后面的就业与跳槽方面具备优势,在社会活动上也具备一定的优势,比如现在很多技术书籍,相当一部分出自阿里系,不是说非阿里系的人不具备这个能力,而是因为有着阿里这个名企光环,出的东西更容易被人接受与认可,尽管不一定水平有多好。
3. 什么人适合去小公司
毕竟不是每个人都能去大公司,那么什么人适合去小公司呢?我觉得可能主要包括两类,一类是自己在某个领域已经取得了较好的成长,具备了独当一面或者懂得如何带领他人来做事情的能力,这种情况一般是为了追求高薪或对某个领域或公司比较看好,有自己想法的人;另一类是目前还不具备进入大公司的资本与能力的人,人总得工作与生活,所以不得不先进入小公司成长,但这部分人除非自身公司发展特别好,否则还是应该尽力往大公司靠,努力进入大公司体验其管理模式与文化氛围,对你整个职业生涯是有很大帮助的。
4. 选择什么样的小公司
选择什么样的小公司比较好,虽然很多时候也没有太多的选择,毕竟好的小公司也是可遇不可求的事情,但如果有的话,我觉得还是尽力选择满足如下四个条件的小公司比较好。
- 靠谱的老板。小公司的管理文化与前途基本由老板的品质与能力决定,所以一个有能力、靠谱的老板是第一要素。
- 高水平的管理团队,技术、管理、营销各方面。管理团队对于创业公司来说非常重要,只有一个稳定的各方面成熟的团队,成功的几率才会大一点,你在里面能获得的成长空间也更多一些。
- 产品项目具备长远发展的潜力。企业经营就是做一个别人愿意花钱购买的产品,并寻找一个将产品源源不断卖出去的方式,所以产品是不是刚需,有没有人买单,能不能长久很重要。
- 可靠的资源与渠道。有可靠的资源与渠道,才能将产品源源不断地卖出去,企业才能保持可持续发展。
以上四点从上往下重要性依次递减,同时满足四个条件的小公司应该是极少的,是可遇不可求的事情,可按从上往下的重要性进行选择。
另外进入小公司,可能常见的一个东西是期权,期权具备一定诱惑力,但是也要理性看待。如果以上四点都靠谱,没有期权也能获得很好的锻炼与成长,如果不靠谱,那么就算拿了期权大概率也是一个美丽的梦,看起来很美好,但不会成真的那种,所以面对期权(画饼),也要保持理性。
5. 职场没有伊甸园
最后,不论是大公司,还是小公司,都不存在职场的伊甸园,只有自己不断成长,进步,自己强大了,才有更多的选择空间。
总结
虽然我个人也经常自嘲,十年之后要去成为外卖专员,但实际上依靠自身的努力,是能够减少三十五岁之后的焦虑的,毕竟好的架构师并不多。
架构师,是我们大部分技术人的职业目标,一名好的架构师来源于机遇(公司)、个人努力(吃得苦、肯钻研)、天分(真的热爱)的三者协作的结果,实践+机遇+努力才能助你成为优秀的架构师。
如果你也想成为一名好的架构师,那或许这份Java成长笔记你需要阅读阅读,希望能够对你的职业发展有所帮助。
om/doc/DSmxTbFJ1cmN1R2dB)**
[外链图片转存中…(img-8JiXKEmD-1621566578172)]