陈世元:被保送中科院,两次被裁,人生不能老是按部就班的走下去,需要冒险,尝试一下新的东西

《程客有话说》是我们最新推出的一个访谈栏目,邀请了一些国内外有趣的程序员来分享他们的经验、观点与成长故事,我们尝试建立一个程序员交流与学习的平台,也欢迎大家推荐朋友或自己来参加我们的节目,一起加油。

本期我们邀请的程序员是陈世元,学习成绩优秀,被保送中科院,从力学转行程序员,从业时间近10年。

1、请自我介绍一下。

我叫陈世元,一名90后,15年毕业,工作到现在,将近十年了,一直在做后端开发,java为主。
我一开始学的是力学专业,因为当时不太好找工作,15年的时候互联网正如火如荼,就转行学了计算机。开始我是自学的,后来找了个培训班,去北大青鸟学的java,学完之后,就找了一家小公司工作,一家做网贷的公司,待了半年多吧,公司就直接就倒闭了。我也被裁员了,所以说第一份工作也比较悲剧吧。
被裁了之后,去了一家小公司,做APP后端开发,后来感觉前景比较渺茫,待了一年,跳槽去了搜狗,我觉得小厂待的风险比较高,在搜狗待了两年半,又跳槽去了字节跳动,遇到了职业瓶颈,换去了soul,但互联网行业开始迎来寒冬,加上疫情的影响,又被裁员了,我是经历过两次被裁的。失业在家3个月后,去了集度科技,一家新能源车企,做cdp平台,一直到现在,大概是这样一个情况。

2、你的读书成绩很好,分享一下自己的学习方法?学习的驱动力来自哪里?

刚进大学的时候,基本上很少有娱乐时间,基本都是花在学习上面,确实比较刻苦,全身心投入到学习里面去了。到大三大四的时候就开始松懈了,开始迷上了Dota这类游戏。
学习方法上还是要多看书,大学的课程我感觉难度不大,有难度的课程就那么几个,还是要靠自己去探索课外的东西。另外一点就是自驱性,我还是比较喜欢主动学习的,不管是上学,还是后来工作中,转行也是因为自学了java。

学习的驱动力,一方面是兴趣爱好,一方面是对未来生活的期望。学习一直是我的兴趣,也是希望未来有一个好的发展,毕竟人需要有进取心,不能总是当闲鱼。
其实大学的时候还是有一些理想主义的,越到后面,工作之后,就更加现实一点了。比如说我得考虑在这个行业深耕,能达到一个什么地步,能不能多挣点钱养家糊口。

3、你是如何走上程序员的职业道路的?

我在中科院的时候,是在力学所,力学所需要搞很多的实验,我的实践动手能力比较差,写那个论文感觉就很头疼。我们也有软件开发课程,开发程序去做一些计算,我对这个很感兴趣,我大学的时候C语言学的特别好,基本都是100分。

找工作的时候,也跟一些同事,同学、朋友交流,很多也都转行了,当时互联网行业也很火,所以说当时也就选择尝试转行程序员,也有几个同学跟我一样转程序员的。当时有这个风气。

当时投简历,力学专业也投,java也投,力学的工作一般都是国企,工资给的低,当时有几家让我去,但他们不给户口。甚至我都已经去一家国企实习了一段时间了,他们也已经准备要我了,但后来最终放弃了,因为他没有户口,工资给的也不高,后来就去了一家互联网私企。

如果说它给我户口,我可能就会走一条完全不同的路了。走上程序员这条路也有一些偶然吧。

4、在北大青鸟,它是一个什么样的水准?

他们是一种速成的,适合那些完全没有接触过的小白。我觉得它有一定的优势,虽然门槛比较低,确实给我一些实际的项目经验,这个是比较重要的,通过一个具体的项你就知道编程这个东西它能干啥,是前端,还是后端,还是MVC架构,通过具体项目,才能对整个工程的架构有一定了解。自学只能熟悉那个代码的逻辑,知道怎么写代码了,但是让你去做个项目,你是无从着手的。通过这种培训班,给你提供一种工程。虽然说不是完全的工程经验,但是相当于有了一定的工程经验基础。它不会给你讲底层的原理是什么样的,它至少告诉你怎么操作。

第二点是学习氛围。你自己自学的话也能做到,但是对自驱能力要求非常高,虽然我也自学,但是你在培训班里面,跟大家一起学习,有老师指导的话,他的氛围会比较好,而且有问题可以相互交流,老师也可以给你解决,个人成长的速度更快,如果你自己去做的话,也能做到,但需要花更多的时间。经历或遇到很多坑,你根本不知道怎么解决,效率会低很多,对个人自驱性要求太高了,所以这也是它的优势。
缺点也有,它就是速成班,目标很明确,就是让你学会做这个事情,底层的原因他不会跟你细讲。

5、在中科院学习是怎样一种体验?

我刚保研过去的时候,确实挺兴奋的,我是在中科院力学所,首任所长是钱学森。它的氛围是非常open的,很自由,你自己选课,只要考上学分就ok了,主要的核心点在于导师。你做科研,科学方向规划,都是导师来给你规划的,你要及时跟老师沟通好,未来要怎么走,发论文,立项等等。

去立项是比较麻烦的,个人感觉从这开始就有难度了,研一、研二跟大学差不多,研三你就得有一些探索了,自己就得去研究了,这就不一样。这块是我做的不太好的地方,没有及时跟导师沟通项目,本来是三年的,我延了一年。因为第一年论文没实验做的效果,结果不好。

总体来说,中科院给我感觉挺不错的,就是非常自由,氛围也很自由,爱怎么搞就怎么搞,只要你不挂科就行,科研项目你跟导师安排好就行。

6、写了近10年代码,你如何评价程序员这个职业?

程序员是比较适合那种沟通能力相对弱的,能沉浸在自己的世界里面做东西的人,它更注重逻辑思维,核心能力是抽象能力,我甚至觉得抽象能力比逻辑思维更重要。这样的人适合做程序员。薪资相对一般的行业,也更高一点,前景更加广阔。

互联网企业的氛围也更加开放自由,不像国企,你要处理各种的复杂的人际关系,你得去跟领导拍马屁什么的。甚至运气好的话,也能达到财务自由,对于我们这种社会底层的人,家庭条件一般,又想靠自己的能力去实现阶级跨越,程序员还是一种是非常不错的方式,至少有一定的优势吧。

缺点的话确实比较累。对身体方面消耗比较大,我在加班特别严重那个时候。身体就每况愈下,就感觉每天干到11点钟就受不了。

第二个缺点是,因为你太过于专注内在的世界,在一些社交方面就很缺乏,你的社交圈就比较少,像我的话,平时就带带娃、陪陪家人,很少跟外面人交流,就感觉与世隔绝一样。

第三点,就是不稳定,像我的话就面临两次被裁员了,随着这个行业越往下走,它可能就越来越不稳定。包括35岁危机怎么去避免?包括我现在也在面临这个问题,我还不知道怎么解决。

7、全球79%的开发者都在使用Java,使用这么久,你如何评价它?

一开始学编程的时候,调研过各种语言,最开始接触的是C语言,虽然我学的比较好,但是我不太喜欢它,什么数组、指针这些东西,特别绕,当时调研的时候java是最火的,所以当时就选择了java,因为你换行,你不能换太冷门了。

相对来说,java的学习曲线比较平缓,门槛不是那么高,对很多人来说比较容易上手,但是C语言的话,门槛就高一点,第二,它的生态特别好,各种框架、各种扩展非常丰富,很方便,开发效率比较高。性能也是不错的,相比python都会好一点。

当然我觉得最大的优势就在于用的人比较多,职业岗位多。这也可能带来一个缺点,他为什么岗位多?意味着它的可替代性高。

8、是否用过AI辅助编码的工具?感受如何?未来编程语言会被替代吗?

相比传统的搜索引擎,确实它的代码质量会高很多,但我用了一段时间就没用了。因为我感觉平时还用不到它,只有在一些很极端的情况才会用。这是我个人的使用习惯,我还是通过浏览器去查询问题,哪怕我们公司都已经把它封装成一个东西,体验特别好,不用机场也可以随便用,我还是不怎么用。

另一方面,因为用了几次后,针对一些具体的问题,他其实回答并没有那么好,你还是得看一些文章,其他人的文章可能会更加系统一点,他可以告诉你怎么写代码,一些思路什么他不会跟你讲。不会给你讲一些原理性的东西,你去看别的文章的时候,从思路背景,知识点到具体的代码。很清晰,写代码你如果不知道原理,遇到具体的业务,你还是不会做。

对于新手来说,确实比较方便,提高了很多效率。可能对于我这种工作这么久的人,帮助并不是很大。对于我们来说,编码效率不是那么重要,重要的是你对业务的理解,去编排这个业务,更多的在于你思考的过程,而不是在于那个写代码,把思路给理清了,把逻辑给理清,这才是关键点。
这块的话,AI帮不上什么忙。核心点是它没法去帮你完成这个抽象的过程。而且做到后面之后,最关键的一点,你得去跟PM去把这个需求给聊清楚了。把这个项目给安排清楚了,这才是最关键的。沟通才是关键的,写代码往往是花时间最少的一个环节。

9、你经历了两次被裁员?也呆过好几家公司,感受如何?

当时天天在家里,一开始挺爽的。因为疫情只能待在家里,第一个月没啥事,第二个月就开始着急了,养两个娃压力确实大,真的比较着急了,我媳妇就劝我去银行,我也理解,工资降了一半,低一点就低一点吧,就稳定一点吧,当时整个人的想法就变了,后来银行业没要我,可能觉得年龄太大了。

后面感觉越来越焦虑,两三个月之后,就感觉整个人的心理状态就不大好。比较容易暴躁,因为一直找不工作,家人也会觉得很担心,生活质量也开始下降,不敢消费。每天自己在家就看面试题。你学习久了,整个人也很压抑。
我建议,刚开始工作的时候,最好去大厂呆一下,我之前最开始去小厂,然后再去大厂。工作氛围,个人能力,代码规范、团队协作,大厂会更专业,对个人的成长确实帮助非常大。在小厂的话,就基本上没有人带你,全靠你自己去钻研,进步很慢。

第二是方向的选择,还是要挑赚钱的业务。因为我们程序员是为业务服务的。要尽量选择挣钱的业务。因为你公司是哪来的,还是挣的钱,公司挣的钱给你发的,所以说你这个业务挣不挣钱是核心点,我当时做广告,方向选的没问题,是挣钱的业务,就不应该走。所以说当时还是太天真了,去soul的时候。它就不挣钱,虽然说它是核心业务,而且是去带个团队。饼画的挺好,后来还是被裁员了。

现在的公司是一家新能源车企,因为我觉得新能源是未来。其实也不理性,从稳妥的角度来说,还是去快手,因为他的业务是挣钱的。但我还是选了新能源,第一我不想那么累。第二赌一把。

反正我都已经30多岁了,继续做广告还是重复以前的工作,我觉得人生不能老是那种按部就班的走下去,有时候需要冒险,尝试一下新的东西,这是我真正的想法,反正就这样了,还能再差哪去?大不了失业再找。心态变化真的挺神奇的,这是一个自然的状态,所以说一直待到现在。

10、会一直做程序员吗?对未来的工作与生活,有何畅想或期待?

我最近确实一直在思考这个问题,也在做一些探索。

从失业的时候就非常有危机感,你会意识到不会在一家公司永远待下去,不能完全把希望寄托于这个公司不倒,那个行业一直发展好,一直往上走,那是不可能的事情,必须有自己的第二职业。

所以现在也在尝试一些副业,也决定做一些自己真正喜欢的事情。比如说我现在开始学习做游戏。自己有可能成为一名独立游戏开发者。我现在已经开始学习游戏引擎了。另外一方面我也在学习一些其他的语言,比如rust,提高我的竞争力,我觉得核心还是学习吧,通过学习去提高自己的能力,扩展自己的边界。

有的时候,选择真的远远大于努力。这是我比较感慨的一点吧,我感觉自己的职业生涯不算很成功,虽然也没有很差,举个例子,我的大学同学,他比我还晚入行。选的方向是机器学习,他去了京东,马上就要升P9了,就跟我已经不是一个level了。

公司环境、业务、leader,可以选择的时候一定要把握好。一个好的环境,一个好的方向,遇到一个好的团队,对你个人的影响是天翻地覆的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Qt学习】QLineEdit 控件 属性与实例(登录界面,验证密码,正则表达式)

文章目录 1. 介绍2. 实例使用2.1 登录界面2.2 对比两次密码是否相同2.3 通过按钮显示当前输入的密码(并对2.2进行优化)2.4 结语 3. 正则表达式3.1 QRegExp3.2 验证输入内容 4. 资源代码 1. 介绍 关于 QLineEdit 的详细介绍,可以去查阅官方文…

Web安全之浅见

备注:这是我在2017年在自己的网站上写的文章,今天迁移过来。 昨天去参加了公司组织的一个关于网络安全的培训,了解了很多关于网络安全方面的知识,也才意识到网络安全是一项极其重要的领域。 本篇文章主要聊聊Web安全。不过我对于网…

vue3使用pinia-plugin-persistedstate 持久化不生效的问题

如下图所示,需要在路由拦截器里面写。不然一个都不生效。 【即使以前生效的,在下图【红框】中定义一下,也会失效。得挪到路由拦截器里面才行】 终于出来了

【GPTs分享】每日GPTs分享之Canva

简介 Canva,旨在帮助用户通过Canva的用户友好设计平台释放用户的创造力。无论用户是想设计海报、社交媒体帖子还是商业名片,Canva都在这里协助用户将创意转化为现实。 主要功能 设计生成:根据用户的描述和创意需求,生成定制的设…

MyBatis-Plus 优雅实现数据加密存储

文章目录 前言一、数据库字段加解密实现1. 定义加密类型枚举2. 定义AES密钥和偏移量3. 配置定义使用的加密类型4. 加密解密接口5. 解密解密异常类6. 加密解密实现类6.1 AES加密解密实现类6.2 Base64加密解密实现类 7. 实现数据库的字段保存加密与查询解密处理类8. MybatisPlus配…

Sora热潮下,如何充分利用AI减少人工测试需求?

近日,OpenAI发布视频生成模型Sora,再次引发全球科技圈讨论热潮。Sora可以根据用户输入的简短文本指令,生成长达1分钟的高清视频,视频画面具有真实感,带有些许电影质感。 根据IDC的预测,未来五年内&#xff…

Java项目:20 基于SSM实现的支教管理系统

作者主页:舒克日记 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 ssm支教管理系统(前台后台) 前台角色:支教学校志愿者 支教学校功能模块:支教学校查询报名职位发布已…

Android横竖屏切换configChanges=“screenSize|orientation“避免activity销毁重建,Kotlin

Android横竖屏切换configChanges"screenSize|orientation"避免activity销毁重建,Kotlin 如果不在Androidmanifest.xml设置activity的: android:configChanges"screenSize|orientation" 那么,每次横竖屏切换activity都会…

【鸿蒙 HarmonyOS 4.0】数据持久化

一、数据持久化介绍 数据持久化是将内存数据(内存是临时的存储空间),通过文件或数据库的形式保存在设备中。 HarmonyOS提供两种数据持久化方案: 1.1、用户首选项(Preferences): 通常用于保存应用的配置信息。数据通…

如何使用Express框架构建一个简单的Web应用

在这个数字化时代,Web应用的需求越来越多样化和复杂化。在前端开发领域,Express框架作为一个快速、灵活的Node.js Web应用程序框架,拥有强大的功能和丰富的生态系统,深受开发者们的青睐。本篇博客将带您一步步探索如何使用Express…

JS进阶——解构赋值

数组解构 基本: let [a, b, c] [1, 2, 3]; // a 1 // b 2 // c 3 可嵌套 let [a, [[b], c]] [1, [[2], 3]]; // a 1 // b 2 // c 3 可忽略 let [a, , b] [1, 2, 3]; // a 1 // b 3 不完全解构 let [a 1, b] []; // a 1, b undefined 剩余运…

LLMChain使用 | RouterChain的使用 - 用本地大模型搭建多Agents

单个本地大模型搭建参考博客 单个Chain:面对一个需求,我们需要创建一个llmchain,设置一个prompt模板,这个chain能够接收一个用户input,并输出一个结果;多个Chain:考虑到同时面对多个需求&#x…

【计算机网络】网络基础知识

一. 网络发展史 独立模式(单机模式):计算机之间相互独立,各自拥有独立的数据。 网络互连:将多台计算机连接在一起,完成数据共享。 随着时代的发展,越来越需要计算机之间进行互相通信&#…

#1.4w字长文#仿抖音项目架构设计与实现

一、项目介绍 本文介绍了一个Web端短视频应用,致力于为用户提供交互友好、功能完备的短视频浏览体验和直播体验。 集成了Gorse推荐算法,旨在为用户提供更个性化的推荐视频流和更权威的热门视频流。接入大模型,通过对视频内容进行语言分析&a…

旧物回收小程序开发,开启绿色生活新篇章

随着科技的发展和人们生活水平的提高,物质生活的丰富带来了大量的废弃物。如何合理处理这些废弃物,实现资源的再利用,已成为社会关注的焦点。旧物回收小程序的开发与应用,为这一问题提供了有效的解决方案。本文将探讨旧物回收小程…

洛谷C++简单题小练习day14—闰年推算小程序

day14--闰年推算小程序--2.18 习题概述 题目描述 输入 x,y,输出 [x,y] 区间中闰年个数,并在下一行输出所有闰年年份数字,使用空格隔开。 输入格式 输入两个正整数 x,y,以空格隔开。 输出格式 第一行输出一个正整数&#xf…

C++笔记:OOP三大特性之多态

前言 本博客中的代码和解释都是在VS2019下的x86程序中进行的,涉及的指针都是 4 字节,如果要其他平台下测试,部分代码需要改动。比如:如果是x64程序,则需要考虑指针是8bytes问题等等。 文章目录 前言一、多态的概念二、…

Linux网络编程(三-UDP协议)

目录 一、UDP概述 二、UDP的首部格式 三、UDP缓冲区 四、基于UDP的应用层协议 五、常见问题 一、UDP概述 UDP(User Datagram Protocol,用户数据协议报)是传输层协议,提供不可靠服务,其特点包括: 无连接:知道对端…

探针类型、方式及实验

目录 1、tcpSocket方式 2、就绪检测 3、就绪检测2 4、启动、退出动作 5、探针 5.1探针的三种类型 5.2探针的三种方式 1、tcpSocket方式 vim tcpsocket.yaml apiVersion: v1 kind: Pod metadata:name: probe-tcp spec:containers:- name: nginximage: soscscs/myapp:v1live…

300分钟吃透分布式缓存-10讲:MC是怎么定位key的?

我们在进行 Mc 架构剖析时,除了学习 Mc 的系统架构、网络模型、状态机外,还对 Mc 的 slab 分配、Hashtable、LRU 有了简单的了解。本节课,将进一步深入学习这些知识点。 接下来,进入 Memcached 进阶的学习。会讲解 Mc 是如何进行…