转行做程序员,培训or自学?过来人亲身经历良心分享
大家好,我是良许。
熟悉我的朋友应该知道我是学机械出身的,但是毕业后就自学转行成了一名 Linux 应用开发工程师了。我之前也做了几个跟转行相关的视频,有兴趣的小伙伴可以去看看。

在本文里,我将给大家介绍我转行的时候走过的弯路,并且谈谈我对自学还是培训的看法。
当年决定转行的时候,摆在我面前有两条路,一条是自学,另一条是上培训班。当时我对自己的能力及时间进行分析了一下,最终决定自学转行。因为我觉得,我个人自制力比较强,也非常自律,学习能力也不错,转行应该问题不大。
当然了,我不会告诉你那时候我很穷。
决定自学转行之后,我就开始投入到没日没夜的自学当中。但是,刚开始,跟很多自学的小伙伴一样,不知道自己要学什么,不知道要从哪里开始入手,不知道哪里找资料,陷入了一个非常迷茫的状态。
后来,我去了一个培训班了解情况,但是到最后,我不仅没报他们的培训班,还白嫖了他们的资料及学习路线,这些资料终于让我清晰了接下来要学习的方向。
但是,这仅仅只是个开始。在学习的过程中,我遇到了各种各校的问题,踩了各种各校的坑。一段代码,明明跟视频里的一模一样,结果烧到板子上,死活不运行!好不容易运行成功了,我想要做点小创新,就改了几行代码,结果程序就崩溃了……
类似这样的经历真的是层出不穷,烦不胜烦。但是,更让人受不了的是,每次排查出来,都是一个非常非常小的问题,比如数组边界没考虑,数组越界了,操作空指针了,等等等等很基本的问题。但就这么很基本的小问题,有时候都会被卡住一两天,非常浪费时间。

所以,在这样的情况下,我一路磕磕碰碰,遇到问题自己想办法解决,终于把该学习的东西都学习了一遍。后面的故事,我在此就不多赘述了,大家可以看我的之前的视频。
因为我是靠自学转行成功的,我亲身实践了自学转行这条路,也证明了这条路是可行的。因此,我的一些读者朋友问我转行要自学还是上培训班,我都是建议他们自学就好,因为在我看来这不是一件不可能的事。
但是,现在我要打自己的脸了。如果你现在再来问我的话,我肯定会建议你,直接上培训班吧。
为什么我自学转行成功了,但是却推荐大家去上培训班呢?大家先别急,且听我慢慢分析。
对于自学还是培训,我做了这么一个思维导图来给大家做分享。

对于培训班,它的优点很明显。
首先,培训班会给你提供一个比较好的学习氛围,大家一起学习一起讨论。这对于自制力不强的小伙伴尤其是一个比较好的地方,因为学习氛围比较好的话自然而然会把你带起来。而且比较负责的培训班,会有专人来检查你的进度,督促你的学习。
其次,培训班一般比较贵,拿出那么多钱来学习,多少有点肉疼,对自己多少会有些压力,这些压力也往往会转化为动力。
第三,培训班会给你制定一个清晰的学习路线,课程大纲也比较完善,让你知道先别什么后学什么,你也不至于那么迷茫,基本上跟着老师的步伐就能入门了。
第四,培训班一般会安排一些企业里的实战项目给大家做,大家可以提前适应企业里的开发流程,也可以对自己学到的技能进行一次练手。
最后,培训班也会教你怎么写简历,怎么面试,会给一些面试的建议。当然了,不少培训班会教你怎么包装简历,这点我是不提倡的,还是诚实一些为好。同时,有些培训班也跟一些企业有合作,直接直接内推过去面试。还有培训班会举办招聘会,给大家的就业提供更多可能。
但是呢,培训班的缺点也是非常明显的。
培训班的费用一般都比较贵,一般是2万至8万不等,对于经济条件比较一般的小伙伴是个不小的压力。培训的周期也一般比较长,基本是3个月到半年,也有一年的培训班。如果你的自制力不强的话,非常容易放弃的,报名费也会打水漂。
很多培训班也会对你的简历进行造假,动不动就包装成两三年的工作经验。这一点企业其实是非常反感的,如果你的简历很好看,但能力没跟上,即使通过面试也过不了试用期。
而且,企业一般都不怎么待见参加培训的同学,企业有可能会觉得你学习能力不足,只是因为看到程序员的高薪才来培训进入这个行业的,会从心底对你的能力产生怀疑。
我们再来看自学的优缺点。可以看出来,很多自学的优点对应的是培训班的缺点,对应的,自学的缺点刚好是培训班的优点。
自学一个很明显的优点就是不用交钱,或者说可能需要花少量的钱去买一些资料书籍。而且,选择自学转行的一般自学能力比较强,而这点也是企业比较喜欢比较看重的,面试的通过率一般也会大一些。
但是,自学转行的话,一般没有一个清晰的学习路线,会比较迷茫。而且也没人带你前进,更没人督促你。你很可能不知道从哪里开始学起,不知道学到什么程度。你选择自学转行,那么一切都要靠你自己。如果你的自制力不强的话,很容易就放弃了,转行就会以失败告终。
更要命的是,你要是碰到一点问题的话,没有人帮你解决,只能自己的那边摸索,往往一个小问题就会浪费你好几天时间。
大家应该也看出来了,在视频的开头,我讲了自己自学转行走过的弯路踩过的坑,正是对应自学转行的缺点。其实对于大部分自学转行的小伙伴而言,这些坑或多或少都有踩过。
那么回到话题本身,为什么我推荐大家上培训班而不是自学?
首先,对于大部分人而言,自学不如培训班系统,没培训班深入,很多知识点可能是似懂非懂的状态。如果是在这种状态下去参加工作的话,那么就有点赶鸭子上架的感觉,有些东西虽然学过,但在实际应用中就是不懂得用,甚至都想不起来。所以这样的工作状态,效率自然不会高。正所谓,基础不牢,地动山摇。
然后,最重要的,是时间问题。很多人觉得,自学的话不需要付出金钱成本,但是大家还忽略了另外一个非常重要的成本,那就是时间成本。上面也提到了,你自学转行的话,多少多少都会有迷茫的时候,而且,几乎可以肯定的是你会遇到这样或那样的问题。而这些,都是需要时间成本的。
我自学转行花了一年多,说实话这不是很快的速度,甚至可以说是很慢了。当时我去了解的那家培训班,他们给出的时间是4个月学完所有该学的知识点。
所以,如果参加培训班的话,一般进度会更快,会快出至少半年的时间。而你早半年去上班的话就早多赚钱,多赚出来的钱很容易就会覆盖掉你报培训班的钱,但同时你又更快进入到新的领域,多积累了几个月的经验,也更早了解了软件开发流程,多跟产品经理撕了几个月的逼,这些难道不值得吗?
大家都听说过,时间就是金钱,但在我看来,时间远大于金钱。你好好充分利用你的时间,会创造出更多财富来,包括无形的财富。
但是,在此我也给大家提一个友情建议:即使你报了培训班,也一定一定要靠自己,要主动学习,千万千万不要太依赖培训班。在前几节课他们一般会发一个课表,大家一定要提前去学习,或者至少要提前预习一下,一定要保证进度,保证学习效果。编程这行对自学能力要求比较高,即使你报了培训班,也要做到主动学习。培训班只是一个锦上添花的作用,而不是雪中送炭,一切还是要靠自己。
公众号:良许Linux

有收获?希望老铁们来个三连击,给更多的人看到这篇文章
转行做程序员,培训or自学?过来人亲身经历良心分享的更多相关文章
- 想转行做程序员,是学习JAVA还是Python?哪个更好?
请大家务必审题,转行做程序员,是程序员,并非数据分析也不是软件测试. 首先声明:这是一篇容易引起撕逼的问答,为了祖国和谐,人民安康,请各位看官尽量理性讨论. 同时,这篇文章是面向一些初入行的朋友进行一 ...
- 想转行做程序员,目前想学WEB前端,想问该自学还是报培训班
首先我们还是先看一下WEB前端目前的工资情况吧,我在IT招聘网站拉勾网来进行搜索1-3年WEB前端工作经验大专学历的条件来看. 深圳: 可以看出目前深圳的平均的工资都在10K以上,因为大城市给的机会多 ...
- 经验分享:一个 30 岁的人是如何转行做程序员,进入IT行业的?
大约一年以前,我成为了一名全职开发者,我想要总结一下这一年的经验,并且和所有人分享,一个 30 多岁的人是如何进入科技行业的: 改变职业是一件吓人的事情,有时候还会成为一件危险的事情.年龄越大,危险就 ...
- 做什么职业,也别做程序员,尤其是Java程序员
千万别做程序员,尤其别做Java这种门槛低,入门快的程序员(别跟我说Java搞精通了也很牛之类的,原因不解释,做5年以上就知道了),程序员本来就是我见过最坑爹的职业了...Java程序员更是,现在满地 ...
- 十年Java开发程序员回答,自学Java,培训Java的利和弊
最近有一个朋友在群里面问我:是应该去培训Java还是应该自学Java,我想的说的是我并不是想给他一个去培训或者不去培训,我用自己多年对于行业的了解去分析这个问题,然后让他自己去思考,哪种更加适合他.他 ...
- 一个赴美的应届毕业生Kevin,在美国做程序员的访谈
作者MUM计算机 转载请注明 在国内IT市场人才日渐饱和且竞争激烈的今天,作为一名代号996的程序猿,你是否也会对赴美工作心生向往呢?作为国内普通院校的应届本科生年薪就能轻松破40万 (人民币), ...
- 资深程序员对于Python各个方向的面试经验分享,非常给力!
之前早有前辈们说过,"裸辞一时爽,一直裸辞一直爽",这话一点不假,裸辞你要面临没有收入来源,但是每天眼睁睁看着各种花销不断支出的煎熬,我主要是觉得一边在上家公司工作一边去下家面试可 ...
- java程序员摸爬滚打的三年,这些经历你值得借鉴
不知不觉都2020年2月底了,小羊同学从毕业快开始都一直从事java开发这个行业,前两天开通了头条号,想借此发文分享一下这几年的经历吧,如果你是还没毕业的大学生或者刚入行不久,也许会对你有帮助. 1: ...
- Java程序员考研失败后的面试经历,oppo、VIVO、等面经
温馨提示:有些可能会遗漏个别问题,都是最近一周的面试,有点忘了. 浪潮(一面挂) 你是网络工程的?对网络很了解? 解释一下什么是广播域 怎么划分子网 说一下CSS的几种分类器 数据库中有哪些聚集函 ...
随机推荐
- js原型链结构理解
在一般的面向对象的语言中,都存在类(class)的概念,类就是对象的模板,对象就是类的实例. 但在js中是没有类的定义的(万物皆是对象). 题外话:但是在ES6中提供了更接近传统语言的写法,引入了C ...
- .Net Core Controller
[HttpGet] public async Task<ActionResult<IEnumerable<ABBUserModel>>> GetUser() { / ...
- Error: no such table: device;的问题的解决,去掉表名device后面的分号;
sqlite> .mode csvsqlite> .import device.txt device;Error: no such table: device;sqlite> .im ...
- 给自己挖坑——DateWay
参考文章 官方手册 官方博客 填坑 目录 简介 使用 1. 引入相关依赖 2. 配置 Dataway,并初始化数据表 3. 配置数据源 4. 把数据源设置到 Hasor 容器中 5. 在SprintB ...
- 7月30日 举办专注于微服务的.NET Conf Focus
2020 年 7 月 30 日, 由.NET基金会和微软 将举办一个在线和为期一天的活动,包括 微软 .NET 团队的演讲者以及社区的演讲者.本次在线大会 专注.NET框架构建微服务,演讲者分享构建和 ...
- 一图看懂华为云DevCloud如何应对敏捷开发的测试挑战
作为敏捷开发中测试团队的一员,在微服务测试过程中,你是不是也遇到同样困惑:服务不具备独立验证能力.自动化用例开发效率很低等? 华为云DevCloud API全场景测试技术来支招~围绕API的全场景,打 ...
- PHP timezone_version_get() 函数
------------恢复内容开始------------ 实例 返回时区数据库的版本: <?phpecho timezone_version_get();?> 运行实例 » 定义和用法 ...
- PHP sscanf() 函数
实例 Parse a string: <?php高佣联盟 www.cgewang.com$str = "age:30 weight:60kg";sscanf($str,&qu ...
- ABC 158 F - Removing Robots dp 单调栈
LINK:Removing Robots 没想到 自闭. 考虑了一个容斥 发现不合法方案难以计算. 就算可以计算也几乎是n^2的做法. 考虑dp 左边会对右边产生影响 所以考虑先dp右边的再考虑左边的 ...
- spring中IOC入口与加载步骤
ApplicationContext applicationContext =new ClassPathXmlApplicationContext("spring-context.xml&q ...