一个双非软件工程本科生的逆风翻盘经历

2023-12-28 00:59

本文主要是介绍一个双非软件工程本科生的逆风翻盘经历,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写在前面

本来想写一篇文章给大家分享一下数据结构应该怎么学。但,正当我按步就班的回忆自己本科是怎么学习数据结构的时候,脑海中突然看到了刚上大学的自己。

现在的我还算顺利吧!985 硕士毕业,去年秋招也拿到了很多大厂的 offer ,目前工作之余也能写写文章给大家分享一些技术,有了一些支持我的读者。

不过,回想我在刚上本科时,因为高考分数不高只上了一个很一般的学校,也对自己的专业不感兴趣。但庆幸的是,大学四年,我慢慢的对编程产生了兴趣,学会了如何学习并走入了编程的大门。今天我就给大家讲述一下我读本科的经历,也希望给现在同样处境的朋友一点帮助。

迷茫期

2014 年 9 月,我趁着我们省高校软件工程专业大幅扩招,以一个不高的分数上了一个还算凑合的文科型双非院校。

其实,我对编程本身没有一点兴趣,甚至当时家里的电脑我都不怎么动,选择软件工程专业完全是因为那年招的人数多,所以分低。

来了学校以后,身边的同学都不怎么爱学习,基本上就是成天窝在宿舍打游戏。学校的老师也因为我们那年软件工程大幅扩招,学生管不过来,让我们处在一个完全放羊的状态。当时我们都有种共同的感觉:“不想坐在教室上课,但是我们并不知道我们该干什么”。

不过,我还算上进,想着天天在宿舍待着挺无聊的,就报了很多社团,有学生会、广播站、篮球队、田径队等等。整个大一算是很充实,就是大一上学期高数挂了,下学期 C++ 挂了(那年我们高数大物基本上挂人能挂一半,不是因为题难,实在是当时的我们太菜了)。

由于大一参加活动认识了好多人,就很凑巧的认识了一位直系的学长,也是这个学长带我走进了编程的大门。这位学长现在在字节,年薪七八十万了,后文称他为字节大哥。

说来也是因为我们是一个文科气息很浓的学校,学院的领导基本都是搞行政出身,所以我们学校很少能见到技术型的活动,院领导倒是对一些足球赛、篮球赛、啦啦操比赛很上心。由于我之前没见过有人编程做出软件,当时在刚认识字节大哥时,看着他做出的软件,我简直惊为天人。当他给我展示他的代码时,我直接化身为程序员鼓励师,吹爆了他的代码。于是字节大哥豪气的一拍大腿把我收为了小弟,要带我学编程。但后续几个月由于忙着参加各种文体活动一直也没联系字节大哥。

对编程产生兴趣

故事从我大一下学期 C++ 挂了开始讲起,因为开了学需要补考,我就问当时还不算熟的字节大哥,我应该怎么学 C++。我现在还记得当时他略带深沉的摸了摸下巴说,我建议你看看 C++ 编程圣经 「《C++ Primer》」。好吧,我现在还在记仇。当年我意气风发的在淘宝上买了这本书,然后翻了两页就打消了我学习编程的想法。好在补考前拿着课本突击几天,又找老师画了重点后,算是把补考过了。

因为感觉编程真的学不明白,大二上学期其实在编程上也没学什么东西,也就没多联系字节大哥,不过还算努力的我在大二上学期第一次考四级就把四级过了(后续也过了六级,英语学好对程序员的发展是很有帮助的)。

大二那年快放寒假时,我又重新燃起了想学编程的想法,我再一次找到了字节大哥,在他又准备给我推荐 Java 编程圣经 「《Thinking in Java》」 的时候,我赶忙拦住他,问他有没啥是我很容易学会的?让我先能上手做出一些东西。这次他教了我 HTML,并且我终于通过他的演示看懂了怎么写 HTML。趁着寒假,我自学了 HTML、学了 CSS、学了 JavaScript。终于通过自己敲代码,在前端显示出一个自己设计的网页。自从我觉得能通过自己编程能做出一些东西后,我对学习编程的兴趣变得越发强烈了。

初入编程大门

大二下学期开学后,一天中午在食堂门口看到宣传海报,我们学院要举办软件大赛。那一次不知道从哪里来的自信,除了前端三剑客什么也不会的我就游说同学,拉起了一个小分队要参加一个月后的软件大赛。由于同学的基础比我还差,我只能先教会他们用前端三剑客,让他们去做前端页面。然后,我根据字节大哥的建议去自学 PHP(PHP 是世界上最好的语言,不服评论区来辩)、自学数据库。

那一个月对我来说有点煎熬,经常拿着电脑盯着一个 Bug 盯一上午,然后才能把程序的一小部分执行通,改 Bug 的过程十分痛苦,有好几次就想着要放弃,但是想着当初是我拉着几个同学要来参加比赛的,我如果放弃了是真的对不起他们,就咬着牙硬撑下来。也终于在软件大赛开始之前通过努力(我字节大哥也帮我改了几次 Bug)把一个网站做了出来。

靠着一点创意,我们通过了初赛进入了决赛,也最终得到了那次软件大赛的三等奖(进了决赛的就有三等奖)。

虽然这次比赛的含金量没有多大,但是对于我来说却意义重大。通过这次比赛,我学会了如何去学习编程,也建立起对自己的自信,知道自己可以通过编程去解决一些问题。

经过这次比赛以后,我算是打开了编程的大门。我知道了自己该学什么,我也有了我自己学编程的方法,我不在学某某技术时先拿着一本“xxx 圣经”硬啃。在学习一种技术的时候,我都先学会上手,然后再去补充比较复杂的理论,这让我学技术学的很快。慢慢的,大一大二没学好的 C 语言C++Java数据结构网络都补了起来。

大三,因为学校安排搬宿舍,我正好换到了我们班一个十分爱学习的宿舍,当别的宿舍都在没日没夜的网吧打游戏时,我们宿舍一起跑到了没什么人的图书馆去学习。后来我们这个宿舍也大部分通过考研和保研上了不错的学校。

其实,我最初的想法是要去工作,但是在大三的时候去听了一场中国计算机大会的报告,看着很多高大上的技术,让我对读研产生了幻想。其实还有一个想法就是想弥补下没在好的学校读过书的遗憾。考研就是另一个故事了,感觉是一个比较励志的故事~~ 好在我在本科的时候学会了怎样学习,编程也有了还不错的基础。

我从大三下学期的 6 月开始准备考研,在经历一段折磨后,终于挤进了复试(实行差额复试,我初试的分数就在差额里面)。也得益于我编程基础还不错,所以在面试过程中对于一些编程基础问题我都答得比较完善,实现了逆袭。在面试完忐忑的离开面试房间时,听到了一位老师和另一位老师说,这个学生还不错。我知道,我上岸了。

后来

后来,上了研以后的故事比较顺利,在一个更高的平台上认识了更多优秀的人。也有很好的博士师兄带着我学习很多知识。虽然研究生的生活也有一些波澜,但总体上比较顺利。经过校招也拿到了很多不错的 offer,有比如像腾讯、美团京东这些互联网大厂,也有一些不错的研究所。回头去看所有走过的路,虽然会有遗憾,但也收获了不少。

建议

下面我想给刚上本科的并且和我有类似经历的朋友一些建议。每个人情况可能有些不同,大家择善而从。

「1、多和上进的人在一起。远离一些见到你学习还会挖苦你的人。」

大学生活中,其实身边的人对自己影响会很大。我特别感谢我在上大学时身边有几个很有想法,也很上进的人,这几个人对我的影响很大,让我知道了我应该朝什么方向努力。另外和这些比较上进的人一起参加一些比赛,合作一些项目也是对自己很受益的。

「2、合理分配学习时间。」

感觉一部分同学对大学的努力存在误区,努力不是要两耳不闻窗外事一心只读圣贤书。大家要懂得给自己放假,该去运动就去运动,该和同学出去玩就出去玩。其实玩也是为了更好的去学习,大家需要的是在学习的时候集中注意力高效率的学习。在考研最辛苦的时候,我也一直保持着学习五天,纯玩两天的节奏。

「3、学编程的时候大家尽量先上手再去补理论。」

比如对于初学编程的朋友。可以先尝试用 HTML 做一个基础网页。学会怎么使用 HTML 以后,再用 CSS 给网页做个样式,然后再用 JavaScript 做一些效果。前端一些最基础的操作学会以后,可以慢慢再学一门后端的语言,给网页开发出后台,然后再给网站连接数据库。最后再学习一些数据结构的知识、软件工程的知识、设计模式的知识等等把自己做的网站做的更好。通过一步步的来,先让自己对编程有个初步的了解,再去深挖。要学会给自己的学习降低难度,上来就抱着《C++ Primer》、《Thinking in Java》就啃,特别容易打击自己学编程的信心(甚至有人直接抱着算法导论啃)。

「4、学会利用资源。」

因为各种学校的教育资源不同,大家并不能把获得知识的希望全部寄托给大学课堂。一些编程类的书籍和公众号文章,还有一些编程课程(大家可以在 b 站搜)。都能对编程的学习起到一定的疏通作用。我在学编程时一般都是这个节奏,比如要学习 MySQL 数据库,我就先在 b 站上找一些编程课或者在公众号上找一篇不错的文章,然后跟着教程先把环境搭起来,再跟着教程把几个增删改查的基本操作敲一遍看一下效果。然后再去学习一些相对高级的操作,比如排序、group by、表连接之类的。在对 MySQL 基本上手以后,看一些书去了解理论性的知识,对于看书不懂的问题,再去找一些公众号文章或者编程的课程去学习。我感觉这样的学习更适合大部分学生,这样学习效率也会高很多。

「5、收集信息很重要。」

高中时期,大家都有一个明确的目标,就是高考,高考相关的信息已经被各个学校老师研究的十分透彻,高三学生需要比的就是谁更努力,谁学习更高效。而大学不一样,大学有很多条路,你要做的是选择好自己走的路,并且要多了解一些信息,明白自己的路应该怎么走。比如你要本科毕业去互联网公司就业,你就应该提前了解自己需要具备什么样的能力才能进这些公司就业,提前准备一些相应的项目,提前联系去一些互联网公司实习。如果你想考计算机相关专业的研究生,你就应该去了解哪些学校这方面专业好而且招生人数多,并且去了解考研应该准备哪些东西,然后相应的去参加一些证明自己能力的比赛或者做一些项目。

「6、对自己有自信很重要。」

大家要一步步的培养起对自己的自信。这种自信不是那种迷之自信~而是要通过一些活动,一些比赛去建立对自己学习能力,对自己的能力的自信。要相信遇到再难的问题,自己也可以把问题一步步拆解开去完成。这对于日后的学习是最重要的。

最后免费分享给大家一份Python全套学习资料,包含视频、源码,课件,希望能帮到那些不满现状,想提升自己却又没有方向的朋友。

 

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。 在这里插入图片描述在这里插入图片描述

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。 在这里插入图片描述

五、Python练习题

检查学习结果。 在这里插入图片描述

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。 在这里插入图片描述在这里插入图片描述

这份完整版的Python全套学习资料已经打包好,需要的小伙伴可以戳下方链接免费领取

读者福利《Python全套学习资料》,戳这里免费领取!!!

这篇关于一个双非软件工程本科生的逆风翻盘经历的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/544734

相关文章

CRtmpServer转推流到Nginx Rtmp及SRS(SimpleRtmpServer)的经历

转自:http://blog.csdn.net/fengyily/article/details/42557841 本人一直用的是CRtmpServer服务,在CRtmpServer服务中根据自已的想法也加入了许多功能,如通过http接口来加载配置等,苦于不支持HLS,自已添加ts分片水平又有限,思来想去决定借助SimpleRtmpServer的HLS功能。说干就干,马上查找相关资源

腾讯社招面试经历

前提:本人2011年毕业于一个普通本科,工作不到2年。   15号晚上7点多,正在炒菜做饭,腾讯忽然打电话来问我对他们的Linux C++的职位是否感兴趣,我表达了我感兴趣之后,就开始了一段简短的电话面试,电话面试主要内容:C++和TCP socket通信的一些基础知识。之后就问我一道算法题:10亿个整数,随机生成,可重复,求最大的前1万个。当时我一下子就蒙了,没反应过来,何况我还正在烧

【软件工程】软件开发模型

三、瀑布模型  四、几种软件开发模型的主要特点 题目 判断题 选择题 小结

【对线面试官】阿里面试经历,有些人走一步看一步就挂了

点击上方蓝色字体,选择“设为星标” 回复”资源“获取更多资源 这个其实说来就话长了。是小编曾经面试阿里妈妈的经历。 这次面试最终在HR面挂掉,以至于后面回忆起来,仍然是一桩美谈。 这次面试长达一个月之久,共经历了4轮技术面,1轮HR。前四轮面试过关斩将,简直开了挂一般,跟面试官正面对线,丝毫不虚。听我一一道来。 第一轮 第一面是电话面试,晚上10点半。我特么一脸问号?你们这是刚加完班吧?事实上我

『 Spark 』14. 一次 Spark SQL 性能提升10倍的经历

写在前面 本系列是综合了自己在学习spark过程中的理解记录 + 对参考文章中的一些理解 + 个人实践spark过程中的一些心得而来。写这样一个系列仅仅是为了梳理个人学习spark的笔记记录,所以一切以能够理解为主,没有必要的细节就不会记录了,而且文中有时候会出现英文原版文档,只要不影响理解,都不翻译了。若想深入了解,最好阅读参考文章和官方文档。 其次,本系列是基于目前最新的 spark 1.6

AGV行业遇冷,叉车AGV逆风崛起:180家企业掀起血战

导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 在自动化物流领域,一场悄然发生的变革正引领着行业风向的转折。尽管2024年以来,整体AGV(自动引导车)行业因下游市场需求疲软而遭遇增速下滑的困境,但无人叉车这一细分领域却如同一股逆流,展现出前所未有的活力与潜力。 在这场“逆风膨胀”的浪潮中,不仅吸引了资本的密集关注,更激发了行业内外企业的激烈竞争,共同绘制了一幅波澜壮阔的市

第一章 软件工程的概述简记

第一章  软件工程的概述         *软件的概念:软件(Software)是一系列按照特定顺序组织的计算机数据和指令的集合。         软件的分类:(5大类)                   *1.基于软件功能划分                                  1)系统软件

软件工程技术专业软件开发综合实训室解决方案

一、行业背景与前景分析 1.1 软件工程技术专业就业前景 近年来,中国的软件行业取得了显著的成就,即便在全球经济受到新冠疫情冲击的情况下,仍保持了强劲的增长势头。据工业和信息化部发布的数据,2021年我国软件和信息技术服务业的业务收入达到85371亿元人民币,同比增长18.3%,远超同期国内生产总值的增长率。这一成就不仅体现了中国软件行业的韧性和发展潜力,也为未来的持续增长奠定了坚实的基

《软件工程导论》(第6版)第12章 面向对象实现 复习笔记

第12章 面向对象实现 一、面向对象实现概述 1.主要任务 (1)把面向对象设计结果翻译成用某种程序语言书写的面向对象程序。 (2)测试并调试面向对象的程序。 2.面向对象程序质量的影响因素 (1)面向对象设计的质量; (2)采用的程序语言的特点; (3)程序设计风格。 3.保证软件可靠性的方法 保证软件可靠性的主要措施是软件测试。面向对象测试的目标是用尽可能低的测试成本发现尽

【软件工程】第一章软件工程引论

【软件工程】第一章软件工程引论 文章目录 【软件工程】第一章软件工程引论1. 什么是软件1.1 软件的定义1.2 软件特征1.3 挑战与危机 2. 什么是工程2.1 什么是工程2.2 怎么做工程 3. 什么是软件工程3.1 软件工程的提出3.2 软件工程的经典定义3.3 软件工程设计的知识域3.4 系统工程3.5 软件工程的全流程 4. AI时代的软件工程4.1 智能软件工程4.2 大模型