那位五十多岁的创业者给我的启示!

作者:邹溪源,长沙资深互联网从业者,架构师社区特邀嘉宾!


我曾经提到过最终改行从事美缝行业的老w,他靠自己的“不够努力”,最终离开了行业。

但是,这个世界其实有点讽刺。

在沉迷于安逸小日子的老w每天朝九晚五,只想拿钱,不想干活的那段日子,隔壁的总经理办公室却经常通宵达旦、灯火通明,那位五十五岁的老板Y总,正在为了自己的梦想努力奋斗着。


在加入公司之前,我曾经见过一次Y总,那是在一个茶室,跟Y总有过一番简单的沟通后,我打算去公司看看,以便了解公司实际的产品情况。

于是受到技术团队负责人的邀请,我选择了一个阳光明媚的下午,坐上了被当地人称为“最长公交线路”的127路公交车,在那条的弯弯曲曲的公交线路上,折腾了大概一个多小时,终于才来到了目的地,位于当地东北角的某商务写字楼。并再次见到了Y总。

虽然是第二次见到Y总,但是第一次其实只是简单的沟通,并没有仔细打量这位领导。这一次,算是对Y总有了更加深刻的印象。

那是一位两鬓开始逐渐开始冒出白发的中年男子,身体精瘦、精神饱满、看起来充满了力量,他操着一口相对于当地人来说非常纯粹的普通话,给我留下了非常深刻的印象。当听他提起他自己已经55岁时,我的内心泛起了波澜。

这是一位和我的父亲一般年龄的中年人啊~在这个年龄,他居然选择了创业,着实让我大吃一惊。

当然,他显然非常的专业,在简单概要的介绍了公司的创业方向、拥有的背景和资源之后,让我深刻的体会到,他一定是想干一番大事业。

于是,我毫不犹豫的加入了公司,并期待在这里开启职场的新征程。


创业公司的发展,总是跌宕起伏,看似波澜不惊,其实暗藏杀机。尤其是选择合适的人才,更是难点中的难点。谁都想选择最优秀的人才,但是在优秀的专业人才和优秀的跨职能型人才间,其实非常难以选择。

还好,本人算是一个勉强称职的跨职能型开发者,在我们部门的经理离职之后,毅然扛起了部门的重担,为公司勉强完成了一个非常不错的项目,使得公司能够获得短暂的喘息之机。

但是老w所在的项目,却面临了巨大的问题。

首先是优秀人才的缺失,毕竟能够深刻领悟如何基于物联网技术构建平台的应用开发者,在当时非常的稀缺,更何况公司所能付出的资源(要钱没钱,要股份没股份)其实非常有限,也显然很难招到合适的人才,而这仅仅只是我所看到的web开发方面,还有更严重的方面是物联网基础技术方面。

说来也搞笑,没有物联网基础技术,又如何做物联网产品呢?其实倒也不完全没有积累,这位老板和物联网部门的负责人曾经参与创办了另外一家非常优秀的物联网公司H公司,他们花了十年时间让这家公司从无到有,到做到国际一流。后来H公司业绩到了瓶颈,他们想为公司开辟新的业务方向,才创建了这家新的物联网公司。但是虽然同是物联网创业方向,但选择的技术路线和实现模式却不尽相同,而在新的技术路线上公司的积累非常浅。而在最关键的时候,拥有核心开发能力的一位嵌入式系统开发者,居然只打了个招呼,连交接和培训新人都没有认真开展就离开了公司,使得公司技术层面面临巨大的断层。

为了完成这个项目,Y总只好自己迎难而上。那段时间他不得不捡起曾经荒废多年的嵌入式系统开发技术,天天加班到深夜。每天早上又最早来到公司,恨不能尽早完成目标。

他就不怕猝死么?显然,他是怕的。但为了公司的生存,其实他别无选择。


我曾经冒昧的问过他选择创业的原因,他只是轻轻一笑,还不是为了实现自己创业的梦想?

显然他不愿意过多的描述。但是联想到Y总的职业生涯,我大概能猜到一部分原因。

Y总虽然是北方人,但是在这片热土已经呆了三十几年。八十年代在第一大学就读的Y总,年轻时学习成绩特别好,不仅保送本校研究生,还直博,方向是某个热门的领域。当博士毕业后,也许他也曾想去沿海地区发展,但是他最终留下来主导该校的某领域的学术研究。

又过了几年,市场经济放开的九十年代,他也有许多选择的机会。在该领域浸淫十几年的他,一定收到了许多沿海企业或外资企业的聘书,但是他并没有做出这样的选择。

又过了十年,四十岁,他已经决定放开手脚出去干一场时,又是家庭压力最大的时候。也许去沿海城市会让他家庭和事业难以兼顾,他最终还是没有迈出哪一步。

一晃五十岁,他从学校退休。子女也出过留学,得到了顶级互联网公司的offer,基本上算是没什么压力了。

也许,从二十几岁到五十几岁,他错过了太多的机会。

他也曾经偶尔提到那些跟他一起读书的同学,或者研究所的同事,在离开象牙塔后,有的加入了互联网公司花了十年时间获得了财富自由,有的甚至创办了挺不错的公司。

Y总虽然也曾参与了一家公司的创办过程,却并没有从零开始创办一家属于自己的公司,而且他自认为这家公司虽然业务还算稳定,但在技术上,不能算卓越,只能算优秀。由于没有赶上风口,所以做得非常费力;而且行业领域非常狭小,很难获得更大的发展。

他显然想挑战自己。

然而,创业难,难于上青天。

我也最终选择了离开这家公司。依稀记得Y总说过的话:“人生短短80年,其中从二十几岁毕业到六十多岁退休,期间有四十年时间。如果抱着把行业当做一辈子的心态,就该前二十年学经验,后二十年才能有经验可以用。”

当然,没有任何一个人敢说自己的技能能够通吃一辈子,也不可能每个人都会在一个公司、一份工作上干一辈子,变化才是人生的常态。适应变化和主动学习,正是人的基本能力。尤其是程序员,有许多程序员能够花十年赚到二十年才能赚到的钱,但是之后呢?年纪轻轻三十岁就养老吗?

学习这条路,其实根本没有终点。

长按订阅更多精彩▼如有收获,点个在看,诚挚感谢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/310624.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

平衡二叉树(AVL树)-详解平衡调整

平衡调整: (注意:平衡调整只是平衡调整,没有进行结点的插入) LL型调整: (带阴影的小框表示插入的结点) 代码如下: AVLNode *AVLTree::LL_Rotate(AVLNode *a) {AVLNode *b;b a->lchild;a->lchild b->rchild;b->rchild a;a->bf b-&g…

初识消息队列/RabbitMQ详解

欢迎大家阅读《朝夕Net社区技术专刊》我们致力于.NetCore的推广和落地,为更好的帮助大家学习,方便分享干货,特创此刊!很高兴你能成为忠实读者,文末福利不要错过哦!今天来给大家分享关于消息队列的内容&…

zookeeper理解

Zookeeper简介 Zookeeper的数据模型 层次化的目录结构,命名符合常规文件系统规范每个节点在zookeeper中叫做znode,并且有一个唯一的路径标识节点znode可以包含数据和子节点,但是EPHEMERAL类型的节点不能有子节点Znode中的互刷可以有多个版本…

那些年,在MSRA实习过的女孩,现在都怎么样了?

编者按:我们用两周时间回访了五位在 MSRA 实习过的女孩,她们也都是当年“实习派”的主人公。我们本想在更长的时间维度下,看一看 MSRA 给予她们的改变。然而超乎预期的是,在她们身上,坚持的力量比改变更强。变与不变&a…

[Qt入门] QPushButton创建

1.创建一个QPushButton(按钮): #include "mywidget.h" #include <QPushButton>myWidget::myWidget(QWidget *parent): QWidget(parent) {//创建一个按钮QPushButton * btn new QPushButton;btn->show();//show以顶层方式弹出窗口控件//让btn对象 依赖在my…

Zookeeper理解---ZAB协议

ZAB协议 Zookeeper并不是完全采用Paxos算法&#xff0c;而是使用了一种称为Zookeeper Atomic Broadcast&#xff08;ZAB&#xff0c;Zookeeper原子消息广播协议&#xff09;作为数据一致性的核心算法&#xff0c;依据此算法来实现分布式数据一致性的解决。他是一种特别为Zooke…

【最强VSCode】之管理MySql数据库

(梅花香自苦寒来)你没有看错&#xff0c;就是用VSCode来管理MySql数据库&#xff0c;我也是第一次听说&#xff0c;感谢群管理DX小伙伴&#xff0c;三人行必有我师焉。话不多说&#xff0c;直接开张&#xff0c;VSCode还是很不错的&#xff0c;以后多多分享插件吧。1、你平时是…

[Qt入门]QMainWindow创建

代码如下: #include "mainwindow.h" #include <QMenuBar> #include <QToolBar> #include <QDebug> #include <QPushButton> #include <QStatusBar> #include <QLabel> #include <QDockWidget> #include <QTextEdit>…

Zookeeper--ZAB与Paxos算法联系与区别

ZAB与Paxos算法的联系与区别 两者联系 两者都存在一个类似于Leader的进程角色&#xff0c;由其负责协调多个Follower进程的运行Leader进程会等待超过半数的Follower做出正确的反馈后&#xff0c;才会将一个提案进行提交在ZAB协议&#xff0c;每个Proposal中都包含一个epoch值…

[Flags]标识的Enum不能使用Html.GetEnumSelectList方法

在使用Asp.Net Core MVC写程序时&#xff0c;对用户类型做了如下定义&#xff1a;namespace ManufacturingExecutionSystemCore.Enums {public enum UserType{[Description("无身份人员")][Display(Name "无身份人员")]UnidentifiedPerson0x00,[Descripti…

[Qt入门]模态和非模态对话框创建

模态对话框创建: #include "mainwindow.h" #include "ui_mainwindow.h" #include<QDialog> #include <QDebug>MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui->setupUi(this);connect(ui->…

Zookeeper实践与应用- Canal

基于MySql BinLog的增量订阅和消费组件&#xff1a;Canal Cancal是阿里13年1月开源的一个基于MySql数据库Binlog实现的增量订阅和消费的组件。项目取名Canal取自管道的英文单词&#xff0c;流转的医生&#xff0c;是一个定位于基于MySql数据库Binlog增量日志来实现数据库镜像&…

你遇到的面试官是「伯乐」吗?

之前写了一篇应应聘者视角的「面试中要注意的点」&#xff0c;《聊聊面试的事&#xff08;应聘方&#xff09;》。这次再来一篇面试官视角的。如果你不是面试官&#xff0c;也没关系。所谓“知己知彼&#xff0c;方能百战百胜”&#xff0c;了解一下面试官在面试时的侧重点&…

[Qt入门]消息对话框创建

错误对话框: //错误对话框QMessageBox::critical(this,"critical","错误");信息对话框: //信息对话框QMessageBox::information(this,"info","信息");提问对话框: //提问对话框//1.QMessageBox::question(this,"ques",&quo…

记录一次线上超时异常查询

线上事故复盘 前言 前一次上线&#xff0c;当时正常&#xff0c;第二天发现有部分超时报警&#xff0c;最终发现应为Dubbo接口一次传输数据量太大导致线程虚拟内存占用 线上问题排查过程 报警邮件中查询到有一部分接口超时量激增&#xff0c;查询定位到某个Dubbo接口&#x…

没用过.gitignore还敢自称高级开发?

Git是跟踪项目中所有文件的好工具&#xff0c; 但是&#xff0c;您会希望在项目的整个生命周期中不要跟踪某些文件及其变更。系统文件&#xff08;i.e. Mac系统的.Ds_Store&#xff09;应用程序配置文件&#xff08;i.e. app.config, .env&#xff09;构建组件&#xff08;i.e.…

[Qt入门]QTreeWidget控件创建

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this);//treeWidget树控件使用//设置水平头ui->treeWidget->setHeaderLabels(QStringList()<<"英雄&…

支付价格计算中精度问题之double,float

前言 前段时间开发新的微信小程序&#xff0c;借此机会将老掉牙的支付模块重构&#xff0c;并且支持现金支付&#xff08;之前都是虚拟币支付&#xff09;&#xff0c;在重构期间遇到计算上的一些精度问题&#xff0c;虽然数额影响非常小但是影响比较大&#xff0c;我觉得有必…

.net core 集成 sentry 进行异常报警

.net core 集成 sentry 进行异常报警IntroSentry 是一个实时事件日志记录和汇集的平台。其专注于错误监控以及提取一切事后处理所需信息而不依赖于麻烦的用户反馈。它分为客户端和服务端&#xff0c;客户端(目前客户端有 C#, Python, PHP, JavaScript, Ruby等多种语言)就嵌入在…

[Qt入门]QTableWidget控件创建

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this);//TableWidget控件//设置列数ui->tableWidget->setColumnCount(3);//设置水平表头ui->tableWidget->…