软件工程研究生后期总结

写这篇随笔的时候,我已经处于研究生阶段的后期,只剩下一个硕论答辩即可结束研究生生涯。趁有闲暇时间,我希望可以从实习、兼职、论文和求职等几个角度重新整理一下研究生后期的工作和收获,以及对未来工作和生活做出展望。

首先简单介绍一下我的背景。我是软件工程专业的2.5年学制专硕,准备今年三月毕业。我是跨专业保研的,但是对写代码和计算机相关的知识颇感兴趣,于是便选择了软件工程这个专业。当然,选这个专业也有受到互联网发展的影响。由于不是ai专业,所以我很早就给自己定位是做开发的,但是做什么语言的开发呢,还是不太确定。跟导师商量过后,决定以python作为主语言进行学习,学习的方式也比较简单,就是接触各种需求和知识,比如先跟着github上的py基础课程学一下、用py做力扣题、用py接单(爬虫数据分析等)、用py做导师项目、用py做社区群答疑兼职,反正就是学的很杂。但是当我看到身边大多数同学都是做java后端的时候,我也慌了还是得跟一下风,于是从22年年底就自己学一些java的框架,然后23年年初在实习公司上手生产上的java项目,23年年末的时候通过实习、八股和论文再进一步加深java的应用知识对java常用的技术栈加深了理解。到了最近,因为后续工作的需要,开始进一步学习go(在github上找了个比较全的学习ebook),后续的话可能对于大数据技术的spark和flink也要进一步学习。总体而言,其实保持一种持续学习的好奇心是非常重要的。

在实习方面,我主要在两个导师的公司实习(导师不让前期去大厂实习),做过的工作主要是python脚本开发、python爬虫、python测试以及java后端开发这几类的,比较遗憾的是都是做一些偏业务的开发,没有主动去尝试做一些架构上宏观上的开发。但也没有关系,后面总会有机会的,保持一颗学习的心即可,不必在意学习的先后时间。到了去年的4月份,我也投了一些java后端开发的暑期实习,其中获得了阿里和yfd的offer。考虑到地点最终还是去了yfd进行了暑期实习,然后实习后又经过了几轮面试,很可惜没有获得最终的转正offer,但是这段实习也锻炼我全栈开发的能力。但是从另一方面说,这次的暑期实习是失败的,因为它没有给我的秋招带来很多的帮助,甚至有时候还会是拉垮。这是因为当时在yfd做的是一个demo,面试官就喜欢从架构的角度问,问得我一愣一愣的。

在兼职方面,主要是为了搞钱,挣一些外快。但是,客户和需求总是被中间商平台拿捏得死死的,很难获取高质量的客源,淘宝和闲鱼上的流量并不能长期的稳定,只能看运气。此外,还考虑过做一些留学生辅导或者考研辅导,但是培训的周期太长,沉没成本太大,我也没能沉下心来做。另外,还可能考虑教小朋友编程,但是这对我来说其实感到挺无聊的。好难啊。哦对了,我还做过社区群的答疑辅导,这挣的真的是辛苦钱啊,就是做一个售后技术辅导。anyway,起码体验了很多种兼职的方式,还是挺有意思的。

在论文方面,硕论真的是持久战啊。从去年5月份开题,到8月底开始撰写,9月份集中做实验和系统导致9月份的秋招面试被打爆,10月份交了初稿,10-11月进行补充修缮,12月预答辩预审又被拉去拷打,1月送盲审,还好盲审的结果出乎意料地比较好。可以说,硕论让人心力憔悴。什么创新性工作量,逻辑格式,依托项目依托成果,一套一套的花里胡哨。我没有发论文只是发了个小专利,论文题目还是自拟的,我没办法啊上一届的学长有导师给题目,我们不能再用了,只能通过前期的读书报告和看论文找灵感,想一个可能创新和工作量比较充足的应用场景硬上了。没有条件就创造条件啊。这导致一个很麻烦的事情,就是开题报告和预答辩我都被本校的老师吊起来质疑,因为自拟的题目被认为很可能挂盲审。anyway,盲审过了就行。答辩ppt还得做的好看一点,害。总的来说,我的导师还是很nice的。

在求职方面,我秋招最终是去了鹅,也是对于自己来说挺满意的一个部门和业务,希望去到能学新技术和快速成长吧。秋招的前期,投了珠三角地区的互联网和金融it相关的一堆公司,笔试由于长期刷力扣的原因基本都是ak或接近ak,但是面试就惨不忍睹了。由于八股准备地比较少,八月和九月基本都是被吊起来打的状态,惨不忍睹的那种,于是我后面就开始整理面试题和在牛客上看别人的面经,以及开始看javaguide、小林coding和一些架构的八股。终于在十月份后渐入佳境,八股开始背得烂熟了,后期的一些面试基本都能拿下。总结一下,八股这东西应该每天都要看,最好跟力扣每日一题一起看,保持学习和复习的态度学八股,不要临急报佛jio!!!

在未来工作方面,都说程序员35岁是个坎。因此不想当将军的士兵都不是好士兵,程序员总得想着往上晋升,从技术的提升、管理能力的提升、全局视野的提升都是很重要的。因此,我考了个软考系统分析师,侥幸过了,不知道有没有用,anyway先烤着。后面再考系统管理和系统架构(架构去年年底考了一次挂了,纯裸考555)。但是,如果晋升之路困难咋办呢,或许还能做下老师吧,所以3月份打算先考个教资,不知道有没有用但是先烤着吧。

回看研究生生涯,确实做了不少事情。由于自己是个专硕,虽然也确确实实有看了不少学术文章,但确实也没有搞科研的天分和环境,于是只能尽自己所能地达到毕业条件。同时,多去探索各种困难的搞钱机会和学习的途径,当然也要关心一下社会热点的市场需求,学一下金融还是很有必要的hhh,我最近在中国大学mooc看一些金融相关的知识确实挺有意思,然后学完就准备去a股当韭菜了。写到这里,觉得自己还是做了一些探索和尝试的,同时自己也是很认真地对待手头上的事情,总体来说我尽力了。

不知道其他se(software engineer软件工程)专硕研究生对研究生路径有没有更好的建议和意见呢?希望我这几年的经历能给学弟学妹们一个参考吧,也说不上参考,就图一乐吧。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【VUE】记录一次 VUE中配置生产环境和开发环境方法

前言 我这里 使用Vue CLI(Vue Command Line Interface)创建Vue.js项目是一种简单的方式,它提供了一个交互式的命令行工具来帮助你初始化和管理Vue.js项目。 并且我这个项目需要区分生产环境和开发环境。这里具体完整记录下,整个…

第15届蓝桥杯嵌入式省赛准备第二天总结笔记(使用STM32cubeMX创建hal库工程+按键输入)

一.查看电路图 按键是使用的PB0,PB1,PB2,PA0四个引脚,然后使用CubeMX配置引脚,4个脚都配置为输入模式和上拉。 程序生成之后把不用的删掉,需要的留下,这里我把函数名改了。 然后写按键扫描读取程序,这里参考的正点原子…

Vue中ElementUI结合transform使用时,修复el-select弹框定位不准确问题

在大屏开发中,比如将1920*1080放到更大像素(3500*2400)大屏上演示,此时需要使用到transform来对页面进行缩放,但是此时发现弹框定位出错问题,无法准备定位到实际位置。之前写过一篇讲解的是ElementUI中的&l…

【Android】自定义View onDraw()方法会调用两次

问题 自定义了View后,在构造函数中设置画笔颜色,发现它没起效,但是在onDraw()里设置颜色就会起效,出问题的代码如下: public RoundSeekbarView(Context context, Nullable AttributeSet attrs) {super(context, attrs…

视频美颜SDK与人工智能的结合:技术突破与挑战

本篇文章,小编将与大家共同探讨美颜SDK与人工智能结合背后的技术原理、创新应用以及面临的挑战。 一、技术原理:人工智能在美颜中的应用 视频美颜SDK通过整合深度学习和计算机视觉技术,能够更准确地识别人脸特征、肤色、表情等信息&#xff…

深入理解傅里叶变换

目录 1. 什么是傅里叶变换 2. 为什么要分解为正弦波的叠加参考资料 1. 什么是傅里叶变换 高等数学中一般是从周期函数的傅里叶级数开始介绍的,这里也不例外。 简单的说,从高中我们就学过一个理想的波可以用三角函数来描述,但是实际上的波可…

MAC iterm 显示git分支名

要在Mac上的iTerm中显示Git分支名,您需要使用一个名为“Oh My Zsh”的插件。Oh My Zsh是一个流行的Zsh框架,它提供了许多有用的功能和插件,包括在终端中显示Git分支名。 以下是在iTerm中显示Git分支名的步骤: 1、安装Oh My Zsh&…

Git入门详细教程

一、Git概述🎇 Git官网 Git是一个开源的分布式版本控制系统,用于跟踪文件的变化和协作开发。它允许多个开发者在同一项目中共同工作,并能够有效地管理代码的版本和历史记录。Git可以帮助开发团队更好地协作,追踪代码变更&#xf…

什么是比特币?

比特币 比特币 (英语:Bitcoin,缩写:BTC )是一种基于 去中心化,采用 点对点网络,开放源代码,以 区块链 作为底层技术的 加密货币。比特币由 中本聪(Satoshi Nakamoto&…

Nginx前后端分离部署springboot和vue项目

Nginx前后端分离部署springboot和vue项目,其实用的比较多,有的小伙伴对其原理和配置还一知半解,现在就科普一下: 1、准备后端项目 后端工程无论是微服务还是单体,一般最终都是jar启动,关键点就是把后端服…

go mock模拟接口的实现

简介 mock翻译过来是‘模拟’的意思,也就是模拟接口返回的信息,用已有的信息替换接口返回的信息,从而提供仿真环境,实现模拟数据下的功能测试; 在多人合作编码时,你写的一个函数func DoSth(People)用到了别…

【android】有些系统的应用唤起不了

Intent launchIntent getActivity().getPackageManager().getLaunchIntentForPackage("com.miui.screenrecorder"); if (launchIntent ! null) {// 应用存在,可以启动startActivity(launchIntent); } else {// 应用不存在,可以提示用户或者采…

主数据清洗的一般过程

在对主数据进行清洗之前,要先对主数据进行预处理。主数据预处理一般分为两个步骤, 将数据导入处理工具,比如数据库; 分析属性数据元 包括字段解释、数据来源、代码表等一切描述数据的信息,抽取一部分主数据作为样本数据…

【备战蓝桥杯】图论重点 敲黑板啦!

蓝桥杯备赛 | 洛谷做题打卡day11 文章目录 蓝桥杯备赛 | 洛谷做题打卡day11杂务题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 题解代码我的一些话 杂务 题目描述 John 的农场在给奶牛挤奶前有很多杂务要完成,每一项杂务都需要一定的时间来完成它。比如&a…

c#让三个线程按照顺序执行

现实的例子 三个线程都是while(true)的循环体 A线程:采集数据 B线程:画曲线 C线程:存数据库 AutoResetEvent类 AutoResetEvent 是一个线程同步的类,它提供了一种机制,允许一个或多个线程等待直…

Unity之四元数

欧拉角 万向节死锁 四元数是什么 Unity中四元数的初始化 四元数和欧拉角的互相转换 补充 四元数相乘代表旋转四元数

vue3中的nexttick

在 Vue 3 中,nextTick 是一个用于延迟执行代码的方法,直到下一次 DOM 更新循环结束。这个方法在 Vue 的生命周期钩子函数和其他需要等待 DOM 更新后再执行某些操作的情况下非常有用。 例如,如果在父子组件中,父组件向子组件传递参…

ABAP - 变量杂例1

** 常用的预定义数据类型 ** ** 类型缩写 类型 默认长度 最大长度 初始值 描述 ** C 字符 1 space 字符串,‘Program’ ** D 日期 8 8 00000000 ** F 浮…

vue3使用自定义组件内方法

重点 使用 defineExpose 来导出方法 // child <script setup> import { ref, Ref } from vueconst prop: Ref<string> ref(child)const method (val: string) > {console.log(val) }defineExpose({prop,method, }) </script>// father <template&g…

Linux Shell脚本入门

目录 介绍 编写格式与执行方式 Shell脚本文件编写规范 脚本文件后缀名规范 首行格式规范 注释格式 shell脚本HelloWord入门案例 需求 效果 实现步骤 脚本文件的常用执行三种方式 介绍 3种方式的区别 小结 多命令处理 Shell变量 环境变量 目标 Shell变量的介绍 变量类型 系统环境…