转职程序员,该自学还是去培训课程? Alpha Camp 与 AppWorks School 经验分享

2023年2月4日

💎 加入 E+ 成長計畫 與超過 300+ 位軟體工程師一同在社群中成長,並且獲得更多的軟體工程學習資源

我该去程式培训课程吗? 要去的话该选哪一家?

当提到转职资源,许多人会想到程式培训课程。目前在台湾有存在已久的资策会,或是完全免费的AppWorks School、[好想工作室 Web Camp](https://www.facebook .com/GoodideasStudio/) 等实体课程;也有Alpha Camp、六角学院等线上课程。在这些众多选项中,该选哪一个呢?

刚好 ExplainThis 共笔的三个共同发起人,一个是透过书与线上免费资源自学,一个是透过 Alpha Camp,以及另一个是去 AppWorks School,三个不同路线成为程序员。所以这边可以从我们自身的经验稍微分析,该不该去 coding bootcamp? 以及该选哪一家?

正好因为我们是透过不同管道进入程式领域,也都有顺利成为程序员,所以我们不会说一定要去,或是一定不要去 coding bootcamp。条条大路通罗马,可以依照自己的需求与所在条件选择适合自己的转职方式。

或许你不须用去培训课程!

由于我们分别有走过不同类的培训课程,在这边可以先说,就程式与开发相关知识的内容来说,培训课程提供的,在网路上都能找到。因此假如你的主要思考点是内容的话,可以毋须担心。现在各所大学都有将 CS 的基础课程转为开放式课程,例如最有名的哈佛 CS50

如果是前后端开发的话,以前端来说,社群中也有整理好的学习路径,且路径中的每个知识点,都在网路上可以找到相对应的资源。例如 YouTube 上有免费的课程 (例如这个)、freeCodeCamp。所以假如你花钱上培训课程,是为了学知识,真的大可不必。

培训课程的价值所在

虽然上面一段落提到,知识面来说,网路上可以找到培训课程中有的所有内容,不过这不代表培训课程没有价值。 ExplainThis 共笔的发起人,分别有去过实体培训课程 (AppWorks School) 以及线上培训课程 (Alpha Camp)。就我们的经验,这些培训课程带来的额外价值包含:

  • 学习环境: 对于转领域的人来说,因为面对的东西都是全然陌生的,因此在学习上必然会遇到很多挫折,这时能有互相讨论、共同奋斗的伙伴,对于能否在挫折时延续不放弃,会有很大的帮助。
  • 培养独立解决问题的能力: 虽说网路上有的资源已经足够,但是在面对陌生的问题(例如专案实作上遇到一个 bug),在缺乏经验下,很容易会卡在解不出来的无限回圈中。很多时候,其实只要换个思路,就能解出来。 AppWorks School 的导师,或是 Alpha Camp 的助教这类的角色,就是在学习过程中,能帮忙点出问题、指引方向的存在。虽然最终 bug 还是要自己解,但有人能协助引导,能省去很多时间,除此之外有支持也比较不容易放弃。
  • 社群的求职资源: AppWorks School 与 Alpha Camp 都分别有不小的社群。社群有的好处包含在求职时,AppWorks School 有 hiring partners,结业前就有机会能媒合工作;Alpha Camp 的社群中也很常有许多内推的职缺资讯。

以上这些是培训课程能带来的好处,当然这些也不一定要去培训课程才能得到。假如你身边本来已经有一群有革名情感要一同转职的朋友,或是你身边已经有很多工程师朋友可以问问题,又或是你本身够会社交,有认识许多能帮忙内推到不同公司的朋友,上面这些点或许对你就没那么有帮助。

该选线上或是实体的培训课程呢?

假如你盘点完自己的状况,也决定要报名程式培训课程的话,下一个问题可能会是,该选实体的或线上的培训课程呢? 以下我们会根据分别参与过实体培训课程(AppWorks School),以及线上培训课程(Alpha Camp) 的经验,来分析这两类不同课程分别适合哪类人。

实体课程类型 (例如 AppWorks School)

适合真的已经下定决心。先不说费用要十来万的资策会,即使是完全免费的 AppWorks School,当决定要去时,就有不小的机会成本需要面对。举例来说,假如你原本的月薪四万元台币,辞掉工作投入 AppWorks School 半年也代表会少赚 24 万(加年终的话会更多),这是不小的成本,所以如果没有真的想清楚,投入后才发现自己没有真的想做程序员,那么损失将会不小。

实体课程类能带来的最大好处之一是「环境」,特别是有一群革命情感的战友。当看到别人也同样为了 bug 苦恼时,在自己卡关时就不会那么焦虑;或是看到别人到晚上十一二点还在写个人专案,会觉得自己应该再拼一点。这些是线上培训课相对比较难感受到的。

当然,要怎么确定自己真的要走程式这条路? 要怎么避免花了大半年,到头来发现自己没有想继续往程式之路发展这种悲剧? 线上培训课程或许是一个选项。

线上培训课程 (例如 Alpha Camp)

如果是还没有那么笃定要不要梭哈走程式这条路,或是经济上比较没有那么宽裕。那么线上培训课程或许可以是一个选项。虽然可能会少了实体课程与同期同学的革命感,但比起 YouTube 或是 Udemy 这类线上课程,线上培训课程有多了学习教练、助教等机制,在卡关时能够有多一点帮助。

同时线上培训课程多半不用是全职的,所以不用因此辞掉工作,不用承担半年没有收入的经济压力。当然比较挑战的地方,在于平常下班已经很累了,还要花时间学习程式,这需要额外的毅力才能坚持下去。不过假如下班后很累还愿意持续走在程式这条路,这或许也代表自己能在程式之路坚持下去。

总结来说,我该自学还是参加培训课程?

上面谈了不去培训课程也可以在网路有足够学习资源,也谈了纵使如此,培训课程还是有其价值所在;以及比较了实体课程与线上培训课程适合的族群。在最后的段落,将为大家总结可以如何判断自己该自学,或是参加哪种培训课程。

在决定自学前,建议先判断身旁的工程师资源是否足够,当遇到问题、卡关时,有没有人可以问或是讨论,因为卡关挫折久了,是很容易半途放弃的原因。接着可以判断自己是否有足够的支持系统,让自己能持之以恒的学习;学程式的路上会有非常多挫折想放弃的时刻,有没有人能互相打气、让你知你可以的、让你有动力持续走下去,这些会很关键。

假如上面两点你都有,那或许可以先以自学为主;反之,可以考虑培训课程。假如你决定了其中一种培训课程,下一个问题可能会是,该选哪一家培训课程呢? 虽然我们有透过 AppWorks School 与 Alpha Camp 成功转职的经验,但除了这两间之外,现在也有许多其他的选择。举例来说,WeHelp 程序员扶持计画,就是 AppWorks School 先前的前端导师出来创办的。因此这边不会特别推荐选哪一家培训课程,而是列出一些我们认为在选择培训课程前,应该要先思考的点。避免花了钱、花了时间,最后发现选了一个效果不如预期的。

纯课程以外还提供了什么?

上面有提到,现在网路上,不论 freeCodeCamp 或是 YouTube 都有所有转职前后端程序员需要的知识内容。假如真的要很完整的系列课程,在 Udemy 上一堂三四百台币就非常非常足够。因此假如选择的培训课程,只有影片或讲义等内容,那还不如用网路上的免费课程或是 Udemy 就好。

是给鱼吃还是教钓鱼?

前面也有提到,能够引导参与者来发展解决问题能力,是好的培训课程的价值之一。换句话说,只给鱼吃(只教知识内容),而没有教如何钓鱼(培养运算思维、工程思维、独力解决问题能力) 的培训课程,那也是不如用网路上的免费课程或是 Udemy 就好。

是否能累积独立专案作品集?

如果是以转职为目标,参与培训课程的目的就是能找到工作。对于非本科的转职人来说,要能够有效找到工作,在简历上有作品集,是能否拿到面试机会的重要指标。因此,能够有一个自己独立开发的作品,会是非常重要的。因为在面试时会被追问到作品集的各种细节,因此如果只是用模板的作品,或者是跟着教学影片写出一个自己没办法解释技术细节的应用程式,这会让结业后的求职会相对吃亏。简单来说,如果只是上课,没有独立实作出专案作品,那也不如网路上的免费课程或是 Udemy 就好。

是否与自己合拍?

假如在上面三个条件筛选下,你有了培训课程的口袋名单。在这些口袋名单中,如果必须做出选择,选一个去报名。那么或许就选一个与自己合拍的吧!如同前面提到的,现在网路上在知识面的资源已经足够,因此能不能学好程式、能不能顺利转职,更关键的点在于能不能有效熬过学习程式的撞墙期。

因此,找到一个与自己合拍的,让自己能够有效持续学习的环境,会是非常重要的。毕竟学习是很个人化的,别人适合的不一定跟自己合拍;与其盲从跟随别人推荐的,不如挑一个自己真心喜欢,会让自己一直能保持学习动力的。因此不妨多看看几个不同选项,实际跟该课程的人互动,然后挑一个合拍的吧 (当然前提要先符合上面三个筛选条件)。以上,希望这篇对于要选择程式培训课程的你有帮助。

🧵 如果你想收到最即時的內容更新,可以在 FacebookInstagram 上追蹤我們