现在,确实有很多“专业”程序员歧视非科班出身的程序员。其中主要原因是,非科班出身的程序员缺少某些必要的课程和训练,因而会在团队合作时产生一些困扰。
既然知道这个原因,那么“非科班”的,只要补足这些课程和训练就好。
比起科班生非科班缺哪些?
很多人认为“程序员就是学一门编程语言”,其实这是远远不够的。参考了几所知名大学的计算机本科课程,以及我的个人经验,归纳如下:
1.高等数学: 重点在矩阵、离散数学、逻辑学、统计学以及微积分;
2.编程语言: 2或3门编程语言的基础,常见的包括C++和Java,这部分其实是最好说的,因为现代主流编程语言都大同小异;
3.数据库: 通常包含数据库查询和数据库设计两门课,数据库原理有独立为一门课的,也有分散在查询和设计两门课中的;
4.数据结构与算法: 请相信我,不算数学课程,这是计算机本科课程中,最难的一门;
5.计算机结构: 有时候也叫“计算机基础”,这里面主要是一些“知道即可”,“不知道不行”的东西;
6.操作系统: 和上面那个差不多,需要注意的是,这门课程不是教你怎样用操作系统,而是在讲操作系统的一些原理;
7.软件工程: 主要包括软件项目管理相关的知识,这门课是非常重要的,因为“专业程序员”的职位名称是“软件工程师”,不会这个,做出来的东西只能叫做“程序”而不能叫做“软件”,这门课程也包含了必要的设计图相关知识,看不懂、不会画是不行的;
8.人机交互: 有时候也叫人机界面 、人机接口;学这门课程,主要是为了避免设计出一些不好用、不好看的软件;
9.子类别: 各学校的课程一般很不相同,大致上有网站制作、游戏制作、计算机应用制作、手机应用制作等;
10.小组项目: 上述课程中的多个,都包含小组项目;毕业设计也是小组项目;这主要是为了训练合作能力;大多数非科班出身的程序员,欠缺除了“编程语言”之外的大部分甚至全部。
找到自己的需求首先是需求创造生产力。
作为初学者你需要快速入门编程,但不能停留在自学的水平上面。在面试和实际工作后,非科班出身的程序员会感到更多的压力,在面对真实场景的时候会发现很多问题是以前没有遇到过的,或者是比以前遇到的问题复杂很多倍的,所以对于如果学习编程不仅仅是处于兴趣,而是想要进入互联网这个行业的小白来说,一定要给自己创造需求去学习,这样的进步才会更快。
解决问题本身比方式更加重要
第二个就是重点放在解决问题上面。这一点在很多时候小白入门的时候容易踩坑和迷失方向,因为编程本身其实和其他工作都是一样的,都是一个解决问题的过程,也就是最终都是落实在实际层面上的实践。不管你代码写得多么漂亮,如果不能运行,bug 很多,那么也是不顶用的。因此,非科班的会纠结于是学习什么语言,看书,还是看视频还是报线下课程等等,其实更加需要问自己的是需要解决什么问题,最有效率的办法是什么?通过用代码解决问题的方式和过程,才能够真正掌握解决问题的本领
确定好自己的学习目标和路径
第三个就是思考清楚自己的学习目标和路径的问题。也就是希望自己去从事哪个岗位的工作以及如何获得满足该岗位的技能和经验。程序员其实是一个写代码的工作类别的统称,有很多相通的必备技能,比如 Linux,现在很火的 Hadoop,Spark 大数据分析工具,但是具体的工作是有很多的,比如数据分析师,数据挖掘工程师,前端和后端工程师,软件工程师,数据库工程师等等,这些所要掌握的技能和对背景知识的了解都是不同的,在开始学习之前对各个职位未来的发展前景和薪酬都需要了解清楚,确定自己具体要去做哪个职位的工作,只有明确了方向,学习起来才会有干劲。
一开始就学习像程序员一样去思考和工作
其实科班和非科班出身的差别并不仅仅是在技能上面,这点在一位优达的同学回顾自己从小白到熟练工作之后才意识到这一点,两者的差别更重要其实是在思维上面的差别,如果能够清楚地了解到这一点,并且一开始就尝试以程序员的方式去思考,那么从非科班到程序员的路会更好走。
学习路线
学习思维脑图
思维导图
大厂面试必备知识点
学习笔记分享
附上一张趣图可以感受一下程序员所带来的简易性和友好性。
无论什么技术,热不热门,学习都是不可间断的,乘着年轻磨砺技术才是王道,不然在程序员这个后浪一波比一波汹涌的职业里混,你想吃青春饭都吃不了几年。不过,想提升是一回事,如何有效提升就是另一回事了。我工作近十年,也带过不少实习生、应届生,很多年轻人真的很努力在学,加班加点工作卖力,但也就是差点火候,还是方法不对。
什么是方法,方法就是跟着身边大佬走,多问多学,如果身边没有大佬也可以加入我们学习资源交流群:175317069,全国的小伙伴天南地北,可以一起聊天学习,更加了解这个行业情况,趋势与走向。
这是软件测试行业的推荐方向:
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。
关注我的微信公众号:【 程序员小濠】免费获取~
加群:175317069,群里有测试大牛分享经验。
最后感谢相遇,感谢缘分,感谢支持,感谢选择,感谢信任。也祝大家可以顺利找到心仪的工作,成功转行软件测试工程师!拿下高薪!
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
6个月软件测试培训出来后的感悟--写给正在迷茫是否要转行或去学软件测试的学弟学妹们!
看破世态炎凉!吾儿大帝之姿30岁转行学习软件测试拿到13k+
27岁转行软件测试——那年毕业,不知换了多少工作....
27岁只会“功能测试“(点点点),面临公司的“淘汰”?沉淀一年我能继续做测试!