前言

写这篇文章的初衷主要是最近发生了两件事,让我感慨良多,觉得踏入这个行业的初始,有些事情就应该长远考虑,这样对职业发展才更有利,仅仅停留在技术的追求上固然能壮大自身,可逆水行舟的程序员们终究会面临职业转折点,如何避免自己成为弃子是一个沉重又不得不思考的话题。本篇的两个故事就是我分享给大家的真实情况,以及我的一点点感悟。

事件

1、我的老师找不到工作了

  很多年前我参与过技术培训的机构,一位和我亦师亦友且是同乡的老师,忽然微信找到我,问我有没有合适的工作可以推荐,5-6K就行,我当时人懵了,问他没当老师了?他说几年前学校就不行了,他去武汉工作了一段时间,碍于家里老婆孩子及年迈父母的恳求又回老家了,面试了很多家公司都找不到工作,听说我也在当地,就想我帮帮忙推荐下。



  他的言辞甚至有点落寞和尴尬,这只是我个人的感觉,随之而来的就是我满嘴的苦涩和内心的五味杂陈。



  他是我2010年-2013年参加技术培训的一名java任教老师,曾经是华为的工程师,有丰富的SSH三大框架使用经验,java编程思想这本书他说自己看过了不下十遍,也参与了当年华为的很多项目,SSH框架在当年是主流,他们那个时候只要会其中一个就已经是抢手货。



  但我自从出师去广州工作以后就较少联系了,这么多年过去了,我即将为人父,忽然知晓他的近况后非常难过,在床上躺了好久,始终想不明白为什么他这样的程序员会面临如今的状况。



  我努力把他的简历推给了我认识的两个人事,请求她们帮忙在圈内提供点渠道,接下来他面试了3家才终于应聘上了我们当地软件园的一家公司,可月薪只有5.5k,福利也很一般,在我们当地的IT公司算是中游收入,但毕竟了却了他一桩心事,这个年纪还要养孩子开销也多。



  找到工作后他很开心,说要请我吃饭,我答应了不过最近没什么时间,就约了晚点。我能感受到他的喜悦,对一个曾经的华为工程师来说,这种发自内心的喜悦反而对现在的我是一种打击,甚至引起了我长久压抑的职业恐慌,他的今日会是我的明日吗。

2、我的老师被迫转行了

  第二件事,是上个月发生的。



  同样是这个培训结构的老师,我和他没有之前的老师熟悉,他当年专门带我们做项目,还带我们参加过湖北的编程创新大赛,拿过二等奖,我还记得当时做的就是医疗相关的项目,当然现在看来就比较low了。



  这名老师不是本地人,老婆是当地的,曾经在北京中关村工作多年,后在武汉当过好几年的讲师,也是很有经验的程序员,有高级软件工程师的资质证书。



  那天来了一个面试的,在我们公司门口说“你好,我是来面试的。”,当时听声音我就一愣,扭头一看,纳尼?这不是我老师吗,不过我发福了也带了眼镜他没认出来,人事把他领到隔壁一个咖啡馆去了,是我们服务大楼自己的咖啡馆挺安静。



  我偷偷出去望了下,看他一个人坐在那里,人事去别处了,估计是叫主管,但主管正在开会,所以就让他在那里坐着先等等。我按捺不住莫名的心情,悄悄去咖啡馆假装逛了两圈,确认了就是我当年的老师。



  我走过去他身边假装惊讶的喊了声“黄老师,你怎么在这里?”,他抬头看到我的时候是很迷茫的,然后忽然醒悟过来,脸上露出难明的笑容,也问我怎么在这里,我说我就在这里的公司上班,聊了两句他就知道他面试的就是我所在的公司,当时的氛围别提多尴尬了。



  我很主动的给他介绍了公司的情况,还说了公司可能会问什么什么问题之类的,但后面我意识到其实我越是积极他反而越是尴尬,这种感受可能是一种很多人都有的落差,毕竟以前他是我的老师,我在他面前就是一小白,他笃定没想到会有一天面试自己学生的公司。



  期间,我问过他的情况,才知道学校不行了之后他也去其他地方带课了,但很多公司越来越卷,要求也越来越高,他年纪变大之后力不从心,也不是能说会道的管理型人才,人到中年为了家庭只能到处奔波,去了外地几次还赶上疫情,最后还是回到老家了,几经辗转,有点心灰意冷。



  中间他有叹口气让我印象深刻,说:唉,实在学不动了。我听了后有点心塞,但很快转移了话题,聊些家常之类的,知道他有二胎是个女儿,他还打开照片给我看,很可爱,我这次主动要了他的微信以免断了联系。



  后来他面试我们公司没过,我记得主管面过之后在我面前说这人工作那么久了啥也不会,白干了那么多年,我立马打消了告诉他这个人是我老师的念头,因为我也开始有顾虑了,怕主管觉得我是这种老师教出来的,后面一段时间我都很低落,主要是我觉得自己的行为有点自私,和我以往乐于助人的心态产生了冲突。



  前一周的时候我有看到朋友圈这个老师的动态,他入职了一家从事网络继续教育的公司,貌似他专门负责招生和宣传,我心情既开心又复杂,随后又想到自己,他的今日会是我的明日吗。

请教

  这周五晚,我所在的项目组聚餐,项目经理是一个老油条,以前也是搞技术的,后来转型做了项目经理。我们公司比较特别,有一个专门的技术主管,只负责技术把控及架构体系搭建和维护,然后有好几个项目经理分别负责不同项目。



  聚餐到中途,大家都喝了点酒,我就在项目经理旁边,想了想我还是厚着脸皮问了下他。



  我说:杨总,你以前也是搞技术的,怎么不继续了,转型当项目经理了。



  他说:大部分人总有一天搞不动了,不转型就要被淘汰。



  我说:那10个程序员里面顶多就一两个能转型成功,剩下八九个都只能淘汰吗?



  他说:是啊,所以你想继续干下去,就必须转型,死活也要转型,硬着头皮也要转型。



  我其实是想得到一些我潜意识期待的答案,但现实依然是冰冷的,给我浇了一盆凉水,我这会儿都还记得他当时说话的表情,还是蛮认真的,估计是觉得我平常很实在,所以这个老油条听我问这个就回答的比较实在。



  后面聚餐结束各回各家,我给老婆倒了洗脚水,然后帮她捏了捏浮肿的腿,一边捏心里一边想这些事情,项目经理的这句话其实很真实,事实情况也的确如此,疫情之后这种趋势也越发明显。



  还是回到我前面问过他的那个问题,10个程序员,顶多一两个转型成功,剩下的八九个真的都避免不了淘汰的命运吗,大家都知道进入这个行业还是蛮辛苦的,花了那么大精力学习编程,除了真正不喜欢的人,我想没有谁不想一直干下去,谁会那么轻易的就放弃,所以我有一些自己的思考。

建议

我的建议可能不适用所有同行,但一定对在校学生、即将入行、入行5年以内的同行们有帮助,以及对一部分像我一样同样在思考的同行有帮助。

1)、在校时,有条件尽量报班,早点进入圈子,建立自己的人脉关系,这些师兄弟及老师都是未来你的同行,能给你后面的工作、面试、内推等提供很多机会,重要的是,能少走弯路;

2)、在校时,重视基础和读书,以我为例,我当年上学侧重点是在实战和做项目,这也是培训机构的特点,早实战早就业,但随着工作年限变长,你会和一开始就重视基础及思想的人差距越来越大,最直接的区别就是,你还在写接口,和你一样起跑线的人可能已经在写开源项目了;

3)、在校及刚工作5年内的同行,早点报软考,也就是程序员资质的考试,这是国内目前含金量最高的软件资质证书,而且是终身有效,受益终身,每年两次机会,在大城市对于想定居的外来人口是一个硬性红利,早报考对找工作有先天优势,许多公司投标重视这个资质,而且企事业单位尤其喜欢看学历和这个软件资质,尽量早点把高级软件工程师资质考下来,我公司就有一个是在校时就报班拿下的,现在有很多机构专门协助考这个,中级以上资质在很多城市都被列为科技人才标准,还有的中小型公司专门找这样的人付钱挂靠,这是个考下来就一本万利的东西;

4)、参加工作后,除了技术工作以外,人际关系非常重要,以我现在的感悟,应该是最重要的了。这种人际关系包含了同行、人事、老板等等,是一种人脉资源的积累,对于在某一个城市常年打拼的工程师而言,多结交同行和朋友是一种不需要什么成本的投资,但后期带来的收益是巨大的,比如你想换工作,你认识的人多你内推的机会就多,比如你想单干,有人脉你才有渠道,甚至你哪一天混得不好了或者公司垮了,你结交的同行多,你度过困难时期的机会就更大,就像现在的疫情,导致很多人丢了工作,你如果没什么朋友,只能自己到处奔波,但你朋友多,给个机会说不定就能进,现在就是一个资源交换、信息交换的时代。

5)、入行后,早作未来副业的打算,哪怕不是这个行业的也要尝试一下,多培养一些业余兴趣,比如我一个同学现在经常每个月能有两千多的外快,就是专门做UI设计的,他可是程序员啊!但他喜欢做UI设计,一直当成兴趣很多年慢慢形成了自己的副业,最终变现了。或者你也可以写博客,经营公众号,尝试写开源项目等等,要早点确立一个副业基础,然后不断学习深耕并坚持下去才行,但凡是和运营相关的事情,都是靠坚持才能看出来成效,然后微调自己的方向,不尝试的话一定面临职业转折点带来的危机,我知道的几个知名博主和公众号达人以及开源项目作者,百分之九十都是在校和刚工作期间就开始积累的,直到多年以后才真正爆发变现。

6)、如果有条件有机会,尽量趁30岁之前进入企事业单位,这个话题之前被争论了很多年,但我说点实在话,回首看,还是铁饭碗好,别说什么靠技术走遍天下,一场疫情能直接给你打回原形,把你梦想击碎,结果还是企事业单位稳如老狗。比如我公司服务的医院,就有自己的信息科,里面的工程师恕我直言都是laji,但是你每次看到人家就会有一种自己很虚浮的感觉,这是因为人家踩的是地,你踩的是天空,人家永远脚踏实地行走,你有一天却有可能直接掉下来。听老哥一句,能进则进,不进随缘。

总结

尽人事,听天命。如果觉得有用,可以点个推荐 ,关注一下,未来一起加油,

我会持续分享工作中的经验和趣事给大家。

【Java分享客栈】我曾经的两个Java老师一个找不到工作了一个被迫转行了的更多相关文章

  1. 【Java分享客栈】我为什么极力推荐XXL-JOB作为中小厂的分布式任务调度平台

    前言   大家好,我是福隆苑居士,今天给大家聊聊XXL-JOB的使用.   XXL-JOB是本人呆过的三家公司都使用到的分布式任务调度平台,前两家都是服务于传统行业(某大型移动基地和某大型电网),现在 ...

  2. 【Java分享客栈】SpringBoot整合WebSocket+Stomp搭建群聊项目

    前言 前两周经常有大学生小伙伴私信给我,问我可否有偿提供毕设帮助,我说暂时没有这个打算,因为工作实在太忙,现阶段无法投入到这样的领域内,其中有两个小伙伴又问到我websocket该怎么使用,想给自己的 ...

  3. 【Java分享客栈】一文搞定CompletableFuture并行处理,成倍缩短查询时间。

    前言   工作中你可能会遇到很多这样的场景,一个接口,要从其他几个service调用查询方法,分别获取到需要的值之后再封装数据返回.   还可能在微服务中遇到类似的情况,某个服务的接口,要使用好几次f ...

  4. 【Java分享客栈】SpringBoot线程池参数搜一堆资料还是不会配,我花一天测试换你此生明白。

    一.前言   首先说一句,如果比较忙顺路点进来的,可以先收藏,有时间或用到了再看也行:   我相信很多人会有一个困惑,这个困惑和我之前一样,就是线程池这个玩意儿,感觉很高大上,用起来很fashion, ...

  5. 【Java分享客栈】一文搞定京东零售开源的AsyncTool,彻底解决异步编排问题。

    一.前言 本章主要是承接上一篇讲CompletableFuture的文章,想了解的可以先去看看案例: https://juejin.cn/post/7091132240574283813 Comple ...

  6. 【Java分享客栈】超简洁SpringBoot使用AOP统一日志管理-纯干货干到便秘

    前言 请问今天您便秘了吗?程序员坐久了真的会便秘哦,如果偶然点进了这篇小干货,就麻烦您喝杯水然后去趟厕所一边用左手托起对准嘘嘘,一边用右手滑动手机看完本篇吧. 实现 本篇AOP统一日志管理写法来源于国 ...

  7. 【Java分享客栈】我有一个朋友,和前端工程师联调接口被狠狠鄙视了一番。

    前言 我有一个朋友,昨天和前端工程师联调一个接口,然后被狠狠鄙视了一番. 大家知道,自从前后端分离以后,像我一样一直以Java工程师为傲而自居的码圣们就砍掉了一半脊梁,从此被贴上了"Java ...

  8. 【Java分享客栈】一个包装过简历的新同事写完微信支付引起事故后果断离职了

    前言 挺长时间没发文了,因为公司有一个紧急项目要赶进度,加班如吃饭喝水,久违的进入到码农的状态. 之所以抽空来发个文,是这个项目才刚上线,时间不长却因为一位新同事的代码引起了生产环境的事故,造成了一批 ...

  9. 「Java分享客栈」Nacos配置中心称王称霸,我Apollo一生也不弱于人!

    前言 Apollo又称阿波罗配置中心,在前两年还是挺火的,但阿里SpringCloud套件席卷国内之后,nacos就成为了最被亲睐的分布式配置中心,nacos是配置中心和注册中心二合一的产品,单纯功能 ...

随机推荐

  1. 反射操作dll类库之普通类和各种方法调用

    一.使用方法 查找DLL文件, 通过Reflection反射类库里的各种方法来操作dll文件 二.步骤 加载DLL文件 Assembly assembly1 = Assembly.Load(" ...

  2. Hashmap如何同步?

    当我们需要一个同步的HashMap时,有两种选择: ●使用Collections.synchronizedMap(..)来同步HashMap. ●使用ConcurrentHashMap的 这两个选项之 ...

  3. Dubbo telnet 命令能做什么?

    dubbo 服务发布之后,我们可以利用 telnet 命令进行调试.管理. Dubbo2.0.5 以上版本服务提供端口支持 telnet 命令 连接服务 telnet localhost 20880 ...

  4. 使用 Redis 有哪些好处?

    1.速度快,因为数据存在内存中,类似于 HashMap,HashMap 的优势就是查 找和操作的时间复杂度都是 O1) 2.支持丰富数据类型,支持 string,list,set,Zset,hash ...

  5. Javascript 占位符替换

    String.prototype.format=function(){ if(arguments.length===0){ return String(this); } let reg=/(\{\d\ ...

  6. JS的箭头函数this作用域

    name="小刚"; let student={ name:"小明", printLog:function(){ // 这里绑定了顶层作用域,可以使用变量与方法 ...

  7. C++ pair的基本用法总结

    1,pair的应用 pair是将2个数据组合成一组数据,当需要这样的需求时就可以使用pair,如stl中的map就是将key和value放在一起来保存.另一个应用是,当一个函数需要返回2个数据的时候, ...

  8. Dockerize an ASP.NET Core application

    原文:Dockerize an ASP.NET Core application 介绍 本示例演示了如何对ASP.NET Core应用程序进行容器化. 为什么要构建ASP.NET Core? 开源 在 ...

  9. JavaScript HTML5脚本编程——“历史状态管理”的注意要点

    历史状态管理是现代Web应用开发中的一个难点.在现代Web应用中,用户的每次操作不一定会打开一个全新的页面,因此"后退"和"前进"按钮也就失去了作用,导致用户很 ...

  10. 【译】客户端存储(Client-Side Storage)

    本文转载自:众成翻译译者:文蔺链接:http://www.zcfy.cc/article/660原文:http://www.html5rocks.com/en/tutorials/offline/st ...