前言
2018刚开年,职场上、公司里本应该是一片喜气洋洋的和谐氛围。结果,某晚的一次深度聊天,让我对程序员的职场有了个重新的认知。我在想,程序员不就是敲个代码吗,这么简单淳朴的生物,难道还有职场腹黑学一说?不听不知道,一听还真是那么回事。 如果你在职场中被腹黑过,那么赶紧搬好小板凳,一起来听听闰土怎么说。
接下来,正文从这开始~
看到这,可能有的老司机忍不住会跳出来喷我,说月薪都没过万,你还谈什么腹黑,还谈什么职场?
各位看官别急,下面我会按照几个小节来具体聊聊。
首先我想谈谈上面的言论,如果所在职场太LOW,应该将精力放在自我提升上而非勾心斗角,这是对的,但是去全盘否定中低薪资层的职场,就不是对的。因为对世界上绝大部分的人来说,那些微不足道的蝇头小利,一直以来都是他们对生活真正赤裸裸的追求。而且那种欲望更强烈,更残忍,更不择手段。
身为小白的你,该如何面对这个纷扰的前端圈,及编程界?
也许有童鞋会问,面对暗流涌动的前端编程世界,我该如何应对?
我的回答是:基础打好 配合实战,关注技术趋势,不抗拒,持续学习。只有基础 是没用的,一味的追新也是不行的。举个栗子,es2015是规范而已,放眼望去已经是很普遍的事情了。现在懂es2015和三年前懂es6差别很大。
因为
1、基础 要去全部掌握 是不可能的。必须实战中恶补 2、新技术 要全部追到手 也是不可能
中小公司 那么基本上就是什么都要搞,比如PC端移动端,微信公众号,小程序,webapp,rn等等。
python目前是绝对值得长期拥有的。做web, java肯定是 绝对的王者。只不过不同的业务规模 不同的团队,不同的口袋里的钱。其他语言 可能在不同的场景下,更适合。
语言本身没有好与不好, 只有适合还是不适合。写程序 要学会变通,除非万不得已,不要硬写循环。
在中国大陆做软件 最赚钱的 是什么行业 大家知道么?绝对不是外包或者帮企业做点ERP,而是帮政府做项目。
然后回过头想想,为啥有些语言 就算不差也不火不起来 是有原因。先不说12306,政府 分为部委办局。 每个点 每年都要很多很多项目,还有政府本身各种系统。这种大型系统招投标时 都有明确规定 譬如不能用.net (个例也许可以,这个不谈) 大家可能觉得 软件很赚钱,其实不是。政府项目很多要求java的。用了java后, 各种配套的oracle。 小型机 才是真正的赚钱。一个语言 能带出各种经济利益链 这个是关键。
所以:在中国,语言好不好,要看它能不能为我们带来长久的甚至是暗黑层面的利益。
你会在项目中采用Typescript吗
为什么Typescript现在只有angular这套框架在用,而react和vue和NodeJS的绝大部分的项目都还是只用ES6?如果Typescripe那么好,为什么在angular社区以外,并没有大规模运用?
首先,需要肯定的是,TS的出现,让Javascript真正和Java有交集了,不再是雷锋和雷峰塔的关系。
诚然,ts是可以集成react和vue的,至于为什么 其他厂商没有用ts做内核,这个都有它们自己的考虑和利益原因。再加上ts是微软的,所以。。。
虽然可以集成,但是也只是一些例子,而我问了一圈,除了用angualr做项目,其他的(react,vue,node等)都还只是用ES6。所以如果公司用react做项目,那一般还是会用es6吧。但是大部分小公司并没有这个技术储备。 去把之前的项目 都改成ts 需要时间。
如果是新的react项目,现在立即用ts的公司,也不多吧?立即用还是不用, 要从利益角度考虑 并不是从技术角度考虑。人工智能这么火爆 也不是所有公司都能用得上 或者有这个实力用。个人感觉react ts,正式用的项目不多,我可不想采坑吃螃蟹,那核心思想还是哪个成熟用哪个。
如果 技术储备不多,那么继续es2015 没啥问题的。如果是angualr项目,那没什么好说的,就用ts。如果 团队 都很熟悉 ts了 那就用 。不熟悉有成本 就不用。
一个腹黑型前端er的技术选型之路
先来讲一个小故事,在三线城市的某家初创公司,之前技术团队的技术栈是很陈旧的,前端还是沿用之前的jQuery bootstrap,这种刀耕火种的开发模式,并没有实现前后端分离。后来公司内有个前端提出要在一个新的重头项目中,采用vue webpack的MVVM模式来开发项目,结果技术负责人还同意了。必须同意啊,因为这样的话,后端的编程压力就小了很多,基本上写写接口就可以了,剩下80%的工作量由前端来完成,何乐而不为。
后来导致的结果就是,公司三个前端,其他两个人没用过vue,vuex,vue-router,axios等技术全家桶,导致在这个项目中逐渐被边缘化。而那个会vue 的前端,一跃成为公司前端部门的技术骨干,也就是现在的技术核心。技术负责人尝到了甜头,并宣布以后的项目上也要采用这种前端后端分离模式,我们公司要成为这个城市最牛逼的技术团队。之后的年底大会上,还因此被评为了优秀员工,老板特许他明年会给他升职加薪,另外两个前端,有一个因为学习能力差被离职了,有一个因为能勉强用vue做出东西来,暂时还留在公司继续干活。
这就是我要讲的故事。
本身公司项目中采用什么样的技术选型组合,要看你们前端本身的 复杂度。如果 并没有复杂的业务控制 , 并不需要加入太多的技术栈,甚至连redux都可以不用。有些小公司我看过,根本不会用。
有一种腹黑的声音说:“redux必用,我都要把angular项目中用上redux,提高逼格”。
做项目必须有逼格,redux angular,也可以过滤很多“前端low逼”。把redux用于angular,提高逼格,对我的好处就是,我会成为公司前端核心骨干,因为很多人不懂redux。
很多小公司 的前端很菜的 。 随随便便 就可以排挤掉他们,这是一句很现实的话。
中型公司也差不多,只要能进去,有机会就要力争成为技术核心,这样其他同事根本竞争不过你。
有同学跟我讲,他要在公司项目中用上redux,是因为现在公司和他竞争的几个前端以前是做.NET的,我发现她们基础比较薄弱,技术很一般,所以我想把redux用于angular项目,也是为了提升技术逼格,排挤打压掉她们。
angular项目中用上redux,这属于“angular高级心法”,哈哈~(此处属于调侃)
当然,vue也是要掌握的,《JS高级程序设计》一书的作者已经公开表态大赞vue了。还有我开头讲的那个小故事,听完了该知道熟练掌握 Vue.js 的重要性了吧。
其实,我惊讶的不是他用了某个框架,而是这种言论。良性的竞争是可以的,如果换做是你,未必你会做得有多高尚。
看底层源码究竟有没有卵用?
之前有位同学跟我聊,前天去面试,对面的面试官问我有没有看过php底层源码,我感觉看了没啥用啊?!
有没有用,那要看什么公司,底层绝对是有用的。但是还是那句话, 并不是每个公司都有用
有些做做普通的一塌糊涂的网站的公司 看了也没用。有的公司 网站 并发 1000 都没过。 看毛底层,浪费时间。就算过了1000 ,那么 首先要优化的也是数据库、Linux、第三方缓存。
大部分公司 轮不到拼底层。
BAT这种大公司 不谈 ,看底层源码确实需要。那种小公司 ,用户都不过10万的网站。 大谈特谈底层,改PHP底层这种事,换我是老板是要开掉他们的。浪费老子的钱这是。
面试造火箭,工作拧螺丝。虽然如此,就算很多知识现在用不上,可为了面试也是需要看的,可以灵活一点。
程序员如何赚快钱?
最近我在群里看到有童鞋问,程序员怎样在短时间内来钱快?当然他的意思是利用自己的技术在业余时间来赚一笔。我觉得这个问题很有代表性,多多少少触动了一些职场老司机的痛点,也勾起了我的一些回忆,所以提笔来写上一段。
说句 你可能不爱听的话
1、技术积累 2、社会阅历 3、人脉积累
有这三项,随随便便都能赚钱。所以,要赚钱 首先是修炼内功 。到了一定阶段自然能赚钱。没到,自然赚不到钱。
另外,光有技术是没用的。没人脉,一切为0。
黑门道、黑技术等建议别碰(虽然可能来钱快),另外就算要碰,对个人的技术要求是非常高的。没点智商 黑技术做不了。
干技术的,第一步你肯定是技术先到位, 你技术都没有, 你跟人拉关系人家也不理你啊!搞技术来钱确实不如抢劫来钱快,来钱快的都在刑法上刻着,哈哈。
后记
不是井里没有水,而是挖的不够深;不是成功来得慢,而是放弃速度快。得到一件东西需要智慧,放弃一样东西则需要勇气。
愿你在编程路上,不再被腹黑,从此可以安心地做一名编程界美男子。