为什么做技术的道理越走越窄

2016年10月14日 10:15 171 次阅读 来源: 素文宅 作者: 路人甲








不管我们处于何种职位,拿着哪种薪水,其实,我们会是不是的问问自己“做技术到底可以做到那种地步”,说的直白一点,其实我们很多人对技术这条路依然充满很多彷徨,不管我们的现状是多么的满意与辉煌。

最近一直招聘技术人员,见了很多求职的朋友,也和他们探讨了很多与职业发展,技术能力方面的问题,下面说下我个人的看法,和大家分享一下。

有很多的人总是一直在问“我搞.NET很多年了,但是感觉现在越走越窄了”。

其实“越走越窄“主要可以从三个方面开看:

市场动向:从最近的招聘和很多的朋友的举动来看,特别是移动互联网的爆发和大数据技术,导致了很多的新人纷纷转型,而且很多做了多年技术的朋友,也跟着这股“趋势”在走,因为会认为“物以稀为贵”,会拿到不错的待遇。

我 发现在我们大家都有一种“跟风”的习惯,包括我自己了。说到什么火爆,然后就大家一股脑的奔过去:很早以前,做网站很火爆,于是很多人都开始学习 HTML,随便说自己懂HTML,都可以拿到不错的薪水;团购火爆,于是很多的创业者纷纷搞起团购,一时,“百团大战“;电商火爆,于是各地开始出现各种 电商平台…..

一旦一片“蓝海”被搞成“红海”之后,市场就开始饱和,资源开始重新分配,其实最后依然是”82理论“:20%的人占据着80%的资源,依然会优胜劣汰,最后还是那句话”出来混的,早晚要还“。

其实又说回来,最后选择,市场是一个很大的因素,另外,就是兴趣,真的是兴趣。或许,有朋友认为这点很扯,但是越到后面,这一点尤其重要,特别是当你的待遇,职位到了某个瓶颈之后,最后阻碍自己发展的就是自己。

思维定势:说 到这一点,自己也算是深有感触。自己在做.NET的时候,把自己的选择绑死在了Windows和微软技术上面,例如,为了搞负载均衡,不断的尝试 Windows自带的NLB,还是用IIS的ARR(一直到IIS7才出来),在这些过程中出现很多问题,而且很多的情况,都无法满足,也想过买F5之类 的产品。虽然自己在Linux环境下有很多成熟的软件和产品,如HAProxy,LVS,但是一直对Linux有偏见,因为喜爱Windows。

后面进入互联网公司之后,开始发现很多的情况选需要“混搭“,例如搜素采用Solr,缓存采用Redis,Memcached,日志采用Kafaka,队列采用RabbitMq。

后来要做用户分析和推荐方面,使用了Hadoop+Mahout等。

以前自己很天真:因为很多的开源组件都是C 或者Java的,自己还尝试写一个.NET版本的,最后发现能力有限,还是“拿来主义+代码定制“。

所以,要以开放的心态去做技术,这一点算是自己的很大的体会。

程序员高效开发利器:编程水杯

画地为牢:很多人总是会拿出所谓的技术人员“30“”35“岁等理论。也有很多人提到”转型“的问题,也有很多人提出“摆脱技术”的想法。

其实我们都很担心自己的技术生涯的长短,一般而言,就我自己的经历发现,不同的阶段培养自己不同的能力。

对于我们做技术的,不是说就每天呆呆的做技术,其实技术本身就是一个技能,通过做技术,锻炼出我们做事的方式和解决问题的能力。

举个例子,我们都经学生时代,我们永远记得我们学了很多的语文,而且老师每次讲课就搞什么场景分析,我记得在小学课本中有一个篇文章“小桔灯”,冰心老人鞋的,最后有这么一句“ 我们都会好的 ”。 这句话在我们看了,就是一句安慰人的话,但是老师在讲解的时候,就衍生了很多的含义:一方面告诉小女孩,她妈妈的病会好的,同时暗指了革命会胜利….

我们先不管老师的分析是多么的牵强,多么的让我们无语。后来,我们每次考试,总是有新一篇文章,让我们分析里面的很多“含义“。

其实,我们知道,学生时代的几十本语文,上千篇文章肯定不会全部出现在考试的“阅读理解“中,我们依然要学习千年不变的语文课本,其实就是在学习一种”分析的思维“,一种”举一反三“的能力。

唠叨了这么多,再说回来,我们学习技术,一方面是因为这些技术确确实实可以做出东西,这一点很不错,比我们学习的语文课本实用;另外一方面,也是在锻炼我们的思维,如何利用技术去解决问题,有个可以生搬硬套,但是很多需要变通。

例如,我之前在为很多公司做性能优化的时候,除了掌握必要的技术知识之外,另外就是思路:如何根据现状推断出问题所在,然后确定这个问题是否真实存在,然后收集数据分析,然后给出办法。

其实我们发现:技术能力是很重要,解决问题的思路同样重要。所以,以此类推,我们用这样的思维去破案,也可以:根据现场,找出线索,然后收集证据,然后抓嫌疑犯….

同样,医生看病也是这个思路…..

所以,很多的技术人员看中的是技术本身,没有跳出这个思维,最后看到的面就比较窄。

有朋友告诉我,他们在面试的时候分不同的层面,初级的人员,面试基本的编程知识;中级的就面试一些比较深的,偏架构,或者底层的知识;高级的,就看看他解决问题的思路,还有人品。

原文  http://www.techug.com/no-road-for-tech-guy

还可以输入136 讨论区:
评 论