前言

Redis作为基于键值对的NoSQL数据库,具有高性能、丰富的数据结构、持久化、高可用、分布式等特性,同时Redis本身非常稳定,已经得到业界的广泛认可和使用。因此,作为一个Java开发者,掌握Redis早就成了一项必备技能之一。

今天,想跟大家分享这份腾讯Redis压轴笔记,关注到了Redis开发方方面面,尤其是对于开发中如何提高效率,减少可能遇到的问题进行详细分析,不单单介绍怎么解决这些问题,而是通过对Redis重要原理的解析,帮助开发人员学会找到问题的方法,理解背后的原理,从而让开发人员不仅知其然,而且知其所以然。因此,也收获了圈内大佬的一致好评。

正文

我的第一份工作是在一家外企,当时抱着“逃离”上海的想法去了二线城市的分公司,但是管理文化氛围跟总部几乎都是一样的,这份工作经历对我后面的工作不论是做事风格、习惯上还是思考问题的方式方法上都有很大的影响。后面陆续进入国企,民企,再进入初创公司,从公司规模上可以说各种类型的都有过体验。下面从环境因素,平台效应因素等几个角度说说自己的感受。

1. 环境因素

环境对一个人的影响还是很重要的,不论是大家熟知的“近朱者赤近墨者黑”的说法,还是令我们中国人挤破脑袋的“学区房”现象,都说明环境对一个人的成长起着至关重要的作用。

小公司与大公司的环境差异首先体现在人员的素养、水平上。大公司的准入门槛相对高一些,所以人员的素质、水平也相对要高一些,如果你周围牛人比较多的话,跟牛人待久了,你也可能慢慢就步入牛人之列了——“近朱者赤”。而小公司,尤其是初创公司,为了尽快招人干活,往往人员的素质、水平会良莠不齐,你可能很难找到一个各方面让你信服,想跟着他学的真正的“牛人”。

其次在制度、流程规范上。大公司在制度、流程、规范方面相对健全完善,不论是人事管理还是日常合作分工都比较明确,你知道什么时候应该干什么(因为都给你安排好了),处理什么事情应该找谁,都有章可循,有人可找。而在小公司,可能很多人感觉的就一个字——“乱”,人员职责、分工、权限没有明确定义,没有人引导,不知道在什么阶段应该干什么,或者怎么干,明明是个小兵,老板却恨不得你是个全才,啥事都希望你能搞定。有人把在大公司工作比喻是做一颗螺丝钉,而觉得在小公司才能锻炼综合能力,但我觉得在一定的阶段,螺丝钉似的工作才能让你在专业能力上面得到更大的提升,而小公司所谓的综合能力,往往演变的是“打杂”能力,老板为了节约成本,充分发挥(压榨)每个人的能力(价值),往往一人要分饰多角,比如做人事的既要管招聘,又要管行政,甚至还可能被拉去监督项目进度,很难让你在一个专业的领域深度成长。

再次在产品规模上,大公司产品的日活规模可能少则上百万,多则上亿,不论是在技术实现还是产品运营上,都需要较高的要求与水准,你在其中能学习的技能与套路是小公司日活几千或几万的产品规模无法比拟的。

最后在文化氛围上,一般大公司都有形成自己的企业文化,包括周围人的工作风格、习惯,都会对你产生潜移默化的影响。比如我现在的不论是写代码,还是写文字,都会反复检查好几遍的习惯就是在第一家公司工作时养成的。因为你的每一行代码你的leader可能都会仔细帮你review,找出有问题的地方让你反复修正直到合格,你的每一封邮件都会被别人(在外企很多时候还包括美国人、印度人)认真查看,所以促使你在发出前会仔细核查是否有遗漏的点,是否存在错别字或语法错误,久而久之,就养成了这种反复检查的比较严谨的做事风格。而在小公司,一般很难在短时间内形成自己的企业文化,很多事情的处理都比较粗放,缺乏对细节的把握,你很难从企业文化氛围上受益。

如果用游泳来比喻大公司与小公司的差异,我觉得大公司就像是一个掌握各项泳姿、动作标准的游泳运动员,有规范有节奏,从而游得更远;而小公司则更像一个会“狗爬式”的乡下野孩子,虽然路子野,但有效——尽管比较费力,但是能游起来,但能游多远,得看方向对不对,人能不能坚持。

2. 平台效应因素

现在有些企业招聘,都明确要求毕业院校必须是985、211,甚至有些岗位直接面向BAT。前不久看到一个案例,上海交大硕博毕业因本科不是211,而被招聘企业直接拒绝。

现实就是这样,看背景,看出身。名企工作与名校毕业一样,对后面的跳槽都会有较大的加分与优势。从小公司跳大公司难,但从大公司跳小公司就容易很多,见过许多阿里系的普通技术人员跳到中小企业做技术管理者的情况。

名企光环,除了对后面的就业与跳槽方面具备优势,在社会活动上也具备一定的优势,比如现在很多技术书籍,相当一部分出自阿里系,不是说非阿里系的人不具备这个能力,而是因为有着阿里这个名企光环,出的东西更容易被人接受与认可,尽管不一定水平有多好。

3. 什么人适合去小公司

毕竟不是每个人都能去大公司,那么什么人适合去小公司呢?我觉得可能主要包括两类,一类是自己在某个领域已经取得了较好的成长,具备了独当一面或者懂得如何带领他人来做事情的能力,这种情况一般是为了追求高薪或对某个领域或公司比较看好,有自己想法的人;另一类是目前还不具备进入大公司的资本与能力的人,人总得工作与生活,所以不得不先进入小公司成长,但这部分人除非自身公司发展特别好,否则还是应该尽力往大公司靠,努力进入大公司体验其管理模式与文化氛围,对你整个职业生涯是有很大帮助的。

4. 选择什么样的小公司

选择什么样的小公司比较好,虽然很多时候也没有太多的选择,毕竟好的小公司也是可遇不可求的事情,但如果有的话,我觉得还是尽力选择满足如下四个条件的小公司比较好。

  1. 靠谱的老板。小公司的管理文化与前途基本由老板的品质与能力决定,所以一个有能力、靠谱的老板是第一要素。
  2. 高水平的管理团队,技术、管理、营销各方面。管理团队对于创业公司来说非常重要,只有一个稳定的各方面成熟的团队,成功的几率才会大一点,你在里面能获得的成长空间也更多一些。
  3. 产品项目具备长远发展的潜力。企业经营就是做一个别人愿意花钱购买的产品,并寻找一个将产品源源不断卖出去的方式,所以产品是不是刚需,有没有人买单,能不能长久很重要。
  4. 可靠的资源与渠道。有可靠的资源与渠道,才能将产品源源不断地卖出去,企业才能保持可持续发展。

以上四点从上往下重要性依次递减,同时满足四个条件的小公司应该是极少的,是可遇不可求的事情,可按从上往下的重要性进行选择。

另外进入小公司,可能常见的一个东西是期权,期权具备一定诱惑力,但是也要理性看待。如果以上四点都靠谱,没有期权也能获得很好的锻炼与成长,如果不靠谱,那么就算拿了期权大概率也是一个美丽的梦,看起来很美好,但不会成真的那种,所以面对期权(画饼),也要保持理性。

5. 职场没有伊甸园

最后,不论是大公司,还是小公司,都不存在职场的伊甸园,只有自己不断成长,进步,自己强大了,才有更多的选择空间。

总结

虽然我个人也经常自嘲,十年之后要去成为外卖专员,但实际上依靠自身的努力,是能够减少三十五岁之后的焦虑的,毕竟好的架构师并不多。

架构师,是我们大部分技术人的职业目标,一名好的架构师来源于机遇(公司)、个人努力(吃得苦、肯钻研)、天分(真的热爱)的三者协作的结果,实践+机遇+努力才能助你成为优秀的架构师。

如果你也想成为一名好的架构师,那或许这份Java成长笔记你需要阅读阅读,希望能够对你的职业发展有所帮助。

资料领取方式:戳这里免费下载

om/doc/DSmxTbFJ1cmN1R2dB)**

[外链图片转存中…(img-8JiXKEmD-1621566578172)]

Redis高频面试笔记:面向Java开发者的复习指南相关推荐

  1. Redis高频面试笔记:java版本号比较算法

    1.三重心智模型 先给大家科普一个概念,"三重心智模型". 认知科学家斯坦诺维奇,将人的心智模式,分成了三个部分. 第一层是自主心智,自主心智是我们通过进化与内隐学习获得.比如,我 ...

  2. Java高级面试题!这是一份面向Java开发者的复习指南

    流程描述 我们从bind函数开始: 1.首先创建了两个NioEventLoopGroup,这是初始化了两个线程组,这两个线程组根据命名可以知道一个是bossGroup,是服务器用来接收客户端的请求的, ...

  3. Android面试:面向Android开发者的复习指南!吐血整理

    前言 前面一篇文章分享了最近整理的大家伙的面试经历总结,有兴趣可以去翻看一下.这位去百度面试的小A同学的面试经历很有趣,因为他拿到了offer但是并没有去,在了解原因后挺认同他的想法的.这种职业价值观 ...

  4. Redis高频面试笔记:mysql8.0新特性

    一.服务发布简介 分布式系统架构下,服务发布是一件很麻烦的事情,特别是在构建自动发布流程和灰度测试的策略两个核心方面.通常情况下如果不涉及数据层面的灰度流程,服务可以灰度上线,或者滚动上线,这两种方式 ...

  5. Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计

    上个月,Redis之父Salvatore Sanfilippo在自己的博客上发布了一则公告,宣告自己退出了Redis维护者行列,正式成为一位二线"谋士". Redis 之父 Sal ...

  6. 这是一份面向Android开发者的复习指南,成功入职字节跳动

    前言 19年6月份从网易云音乐离开,放弃了留学机会,开始了人生的第一次创业,前后尝试了两个项目,因为个人能力与时机因素都失败了,虽然没能享受到创业所能够带来高杠杆物质上的回报,但是对个人软技能和自我边 ...

  7. android bitmap转图片_这是一份面向Android开发者的复习指南

    来自:简书,作者:九心 链接:https://www.jianshu.com/p/b3c1b9c6dd40 前言 相信很多同学都会有这样的感受,前三天刚刚复习的知识点,今天问的时候怎么就讲不出个所以然 ...

  8. Android开发,技术实力的本质是什么?,面向Android开发者的复习指南

    技术实力的 <Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义> 开源分享完整内容戳这里 本质究竟是什么? ======================== ...

  9. 安卓定制系统开发!这是一份面向Android开发者的复习指南,系列篇

    想要成为一名优秀的Android开发,你需要一份完备的知识体系,在这里,让我们一起成长为自己所想的那样. 本文参考了目前大部分 Android 应用启动优化的方案,将大家的方案做一个汇总,如果你有这方 ...

最新文章

  1. 数组实例的find()和findIndex()
  2. boost库linux编译安装
  3. python 进阶案例_【python3】while和for的进阶案例
  4. oel6mysql_OEL6.5_X86平台部署Oracle 11gR2 RAC并配置ACFS
  5. C语言log日志管理-支持文件与终端输出
  6. 设计模式之观察者模式
  7. Android 简单实现控件的拖动
  8. webstorm快捷键大全
  9. 以正常使用来进行测试
  10. 强烈推荐仔细多看几遍《Exceptional C++ Style中文版》的第17、18、19节
  11. 使用rust调用c++静态库并编译nodejs包
  12. 电子商务世界历程及国内历程
  13. 《Improving Cross-lingual Text Classification with Zero-shot Instance-Weighting》论文笔记
  14. p语言是python吗-p语言是python吗
  15. 数据库连接在哪?数据库连接池
  16. Markdown 学习入门
  17. Python中的时序分析工具包推荐(2)
  18. 机器学习中的MR和MRR
  19. 打印1900年到2020年内的所有闰年
  20. vue用 echarts 显示区域地图 并用不同颜色显示每个区域

热门文章

  1. 成都拓嘉启远:拼多多直播间人气值提升
  2. 模拟手柄 云台控制 方向盘
  3. 谈谈创业这点事(9)
  4. Linux安装LAMP环境各种问题
  5. 用ps来画国画,你会吗???
  6. 2020从干饭人到打工人
  7. [Python3网络爬虫开发实战] --分析Ajax爬取今日头条街拍美图
  8. js逆向之腾讯漫画《附源码》
  9. 深度学习算法原理——LSTM
  10. 极简Git+VSCode(Mac)