如果IBM再给我一次实习机会

2023-11-06

2014年,我拿到了IBM斯图加特R&D的实习机会。在连续被索尼和博世拒掉之后,这个实习对我来说弥足珍贵。我学的是通信专业,在这之前与编程相关的活动只有一学期的安卓Lab,还是靠抱队友大腿才及格。在申请时,我的编程能力可以说几乎为0。连我自己都说不好,manager怎么会在十几个人中间选择了我。

初进公司之时我非常努力,想着要做出一番大事业。公司里聚集了全世界的大神,都可以在内部聊天软件上联系到。基本上抓住一个人问问题,那人不管工作多忙都会耐心回复。公司有自己的技术博客,也有很多技术交流活动,如果真的想学,不愁没有资源。

但是,我的工作状态渐渐改变了。

首先,每天三个小时的通勤时间让我渐渐懈怠。IBM R&D在另一个市,只有一趟小火车线路来回,还经常晚点。作为美企,IBM有work from home的员工福利,只要发封邮件,就可以在家办公一天。其实所有人都知道,work from home是不会work的,尤其是对我这种毫无自律性可言的人。可是自作聪明的我,告诉自己这样可以省去上下班的时间,于是几乎每周都有一两次work from home,然后毫无产出。

第二,IBM的工作氛围相当轻松,基本没有人逼着干活。十点到公司,经过咖啡厅,会看到一群人在喝咖啡吃早饭;十一点半,人群涌向食堂;吃完午饭,又去咖啡厅喝茶聊天到两点;喝完咖啡回到办公室,写写邮件打打电话,一天的工作就结束了。

其实,以公司展现出来的宽容作为对自己的要求,是一种非常愚蠢的行为。可惜,那时的我并未意识到。

有一天,我发现隔壁部门有一个来自西安的中国小姐姐。在一群德国同事中看到一个中国面孔,是非常快乐的事。而她的性格很外向,每天下午都会来找我聊天,于是我就离开办公室,跟她一起去散步喝茶,每次都要至少一个多小时。

其实在那时,实习生是有自己的办公室的;但是有一次manager看到我们整个下午一直在喝茶说笑时,就要求我搬到了他的办公室去。这已经是一个很强的暗示了,我那时竟然还是毫无察觉,并未对自己作出任何改变……

除了这两点以外,还有一点让我松懈了下来,那就是我的技术基础太差。我的第一个任务是改编Node.js源码,定制一个web页面给用户使用。天知道对一个从没碰过编程的人来说,这个任务有多抽象——我还记得我请公司里一个大神给我讲Node.js。他第一句话就是:你的runtime是什么?然后我花了一个周时间查“runtime”的意思……

当时的我觉得,既然实习对我来说,只是完成学期项目的任务而已,只要表现不是太差,都不会影响最后的绩点,那又何必那么费劲地努力呢?还不如回家做点好吃的。

事实证明老天是公平的,没有一个人可以持续好运。自己欠下的债,追究是要自己还的。

我的manager是一个四十多岁的德国男人,每天能在电脑前一动不动地坐十几个小时,桌上堆满了空的可乐瓶子。他非常沉默寡言,但是一讲起技术来就浑身发光,蓝眼睛中神采奕奕。

他在那时已经是一个web方面的架构师,有很强的技术背景,研究的都是比较前沿的东西,包括将IBM的人工智能投入一些智能家居的产品。Node.js在当时还未在国内流行,这门技术对当时的我,虽然是稍微高端了一点,但是如果我能够踏踏实实地把web基础补齐,再学习一些Node.js的基本理念,不管当时有没有留在IBM,我的职业发展跟现在可能完全是另一番光景了。可惜,这一点我很久以后才认识到。

前几天,我跟这位manager又取得了联系。跟他的一番对话,又验证了我的想法:其实他一直以来都感觉到我不够努力,也为此而痛心,只是无法叫醒一个装睡的人,自己也颇感无奈。

在沮丧之余,我开始了反思:到底是缺失了什么,让我当时毫无上进之心,错过了一个那么好的学习机会?

我想,在那时的我,有一个非常欠缺的能力,那就是自主思考

实习中积累的技术、经验和人脉,会在寻找下一份工作的时候增加筹码,使得职场之路更加顺利”,这是一个很简单的道理,但是当时的我从未想过这件事情,因为我没有经济独立的意识,总觉得赚钱很容易,不愿意脱离学生思维,喜欢呆在自己心理上的舒适区。

再向深处挖掘,会发现职业观(甚至人生观)的形成,跟一个人从小到大的家庭、眼界、兴趣、阅读量等等都有很大的关系。我生长在山东,人生前18年最重要的事情就是高考。无论是在学校还是在家里,都习惯了被安排人生。高考结束后,我的人生就开始飘忽。我的大学过得浑浑噩噩,研究生也错过了许多好机会。

还记得有一次做技术学生工,内容是写网页,我也是过了很久都没有产出。我的老板当机立断不再跟我续约,并非常残酷地说:“在我的观察看来,你远远不够努力;如果你觉得你已经很努力了,只能说明你不适合做这一行。

如果我在听到这段话时,就痛下决心反省自己的观念,可能会进步得快一些。可惜,我只是去跟朋友诉了苦,抱怨老板没人性,然后逼迫自己忘记了这桩屈辱。现在看看,一个装睡的人还真的很难叫醒,当时的我面对成长,最喜欢做的事情就是逃避……

在我找到第一份工作之后,这种幼稚的逃避心态一直延续着,直到我的几个朋友看不过去了,苦口婆心地劝说我(穷好面子的我,甚至还为此跟他们吵了好几架……),再加上残酷的工作环境把我从温室拉回现实,我才慢慢建立了一个比较健康的职业观。

我至今都感激这些诤友愿意怀着极大的爱和耐心给我讲这些道理,也慢慢尽我所能回报着他们。如果没有他们,我可能还在懒惰着、抱怨着,毫不自知地走着弱者之路。

当我终于意识到我和别人的差距并不在于智商和能力,而是在于长期的人生规划、通过从错误中反省自身来获得成长的习惯,以及把“我怎么这么差”变为我还没有很厉害,怎样才可以变得厉害呢这种积极的心态,我的习惯性逃避才渐渐消失。

我开始观察那些优秀的人,揣摩他们的心路历程,吸取其中的助益。我也督促自己看书、跟积极向上的朋友一起参加各种活动、尝试各种新鲜东西,再也不怕自己看起来很傻。甚至连我的拖延症都有所缓解。

一个人是否走上那条快速进阶之路,要看他对世界的认识是否正确。从小,我们背负着父母给的根深蒂固的观念前行,只有潜心修行的同时敞开心扉,聆听到世界对我们的那些启示,我们才能越来越接近真理。职业发展,从来都不仅仅是技术能力而已。它是一个人大到世界观,小到生活习惯,方方面面的反映。

如果IBM再给我一个机会让我去实习,我会每周给自己设立一个小目标,朝着目标去努力,每周五给manager汇报我的进展;我会主动约manager每周给我答疑,把自己放在绝对新人的位置,不会因为问错问题而感到丢脸;我会去跟隔壁办公室的大牛们请教,让他们帮我参考,列出一个详细的计算机知识长期学习计划;我会每次完成一个task就跟manager谈谈,看看下次能不能挑战一个高难度一点的任务;我会主动参与产品设计和讨论的会议,了解一个产品从构思到上市是如何运行的;我会拒绝小姐姐上班时喝茶的邀约……

如果那时就这样做了,现在的我会在哪里呢。

或许想这些是没用的,只好从今天开始,就抓紧每一秒钟,用尽全力。

 

转载于:https://www.cnblogs.com/mozi-song/p/10053202.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果IBM再给我一次实习机会 的相关文章

  • 如何检测浏览器是否支持自定义元素

    我正在查看 Modernizr 它应该有助于功能检测 这应该可以帮助确定您的网站是否与给定的 Web 浏览器兼容 但我没有看到任何表明我可以使用它来检测自定义 HTML 的内容我们在内容中创建和定义的元素 如果不是 Modernizr 我如
  • 将 OoXml 插入单词抛出错误:未知

    我一直在尝试通过office js将OOXML插入到word文档的正文内容中insertOoXML 方法 我什至尝试过最简单的实现 认为我在尝试替换 XML 本身中的 fieldCodes 时做了一些不正确的事情 所有结果都是这样Error
  • 使用 vscode 调试器调试 next.js

    我已经使用安装了一个项目创建下一个应用程序 https github com segmentio create next app 我需要使用我的编辑器 vscode 调试服务器端渲染 所以我访问过vscode recipes 如何调试 ne
  • 关闭选项卡时要求确认[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 当我在某些浏览器上关闭页面时 我希望出现一个消息框 并询问我是否真的要关闭页面 有两个按钮 如果我单击No那么这个标签就不会被关闭 我怎样
  • jQuery AJAX 调用 Java 方法

    使用 jQuery AJAX 我们可以调用特定的 JAVA 方法 例如从 Action 类 该 Java 方法返回的数据将用于填充一些 HTML 代码 请告诉我是否可以使用 jQuery 轻松完成此操作 就像在 DWR 中一样 此外 对于
  • 使用 jQuery/JS 打开时使
    标签的内容具有动画效果

    我只想要 HTML5 的内容details标记为 滑行 动画打开 而不是仅仅弹出打开 立即出现 这可以用 jQuery Javascript 实现吗 Fiddle http jsfiddle net 9h4Hq HTML
  • Meteor:应用程序无法在 0.9.1.1 版本上运行

    出现类似错误 Error TypeError undefined is not a function evaluating Template create anonymous function iron dynamic template j
  • 如何监听 jQuery AJAX 请求?

    以下两种实现 ajaxRequest 1 2 的方法应该是等效的 话说回来 为什么验证回调已执行的单元测试 3 在 1 中成功而在 2 中失败 我应该如何重写测试 3 来监视 2 中的成功回调 如果我尝试stub jQuery ajax使用
  • 为什么是 javascript:history.go(-1);无法在移动设备上工作?

    首先 一些背景 我有一个向用户呈现搜索页面 html 表单 的应用程序 填写标准并单击 搜索 按钮后 结果将显示在标准部分下方 在结果列表中 您可以通过单击将您带到新页面的链接来查看单个结果的详细信息 在详细信息页面中 我添加了一个 返回结
  • 标签获取 href 值

    我有以下 html div class threeimages a img alt Australia src Images Services 20button tcm7 9688 gif a div class text h2 a hre
  • 在requestAnimationFrame中使用clearRect不显示动画

    我正在尝试在 HTML5 画布上做一个简单的 javascript 动画 现在我的画布是分层的 这样当我收到鼠标事件时 背景层不会改变 但带有头像的顶层会移动 如果我使用 requestAnimationFrame 并且不清除屏幕 我会看到
  • 如何使用tampermonkey模拟react应用程序中的点击?

    我正在尝试使用 Tampermonkey 脚本模拟对 React 元素的点击 不幸的是 由于 React 有自己的影子 DOM 所以天真的方法使用document querySelector 不工作 我遇到了一些需要修改 React 组件本
  • 如何获取给定 DOM 元素的所有定义的 CSS 选择器?

    如何使用 jQuery 获取给定 DOM 元素的所有定义的 CSS 选择器 定义后 我的意思是在应用于任何样式表的所有 CSS 选择器document 在某种程度上 这类似于 FireBug 实现的功能 其中显示所选 DOM 元素的所有应用
  • 为什么我不能在 AngularJS 中使用 data-* 作为指令的属性名称?

    On the t他的笨蛋 http plnkr co edit l3KoY3 p preview您可以注意到属性名称模式的奇怪行为data 在指令中 电话 Test of data named attribute br
  • Javascript转换时区问题

    我在转换当前时区的日期时间时遇到问题 我从服务器收到此日期字符串 格式为 2015 10 09T08 00 00 这是中部时间 但是当我使用 GMT 5 中的 new Date strDate 转换此日期时间时 它返回给我的信息如下 这是不
  • 条件在反应本机生产中失败,但在开发中有效

    我创建了一个反应本机应用程序 我需要通过它进行比较 如果属实 就会执行死刑 问题是 该条件适用于 React Native 开发模式 而不适用于 React Native 生产版本 我使用 firebase 作为数据库 也使用 redux
  • Javascript 纪元时间(以天为单位)

    我需要以天为单位的纪元时间 迄今为止 我已经看到过有关如何翻译它的帖子 但几天后就没有了 我对纪元时间很不好 我怎么能得到这个 我需要以天为单位的纪元时间 我将解释为您想要自纪元以来的天数 纪元本身是第 0 天 或第 1 天的开始 无论您如
  • 将 MQTTNet 服务器与 MQTT.js 客户端结合使用

    我已经启动了一个 MQTT 服务器 就像this https github com chkr1011 MQTTnet tree master例子 该代码托管在 ASP Net Core 2 0 应用程序中 但我尝试过控制台应用程序 但没有成
  • 如何在 pg-promise 中设置模式

    我正在搜索的文档pg 承诺 https github com vitaly t pg promise特别是在创建客户端时 但我无法找到设置连接中使用的默认架构的选项 它始终使用public架构 我该如何设置 通常 为数据库或角色设置默认架构
  • fullCalendar 未显示正确的结束日期

    我正在看调试页面 http jsbin com wukofacaxu edit js outputFullCalendar 官方网站的 我想安排一个活动时间为 22 09 2015 至 30 09 2015 dd mm yyyy 但它只显示

随机推荐

  • MyBatis-Plus系列(一)--MyBatis-Plus集成Druid环境搭建

    一 简介 Mybatis Plus是一款 MyBatis 动态 sql 自动注入 crud 简化 增 删 改 查 操作中间件 启动加载 XML 配置时注入 mybatis 单表 动态 SQL 操作 为简化开发工作 提高生产率而生 Mybat
  • 大数据教育平台数仓实时计算实现 附安装包与脚本

    一 Spark Streaming Spark Streaming 是核心Spark API的扩展 可实现实时数据的可扩展 高吞吐量 容错处理 数据可以从许多来源 如Kafka Flume Kinesis 或TCP套接字 中获取 并可以使用
  • 模型训练评估——交叉验证法的介绍

    与留出法相似 将数据集D划分为k个子集同样存在多种划分方式 为减小因样本划分不同而引入的差别 k折交叉验证通常要随机使用不同的划分重复p次 最终的评估结果是这p次k折交叉验证结果的均值 例如常见的有 10次10折交叉验证 假定数据集D中包含
  • python opencv键盘监听

    目录 读取图片监听 opencv pyinput 监听小键盘 读取图片监听 for file in files a cv2 imread path file cv2 imshow a a k cv2 waitKey 10 0xFF if k
  • 292. Nim Game

    class Solution public bool canWinNim int n return n 4 0 my first solution if n 4 0 return false else return true
  • 新浪博客插入代码(块)及代码高亮…

    新浪博客不能插入代码是一件非常尴尬的事情 这里将介绍如何在新浪博客中加入代码块及其高亮的方法 所需工具 1 XAMPP数据创建软件 2 wordpress 与 codecolorer 3 CSDN博客 步骤 1 安装wordpress 与
  • pycharm IDE报错 ,记事本打开后出现卡顿,之后出现ide错误

    打开IDE之后进行编辑 点击setting出现页面无反应 右下角出现的提示 ide error occurred see detail submit display 点击进去之后 在点击这个display 类似重启IDE的命令 然后就可以继
  • 微服务架构超详细解析,写得太好了!

    本文将介绍微服务架构和相关的组件 介绍他们是什么以及为什么要使用微服务架构和这些组件 本文侧重于简明地表达微服务架构的全局图景 因此不会涉及具体如何使用组件等细节 为了防止不提供原网址的转载 特在这里加上原文链接 https www cnb
  • 什么是IPU?

    在图像识别的SOC中 有一个很重要的单元 IPU Image Processing Unit 图像处理单元 图像处理单元的目标是提供从图像输入 摄像头传感器 电视信号输入等 到显示设备 LCD显示屏 TV输出 外部图像处理单元等 端到端的数
  • 探索OLED拼接屏的特点及在莱山的场景化应用

    涞山oled拼接屏是一种高清晰度的显示屏 由多个oled屏幕拼接而成 它可以用于各种场合 如商业展示 广告宣传 会议演示等 涞山oled拼接屏具有以下特点 1 高清晰度 oled屏幕具有高对比度 高亮度 高色彩饱和度等特点 可以呈现出非常清
  • go-kit grpc调用及中间件封装

    存在问题 grpc 调用问题 通常我们向业务返回会定义如下的结构 code 20000 msg Success data 但是如果我们定义如下的proro grpc的返回值可以在客户端不能直接使用 还需要使用json进行解析 message
  • 计算机网络1:Tcp三次握手和四次挥手

    一 TCP传输的过程 三次握手 1 建立连接并确认连接 三次握手 过程 1 客户端向服务端发出连接请求SYN 1 seq x 等待服务端响应 状态由CLOSED转为SYN SENT 2 服务端做出响应ACK和连接信号SYN 1 seq y
  • linux在dockers安装rides教程

    在Docker中安装Rider是一项非常有用的技能 因为它可以让您在Linux操作系统上进行开发和调试 本文将介绍如何在Docker上安装Rider 步骤1 安装Docker 首先 您需要在Linux操作系统上安装Docker 您可以使用以
  • 清空文件夹下的SVN文件BAT脚本

    清空文件夹下的SVN文件BAT脚本 1 脚本功能 清空文件夹及其子文件下下的所有 svn文件 避免svn提交时冲突 2 脚本内容 echo on color 2f mode con cols 80 lines 25 REM echo 正在清
  • 智能合约相关设计

    1 运行环境 以太坊采用以太坊虚拟机作为智能合约的运行环境 以太坊虚拟机是一个隔离的轻量级虚拟机环境 运行在其中的智能合约代码无法访问本地网络 文件系统或其他进程 对同一个智能合约 查看什么是智能合约 来说 往往需要在多个以太坊虚拟机中同时
  • 详细实现最短路径(迪杰斯特拉算法)

    最短路径 说白了 就是图里从一个顶点到另一个顶点的最小权值之和 今天 小编带大家一起用迪杰斯特拉 Dijkstra 算法实现它吧 目录 一 实现原理 二 代码实现 一 思路 二 代码 一 实现原理 其实 在小编看来 迪杰斯特拉算法与普里姆算
  • ws协议与http协议的异同

    http协议 识别数据内容 与webSocket协议 同 建立在TCP之上 同http一样通过TCP来传输数据 不同 HTTP协议为单向协议 即浏览器只能向服务器请求资源 服务器才能将数据传送给浏览器 而服务器不能主动向浏览器传递数据 分为
  • Selenium及chromedriver安装教程

    文章目录 安装Python环境及Selenium工具包 使用命令行安装 使用Pycharm安装 安装chromedriver驱动 验证 安装Python环境及Selenium工具包 首先 我们需要安装Python环境 安装好了之后需要安装S
  • keras IMDB数据集 LSTM分类

    在keras提供的IMDB数据集中 word被映射为一个大于0的整数 表示该单词出现频率的排名 这样处理的目的是为了方便按照词频过滤单词 其中0用于表示unknown word 载入数据 x train shape 25000 是一个250
  • 如果IBM再给我一次实习机会

    2014年 我拿到了IBM斯图加特R D的实习机会 在连续被索尼和博世拒掉之后 这个实习对我来说弥足珍贵 我学的是通信专业 在这之前与编程相关的活动只有一学期的安卓Lab 还是靠抱队友大腿才及格 在申请时 我的编程能力可以说几乎为0 连我自