就聊聊不少小IT公司的技术总监
本文想告诉大家如下两个观点。
1 很多IT小公司的技术总监,论能力其实也就是相当于大公司的高级程序员。
2 程序员在职业发展过程中,绝对应该优先考虑进大厂或好公司。如果仅仅停留在小公司,由于小公司可能无法接触到值钱的技术,所以哪怕做到小公司的技术总监,依然可能会遇到大龄危机。
我见过不少小公司,比如某软件园里有很多栋楼,有些软件公司可能也就占一个或多个楼层,甚至只占了几个房间,这种公司一般也就十几号开发,顶两天也就一百多个开发,这类公司的不少技术总监,能力上和一般的开发有什么差别呢?
1 一定是非常熟悉业务,比如公司做的一个电商物流系统,技术总监一定会知道每个模块的边边角角细节,不过熟悉某个公司的业务知识在跳槽时对自己的帮助并不大。
2 熟悉各种项目管理和测试工具,比如git,maven,gradle,postman,同时知道项目在开发完成后如何确保质量,如何发布到产线上。这些技术点可能不少大厂程序员不会认为什么,但在不少小公司里,能做熟这些工作的人并不多。
3 知道各种组件的基本用法,比如知道微服务组件或容器的各种用法,但相比于大公司,这些小公司的技术总监真有不少只会用api,只知道基本的配置。
4 大公司的技术总监,往往需要架构方面的技能,比如能根据业务,搭建能应对高并发,能确保高可用的系统架构,同时需要搭建监控系统确保系统能正常运行,如果出了问题,大公司的技术总监往往要兜底,即别人排查不了的问题自己要顶上。但小公司的技术总监更多的职责是管人,即会多承担项目经理的角色。
下面我就说说我见到的不少小公司技术总监的一些情况。
1 本人的一个朋友,在某软件园开了一个接外包单子的公司,开发人数是20多号人。这个公司用的技术是spring boot系列,比较偏重于单机版,不怎么用到分布式组件。
其中的技术总监,平时的工作时和客户去谈需求,然后把需求拆分成若干个模块让手下人开发,由于小公司的技术栈并不复杂,也就用到spring boot+数据库,外带些logback写日志等的组件,所以一些刚毕业的程序员,只要在大公司里呆个2,3年,都能达到这个程度。
2 本人也见过在一个某开发区公司的技术总监,这个公司是做外贸业务的,开发人员大概有10个20个人,用到的是java技术栈。
这位技术总监,平时更多的承担的是产品+项目经理的角色,论java技术,一些比较普遍redis集群或spring cloud alibaba组件集群,他都认为很高深。给本人印象比较深的是,当时本人给他们系统搭建了一个基于nacos双节点的服务治理集群,一个节点失效了另一个节点能顶上去,这位技术总监就认为这是很稀奇的事情了。
3 某个开发区内某小公司的技术总监,要搭建公司的业务架构,本人参与了一些,也了解了小公司里搭建架构的具体做法。
具体包括,先搭建好git代码环境,然后为每个机器安装好IDEA+Gradle环境,找个服务器搭建Oracle数据库,同时确保每个开发人员都能用客户端连到数据库上。业务架构层面,就用spring boot控制器+service+repo层,同时写了些通用性的方法,比如连数据库和写日志的通用方法。
当然必要时再会引入redis和kakfa等组件,是先找个服务器安装好组件,然后写一些通用性的方法告诉底下人怎么用。在项目开发好以后,这位技术总监还要负责把产品部署到服务器上。
从上述的描述里大家可以看到,不少小公司的技术总监,平时干的更多是产品+管人+系统部署维护+日常修bug的活,或者说更多干的是打杂的事情。要说干的活里包含多少技术含量,这倒也未必。不过这些技术总监可能虽然在当下公司不可或缺,甚至是威风凛凛,但如果要跳槽,会发现自己真可能缺乏必要的竞争力。
1 按21年22年的行情,我见过的不少小公司技术总监,年薪基本没有过40w的,一般也月入3w就不错了,毕竟小公司盈利能力有限,抗风险的能力也有限,一般给不了高薪,但如果去大公司,一个30岁的程序员要个月薪3w问题不大。
2 要做到技术总监,哪怕是小公司,一般也要35岁左右了,这样的年纪再去跳槽,技术上又没核心竞争力,虽然掌握些管人和产品方面的技能,但要去大公司真不容易。
3 再说这些技术总监跳槽时能展示什么技术呢?大公司所要的云,容器,高并发或集群等,由于小公司基本上没有必要花钱使用,所以有些小公司的技术总监论技术真没什么竞争力。
写到这里,本人想说的是,程序员在职业发展过程中,固然要走技术路线,比如要多掌握架构或其它方面的的值钱技能。但是如果只在小公司之间辗转,薪资也能会提升,职位也可能会慢慢累积到技术总监的级别,但如果只在小公司发展,薪资和发展空间一定会受限。原因也好理解,小公司未必有值钱技术的使用机会,而小公司更加会偏重业务。
所以,比如有3年工作经验的程序员,当下公司的规模不大,在跳槽时,如果遇到小公司高级职位和大公司低级职位的选择时,应当毫不犹豫地选大公司,甚至在选跳槽公司时,应当目标就该定位大公司。至于怎么选,怎么准备大公司的面试,怎么过大公司的面试,本人有太多的文章,这里就不想继续展开了。
本人最后想说的是,大龄程序员,比如35岁以上的程序员,跳槽时对方优先看大公司经历,再看值钱技术在项目里的使用情况,再看有没有值钱技术(比如集群架构云等)的排查问题搭建环境方面的能力。而哪怕在大龄时做到了一些小公司的技术总监,如果缺乏些大公司的经历,遇到本公司有变故时,跳槽找工作时真可能不仅仅是薪资大减的问题,真可能是连简历都没人收了。
就聊聊不少小IT公司的技术总监的更多相关文章
- CTO、技术总监、首席架构师的区别
2016年11月30日13:22:26[转] CTO.技术总监.首席架构师的区别 提升自已的能力,比如专业技术,行业发展趋势,技术发展趋势,协调能力,组织能力,管理能力等[技术总监] 需要从技术总监和 ...
- [转载]CTO和技术总监区别
原文地址:http://blog.sina.com.cn/s/blog_6024cfa90101cb0h.html 技术总监(Chief Technical Officer)与CTO(Chief Te ...
- 技术总监和CTO的区别 浅谈CTO的作用----软件公司如何开源节流(一)[转]
我一直在思考软件公司如何开源节流.当然,老板也在思考开源节流.当然,老板思考的开源节流在公司运营层面上,而我作为CTO,我考虑的则是在产品运营角度上来思考这个问题.否则,一个软件公司,它的生存与发展就 ...
- 《王者荣耀》技术总监复盘回炉历程:没跨过这三座大山,就是另一款MOBA霸占市场了
如今已经大获市场成功的<王者荣耀>一直是业内各方关注的对象,而我们也知道这款产品在成为国民级游戏之前,也遇到过一段鲜有人知的调优期.也就是在2015年8月18号正式不删档测试版本推出之后, ...
- 【转】《王者荣耀》技术总监复盘回炉历程:没跨过这三座大山,就是另一款MOBA霸占市场了
如今已经大获市场成功的<王者荣耀>一直是业内各方关注的对象,而我们也知道这款产品在成为国民级游戏之前,也遇到过一段鲜有人知的调优期.也就是在2015年8月18号正式不删档测试版本推出之后, ...
- CTO(技术总监)平时都在做些什么?
目前创业,最后一家公司任职医疗科技公司的研发中心总经理,之前也在几家公司的任职研发/技术总监岗位,在我理解的范围,目前国内中小企业对于CTO/技术总监的岗位区别没有那么明确的职能区分. 1. 先总结 ...
- Atitit.cto 与技术总监的区别
Atitit.cto 与技术总监的区别 1. 核心区别1 2. Cto主要职责1 3. 如何提升到cto1 4. CTO五种基本的必备素质:2 5. 2 1. 核心区别 技术总监(Chief Tech ...
- IT软件技术人员的职位路线(从程序员到技术总监) - 部门管理经验谈
以前写过一个文(IT从业者的职业道路(从程序员到部门经理) - 项目管理系列文章),主要介绍笔者的职业发展之路,不过该文需要后续了,因为笔者现在从事的是“产品经理”一职.从笔者的导航文([置顶]博文快 ...
- [转]CTO、技术总监、首席架构师的区别
经常有创业公司老板来拜访我,常常会拜托给我一句话:帮我找一个CTO. 我解释的多了,所以想把这个写下来,看看你到底需要的应该是啥. 一.高级程序员 如果你是一个刚刚创业的公司,公司没有专职产品经理和项 ...
- 【转】】CTO、技术总监、首席架构师的区别
经常有创业公司老板来拜访我,常常会拜托给我一句话:帮我找一个CTO. 我解释的多了,所以想把这个写下来,看看你到底需要的应该是啥. 一.高级程序员 如果你是一个刚刚创业的公司,公司没有专职产品经理和项 ...
随机推荐
- springmvc 上传文件时的错误
使用springmvc上传文件一直失败,文件参数一直为null, 原来是配置文件没写成功. <bean id="multipartResolver" class=" ...
- Tomcat 调优之从 Linux 内核源码层面看 Tcp backlog
前两天看到一群里在讨论 Tomcat 参数调优,看到不止一个人说通过 accept-count 来配置线程池大小,我笑了笑,看来其实很多人并不太了解我们用的最多的 WebServer Tomcat,这 ...
- 【Firefox浏览器】关闭触摸板双指滑动进行前进后退的功能
痛点 本以为只是Chrome浏览器存在这一奇葩功能,没成想Firefox也沦陷了!有好一阵子在使用Firefox的时候,并未发现其存在这个功能.直到有一天,打开自己的博客,翻阅上篇< [Chro ...
- Java模拟生产者-消费者问题。生产者不断的往仓库中存放产品,消费者从仓库中消费产品。其中生产者和消费者都可以有若干个。在这里,生产者是一个线程,消费者是一个线程。仓库容量有限,只有库满时生产者不能存
需求分析:生产者生产产品,存放在仓库里,消费者从仓库里消费产品. 程序分析: 1.生产者仅仅在仓储未满时候生产,仓满则停止生产. 2.消费者仅仅在仓储有产品时候才能消费,仓空则等待. 3.当消费者发现 ...
- JDBC数据库编程(java实训报告)
文章目录 一.实验要求: 二.实验环境: 三.实验内容: 1.建立数据库连接 2.查询数据 2.1 测试结果 3.添加数据 3.1.测试结果 4.删除数据 4.1.测试结果 5.修改数据 5.1 测试 ...
- Vulnhub 靶机 pwnlab_init 渗透——详细教程
1. 下载 pwnlab_ini 靶机的 .ova 文件并导入 VMware: pwnlab下载地址:PwnLab: init ~ VulnHub 导入VMware时遇到VMware上虚机太多,无法确 ...
- (数据科学学习手札145)在Python中利用yarl轻松操作url
本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,在诸如网络爬虫.web应用开发 ...
- app自动化测试环境安装
一.环境依赖 app自动化测试环境如下: appium服务 第三方库appium-python-client 手机或模拟器 java环境jdk1.8 android环境 二.appium服务安装 1. ...
- 一、Go语言开篇介绍
Go语言开篇介绍 Go语言 是Google公司 在2007开发一种静态强类型.编译型语言,并在 2009 年正式对外发布. Go语言以其近C的执行性能和近解析型语言的开发效率,以及近乎于完美的编译速度 ...
- 深度优先搜索(Depth-First-Search)dfs代码模板
void dfs()//参数用来表示状态 { if(到达终点状态) { ...//根据需求添加 return; } if(越界或者是不合法状态) return; if(特殊状态)//剪枝,去除一些不需 ...