热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

《七年失败的程序之路》读后感

读罢《七年失败的程序之路》,让我不由得想起了很多事。想起上海写字楼里那个穿着帅气职业装的美女总裁问我的“职业规划”,想起有一次离职之后老师悠悠的对我说&

读罢《七年失败的程序之路》,让我不由得想起了很多事。

想起上海写字楼里那个穿着帅气职业装的美女总裁问我的“职业规划”,想起有一次离职之后老师悠悠的对我说:“你会有很多经历,但不会有资历。”

窗外的阳光还是像小时候一样的晃眼,不觉间我已在这人世间35个年头。

我在写《折腾》,很多人追着看,说精彩。但我自己知道,精彩是精彩,但还远远没有成功。律师、装修、管理、编程开发……这一大锅乱炖,不知道最后会是个什么模样?所以其实我的职业生涯是失败的,我不得不创业,不得不自己来整合这些资源,因为人才市场上,根本没适合我的位置。

如果我重来一次的话,我会怎么做?呵呵,不知道,或许还是这样?但好歹也见得多了,经历得多些,就“装大”一些,给不想像我一样的新人们一些建议吧。

思考的出发点

授人以鱼不如授人以渔,一篇文章不可能囊括一切、适合每一个人。所以,纲领性的东西非常重要。

对于就业而言,你的思路一定要把握两个最基本的“出发点”:

  • 企业需要什么样的人
  • 我能成为什么样的人

下面的所有结论其实都基于这两点而展开。

频繁跳槽好不好

因为自己就是一个频繁跳槽的人,所以对这个问题思考得最多。其实啊,既好又不好,得分阶段得看情况。

先说好的。

  • 找到自己的定位。这一点很多同学没有注意到,其实跳槽就是一个寻找自己坐标的过程。刚毕业的大学生,很少有企业敢要,一个很大的原因是他们“不稳定”,这种不稳定是非常正常的。刚刚毕业,进入社会,想象和现实完全不一样,自己都傻眼了……怎么办?只有不断的试错啊,在试错的过程中认识自己,找到自己的位置。跳槽,就是一种试错的过程。没有这么一个经历,人始终是浑浑噩噩的(当然,很多人一直跳槽,都还是浑浑噩噩的,呵呵,此处不表)。我见过有的人,毕业就一个单位待着,然后三四十岁了,才开始迷茫……这个时候迷茫,就太迟了一些。
  • 开阔眼界。每个公司的管理都是不一样的,多看看,不管好坏,总是能学到一些东西的。见识,是一个人能力的重要组成部分。
  • 提升薪资。工资都是跳出来的,这个道理我就不多说了。

再说不好的。

  • 履历不好看。没有一个公司喜欢频繁跳槽的员工,这个……大家就自己想办法了。
  • 没有资历。资历包含两方面的东西:
    • 我们通常意义上的资历。一些重要的职位,是很难交给一个“外人”的,无论从忠诚度、文化认同、熟悉默契程度等各方面考虑,这既是人之常情,也是有一定道理的。要不然,“空降兵”为什么总是都会捅娄子呢?
    • 另外一层的意思,很多人没抓住。“我就钻研技术,不喜欢勾心斗角拍马屁,要资历有什么用?”要知道,任何事情,都是需要一定的时间才能真正掌握的,越是复杂的东西越是如此。很多时候,你以为你懂了,其实还早着呢!你以为你维护的代码就是简单的“增删改查”,ctrl+c加ctrl+v,但实际上呢?核心的东西、框架性的东西,根本就没让你接触。为什么不让你接触?你不懂啊。就算给你,框架性的东西,一定要站在全局的高度考虑问题,没一段时间的浸淫,你敢说你就了解全局了?

什么时候应该跳槽

这个问题就更难回答了。笼统的可以有一句话:“在这里工作得不到你想要的东西的时候,你就可以跳槽了”。但这句话显然没什么卵用。这样吧,我分阶段的讲。

毕业两年

这个时候,跳槽可以稍稍随意些。反正我让你慎重你也不会听。这个时候跳槽最大的好处就是“机会成本低”——反正也不会损失什么。而且找工作也是越来越好找,工资也越来越高。也没什么注意事项,大不了犯了点错误,比如从下一个阿里巴巴创始团队离职了之类的,这种概率……算了,不去想他了。

毕业五年

这个时候,跳槽就需要多些考虑了。

第一、你可能不那么好跳了。不是说你离了这家单位就找不到工作,而是可能找不到更好的了。是不是更好,简单的说,看工资,能高出现在工资50%(我的标准是要翻番)才行。工资的增长,不是一个线性函数,随着你工龄的增长,工资的增长是越来越缓慢的,直到天花板。

第二、所以你考虑的就得周全一些了。其实这个时候,抱怨牢骚就应该慢慢的少了,“天下乌鸦一般黑”,你憎恨的那些东西,哪家公司都一样。所以再意气用事,一言不合就走人,难免让人笑话。考虑跳槽的时候,最应该问的,应该是你自己:你究竟想要过一种什么样的生活?在这里有没有可能得到。这个时候容易犯的错误就是:看不惯公司。觉得公司没前途啊、管理混乱啊、代码质量像坨屎一样……吐槽可以吐一整天。但这些和你有关系么?公司的薪水按月发了么?发了。发了不就得了!你给公司干活,公司给你钱,你一个写代码的,你操哪门子老总的心?吐槽可以,吐吐更健康,但拿自己的利益自己的前途去拼(裸辞啥的),就没意思了。还是以代码质量为例,你确定下一家公司的代码质量就好?你怎么确定的,面试的时候让你做了code review?是的……啊?好尴尬,当我没说。

毕业十年以后

这时候,你已经是“人精”了,就不用我多讲了吧?这个时候,自己出去找的话,单从工资,估计长不了多少啦,得等人来挖。然后更多的是算title、期权股份、甚至人生价值之类的。上有老下有小,自然要慎重得多。每一次跳槽,都是一次重大的人生抉择,估计觉都睡不着也是可能的。

骗鬼呢?!我都干了十年了,哪有什么人挖我啊?还不是一天到晚惨兮兮的加班搬砖……别急别急,我们继续往下看。

成长的路径

和工资的增长一样,能力的成长也是一个越来越缓慢的过程。刚开始工作的两年,你学得很快;慢慢的工作越来越熟练,你却发现,日复一日的工作就是一种重复劳动而已?数十年如一日,哪里还会有什么成长?

其实这就是生活的本来面目,至少是绝大多数人生活的方式。

绝大多数人,那还有少部分人呢?如果你读得用心的话,你马上就会问。好问题!

总有那么一些人,他们拒绝平庸。

我做过一些行业,接触过更多行业的人。我发现一个有趣的现象:每一个行当的人都在抱怨。律师觉得中国没有法治精神,设计师说客户根本不懂得审美,程序猿……程序猿大家都知道了。但有一种人很少抱怨,偶尔的抱怨更像是一种寒暄,“唉呀!今年的生意不好做啊……”但你真和他坐下来,他的生意经是一套一套的,眼睛里冒着绿光,像极了一匹饿狼。

是的,今天,他们有一个更高端大气上档次的名字:“创业者”,虽然有时候,这个词也充满了讽刺和奚落。但无论如何,创业者和打工仔是两种人:创业者,是要解决问题;打工仔,只是完成任务。能“保质保量按时完成任务”的,绝对就是优秀员工了;很多职场“老油条”,信奉的是要会“打太极”卸责任,无事一身轻。而创业者,没有问题他都要想方设法的发现问题。发现不了问题,你还创什么业?“痛点”在哪里?这句话现在已经相当流行了。然后,就是全力以赴想尽一切办法解决它!

并不是说你就得马上辞了工作去创业,但你可以在现在的工作中有一种创业者精神。“我有啊!我发现了公司好多问题:产品经理脑子有毛病,需求翻来覆去的变;项目进度没有规划,天天加班;代码到处都是ctrl+c加ctrl+v,烂得像坨屎一样;没有企业文化团队精神,大家都在混日子……”好,那你怎么解决的呢?“我给老大反应过,他说要解决要解决,然而一直没变化。所以就先混着呗,等着拿了年终奖走人!”这就是解决问题的方法?

你们可能不会相信,有的人,是这样做的:拿到手里的需求会先分析一遍,然后找到产品经理简单的聊一聊,就固化了好些需求;随时盘算着项目的进度,所以deadline之前自己的代码写完了,还能帮帮同事;他写的代码很少有bug,抽时间还在小范围内做了一点重构;和同事的关系都很融洽,大家都觉得和他一起做事有劲儿……你的周围有这样的人么?一定有的。

他们不是在抱怨环境,而是在提高自己。

鸡汤,是吧?我发现现在的人,动不动就觉得是老板在给你“洗脑”。其实你也真太把自己当回事了,他给你“洗脑”干嘛?像我以前说的,有这个精力有这个本事,他不知道去忽悠投资人忽悠客户?其实啊,很多时候,和你也就真是闲聊而已。只不过有些话,你没到那个位置没到那个高度,说了你也听不懂,反而把它当成“鸡汤”。黎叔给我说过的话,我能理解么?理解不了,但我觉得很有意思,我硬记下来的。硬记下来的东西是很容易忘的,我为什么没有忘?我随时都把这些话翻出来琢磨。

鸡什么汤,洗什么脑啊,你以为上面那些人,就是老黄牛一样的傻子,把命卖给公司啦?屁,没多久拍拍屁股就走人了——年终奖都不要了。这家公司是程序员,下家公司就是项目经理,凭什么?凭他在上家公司已经把项目经理的活儿给干了呀!

有一次和一个朋友聊天,他工作这不顺那不爽的,我就随口问了句:“那你为什么不‘跳’了呀?”他像看白痴一样的看着我:“跳不了啊!能跳我还不跳?”我生生的把那句话又咽了下去:“为什么跳不了呢?”这也太伤人啦。

 

+++++++++++++++

 

哇噻,写了不少了。困了,要不就先这样,大家觉得有意思下次再写。我要去练我的胸大肌了,O(∩_∩)O~



推荐阅读
  • Java项目分层架构设计与实践
    本文探讨了Java项目中应用分层的最佳实践,不仅介绍了常见的三层架构(Controller、Service、DAO),还深入分析了各层的职责划分及优化建议。通过合理的分层设计,可以提高代码的可维护性、扩展性和团队协作效率。 ... [详细]
  • 本文深入探讨了面向切面编程(AOP)的概念及其在Spring框架中的应用。通过详细解释AOP的核心术语和实现机制,帮助读者理解如何利用AOP提高代码的可维护性和开发效率。 ... [详细]
  • 本文总结了优化代码可读性的核心原则与技巧,通过合理的变量命名、函数和对象的结构化组织,以及遵循一致性等方法,帮助开发者编写更易读、维护性更高的代码。 ... [详细]
  • 使用Powershell Studio快速构建GUI应用程序
    本文介绍了如何利用Powershell Studio创建功能强大的可视化界面。相较于传统的开发工具,Powershell Studio提供了更为简便和高效的开发体验,尤其适合需要快速构建图形用户界面(GUI)的场景。 ... [详细]
  • 深入解析SpringMVC核心组件:DispatcherServlet的工作原理
    本文详细探讨了SpringMVC的核心组件——DispatcherServlet的运作机制,旨在帮助有一定Java和Spring基础的开发人员理解HTTP请求是如何被映射到Controller并执行的。文章将解答以下问题:1. HTTP请求如何映射到Controller;2. Controller是如何被执行的。 ... [详细]
  • 在尝试使用C# Windows Forms客户端通过SignalR连接到ASP.NET服务器时,遇到了内部服务器错误(500)。本文将详细探讨问题的原因及解决方案。 ... [详细]
  • 本文回顾了2017年的转型和2018年的收获,分享了几家知名互联网公司提供的工作机会及面试体验。 ... [详细]
  • Linux环境下进程间通信:深入解析信号机制
    本文详细探讨了Linux系统中信号的生命周期,从信号生成到处理函数执行完毕的全过程,并介绍了信号编程中的注意事项和常见应用实例。通过分析信号在进程中的注册、注销及处理过程,帮助读者理解如何高效利用信号进行进程间通信。 ... [详细]
  • 深入理解Java多线程并发处理:基础与实践
    本文探讨了Java中的多线程并发处理机制,从基本概念到实际应用,帮助读者全面理解并掌握多线程编程技巧。通过实例解析和理论阐述,确保初学者也能轻松入门。 ... [详细]
  • 程序员版情书:王思聪的编程式告白
    当程序员用代码表达爱意,会产生怎样的化学反应?一起来看看这封充满技术感的情书,网友笑称这才是真爱! ... [详细]
  • Java中的基本数据类型与包装类解析
    本文探讨了Java编程语言中的8种基本数据类型及其对应的包装类。通过分析这些数据类型的特性和使用场景,以及自动拆装箱机制的实现原理,帮助开发者更好地理解和应用这些概念。 ... [详细]
  • 远程过程调用(RPC)是一种允许客户端通过网络请求服务器执行特定功能的技术。它简化了分布式系统的交互,使开发者可以像调用本地函数一样调用远程服务,并获得返回结果。本文将深入探讨RPC的工作原理、发展历程及其在现代技术中的应用。 ... [详细]
  • 在寻找轻量级Ruby Web框架的过程中,您可能会遇到Sinatra和Ramaze。两者都以简洁、轻便著称,但它们之间存在一些关键区别。本文将探讨这些差异,并提供详细的分析,帮助您做出最佳选择。 ... [详细]
  • 本文深入探讨了UNIX/Linux系统中的进程间通信(IPC)机制,包括消息传递、同步和共享内存等。详细介绍了管道(Pipe)、有名管道(FIFO)、Posix和System V消息队列、互斥锁与条件变量、读写锁、信号量以及共享内存的使用方法和应用场景。 ... [详细]
  • 本文详细介绍了如何正确配置Java环境变量PATH,以确保JDK安装完成后能够正常运行。文章不仅涵盖了基本的环境变量设置步骤,还提供了针对不同操作系统下的具体操作指南。 ... [详细]
author-avatar
刘延庚
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有