前言:
上一篇,我们介绍了技术管理者应该具备的3种能力,技术能力、业务能力和管理能力,这三种能力需要提升的顺序是多数技术同学职业生涯的顺序,在职业生涯初期技术能力占主导地位,技术水平不断提升,不断夯实,你和“高手”之间的差距往往就不是技术了,而是业务能力,这时需要你在所从事的领域有独到的理解,将业务和技术相结合,这也是当下一直说的“跨界”,举个例子:一位java攻城狮、一位基金从业人员还有一位有基金从业资格的java攻城狮3个人都去蚂蚁金服面试,哪个人通过的概率比较大?当然这只是一个很小的例子,实际还要考虑每个人与岗位的契合度,这里只是想说明:技术人员成长到一定阶段,业务能力是必不可少的素质。随着业务能力不断提升,你可能已经在公司带领一个中等规模的团队了,你会遇到各种管理问题,这时就需要提升管理能力了。这次我们先来讨论技术管理者需要具备那哪写技术能力。
因为现在的技术实在是太多了,这里只提及不展开,因为每一项如果展开都可以写一本书了,这里就留给各位看官后续依据自己的兴趣自我补习吧。。。
操作系统
传统项目阵营,多数基于UNIX:AIX、HP-UX、Solaris
互联网&新兴项目阵营,多数基于LINUX:RED-HAT、centOS、SUSE、 ubuntu、debian、fedora、中标麒麟(国产软件,支持一下)
存储
存储分为文件存储和数据存储,数据存储又分为rdbms、nosql和big data,这里逐一列举
rdbms:oracle、mysql、db2、sqlserver、sybase、infomix
nosql:redis、memcached、mongodb、ssdb、tair
时序数据库:influxdb、opentsdb
文件存储:磁盘阵列、RAID系列、NFS、SAN、FTP、Amazon S3、CDN(本质也是存放文件)
大数据体系:HDFS、HADOOP、HIVE、HBASE、SPARK、STORM、impala、presto
后端
后端的技术相对于其他知识体系要学的东西实在是太多了,如果有遗漏还请大家多多补充,因为笔者对java比较了解,这里就以java为例
spring系列、mybatis、hibernate、HiKariCP、SSO、druid、fastjson、guava、netty、zookeeper、freemarker、swagger、joda、httpclient、poi、cas、shiro、curator、thrift、protobuf、netty、grpc、hazacast、dubbo、aspect、maven、etcd、solr、elasticSearch、多线程开发等等,实在太多了。。。
分库分表中间件
mycat、mysql-proxy、atlas、dbproxy、sharding-jdbc、zebra
图表展示
highcharts、echarts、D3.js、grafana、kibana
消息中间件
Apache activeMq、rabitMq、rocketMq、Apache Kafka、zeromq、disruptor、beanstalkd
容器中间件
weblogic、WebSphere、jboss、tomcat、jetty
前端
这几年,前端技术也是百花齐放,框架发展也是日新月异
jquery、backbone、angularJs、react、vue、bootstrap系列、element、node、nginx、H5、css、html、axios 。。。
移动
android、object-C、swift、phoneGap、reactNative。。。
负载
F5、LVS、HAProxy
分布式跟踪
zipkin、jaeger、阿里鹰眼
其他语言
技术人员除了第一开发语言外,最好还有1-2中辅助语言,这样工作起来会得心应手
python、scala、R
最后
上述内容只是冰山一隅,还有很多技术如统一配置中心、常见算法等,这里就不一一列举了,这些技术作为一名技术管理者你可能不需要每个都精通,但是每种技术的原理和适用场景还是应该熟谙于心,有的同学说这么多东西,怎么可能都只了解,其实少看会手机、少打会游戏,每天抽出半小时学习,这些技术不到一年你肯定能够达到熟练的程度。日拱一卒,不期速成。