【个人思考系列】在美团点评当工程师的第一年总结

news/2023/12/9 16:48:11

image.png

伴随着公司的推送,在2017年7月12日,我迎来了在公司中的第一年。
在公司的第一年,遇到了一些困难,学习到了很多知识,得到了很多人的帮助。
文字是可以传承下去的,总结一下自己过去的正式工作的第一年,给自己,也给需要的人。

我的第一年

毕业在即,逃不开的话题就是校园招聘,在校园招聘中斩获了多少,能够让你拥有更多的选择的权利。
我的第一年回顾的第一个主题就是。

校招厮杀

image.png
我本身是一个航海院校计算机相关专业的学生,在近几年,某些计算机的专业被提拔到了一本的级别,但在综合的实力上还是和一些老牌院校的计算机专业有着不小的差距,很大程度上,我们是计算机校招队伍中的弱势群体。

在本科阶段,我没有意识到这一点,虽然说也没有浪费本科的时光,但读研和工作后才发现,自己错过了很多储备知识的好时光以及关键的找工作的时间节点。

好在成绩还算可以,顺利保研。在大四的暑假,告诉自己,毕业的时候一定要去一线互联网大厂做后端工程师,当时锁定的主要语言是Java方向的。(确定目标)

确定了目标后,开始了解几个互联网主流厂商的后端Java工程师岗位的一些JD,主要关注了美团点评、阿里、爱奇艺等公司,了解到他们对于应届生大多有以下几点要求。(了解岗位需求)

  • 基础计算机知识扎实
  • 和目标岗位匹配的若干优质实习和项目
  • 一定的技术视野
    根据以上几点要求,我在研一阶段就主要做了三件事情。 复习基础知识,找实习,拓宽技术视野。(根据岗位需求定向准备)
  • 基础知识方面,通过搜索引擎和一些问答社区,向前辈取经,把Java相关的基础书籍以及本科的一些当时觉得听着很枯燥的课比如计算机网络、操作系统、数据结构又复习了一遍,通过做题,看视频等手段。见我的知乎提问:

image.png

  • 实习方面,在边复习基础知识的时候,我同时也着手开始找Java后端工程师方面的实习。先后在创业公司和阿里实习过,在这个过程中经历了简历准备、求职资源获取、技术面试等。
  • 拓宽技术视野,平时的时候逛一些技术论坛,了解主流互联网公司的架构,Java后端技术方面的最新进展等。
  • 站在巨人的肩膀上,这一点是我自己加的,就是在准备校招的过程中,可以去看一些过来人的面试经验,和一些网友交流面试的体会,过去人家踩过的坑,我尽量不睬。

后面的故事就是,校招拿到了好几个Offer,最终因为个人的喜好和综合因素来到了大众点评。


我的第一年回顾的第二个主题是

初入职场的适应期

image.png
我校招刚加入的一个团队是闪惠,是做大众点评商户的优惠买单业务的一个团队。业务量在整个公司来说也是很大的,我加入的时候业务正趋于稳定。不过刚进去的那段时间,还是挺自我否定的。

需求会议听不懂。我们是走迭代的,一般两周一个迭代,每一次开始前,产品经理会召开需求会议,讲一下之后要做哪些东西, 涉及到哪些业务。在刚开始的需求会议上,我遇到了需求听不懂、分配到任务没办法很好的拆解到哪些模块,每次都是靠会后去问导师,才具体明白一个看似简单的需求到底是需要做什么工作,看着组长写的wiki,对每一个迭代要做的东西,需要涉及哪些系统、每一个需求可能需要多少人力,都预估的很清楚,我对自己是有点否定的。因为觉得在自己之前实习的时候,功能完成的也很好呀,怎么正式入职,连需求都听不懂,需求拆解都做不好呢。

技术知识出现不足。因为业务量比较大,线上一些小问题都会被无限的放大,某一天线上突然出现某一个后台项目的所有机器的老年代增长都较快,同事排查后定位是接入的外部包有问题,然后写下了一篇故障分析报告,如何从源码的角度定位了问题,我看了几遍才看懂。

代码被吐槽。我们一般都会有Code Review,会请高级别的工程师过来帮你看你的代码,看是否能够提交上去,在我刚开始写的代码,因为一些不好的习惯和对业务思考的不够,出现了类如NPE、代码复用不够、代码层次不清晰以及命名不太合理等问题,也是经常被打回去修改。

刚进去的这段时间还挺郁闷,觉得哪哪都做不好,有些自我否定。

后来和导师以及领导聊,结合我现在的一些理解的话,我想对当时的自己说:
Relax,公司其实并不期望刚刚进来的你,能够创造多少价值。新人是要成长的,在成长期难免会遇到各种各样的小问题,这可能是大多数人的必经之路,因为你所看到的同事,他们都比你在工作领域待的时间更久,有更多的经验,可以把他们作为目标,但不要把他们作为现在自己的标准,那样会压力太大。
从学校到职场切换的前几个月,难免是不适应的,但在这几个月中,我是通过做到以下几点,帮助自己完成适应。

  • 翻阅团队过往的资料和代码,了解团队的业务现状、核心系统以及主流程,从大方向上入手,再进一步了解业务中的细节。
  • 请教导师和身边的同事,身边的同事是最好的学习资源,他们可以告诉从更高的层面看你现在所处的位置以及遇到的问题,勇于请教,多交流。
  • 多多总结回顾,每周都回顾下自己做了什么,学到了什么。

我的第一年回顾的第三个主题是

不同类型团队下的成长

image.png

从刚开始的自我否定中走出来,慢慢融入团队后,会迎来一个成长期。

成熟业务
我刚进来时,团队在做的是一个流量很大的业务,系统架构已经趋向于成熟,作为一个新人,更多的是在修修补补,针对子系统中的某一个模块进行一些开发,很少有机会从头开始做一个项目。在一个成熟的团队,有以下的优点和缺点。

优点: 经过长时间的大流量的业务考证的系统架构和业务设计,能从中收获很多养分,让你之后站在一个更高的视角去看待问题。其二是因为成熟业务流量一般都有一定的量级了,成立至今可能遇到了很多千奇百怪的线上问题,在排查这些问题的过程中,技术能力和沟通能力能得到很大的锻炼。
缺点: 相对的缺点就是,难以参加一个项目完整的开发过程,因为业务架构已经基本定型,新人在这里大多是针对系统具体的子模块进行一些功能上的开发。

创新业务
在我的第一年的后半段,随着团队业务的切换,去做了一个从0到1的业务,主要是依托我们公司积累的数据,为商家提供咨询和数据的一个平台。
优点: 在一个新业务中,有机会从头到尾去设计一个项目,定义和外部系统的交互接口,底层的数据存储设计,系统内部的流程等等。在这个新业务中,我参加了App站内信、用户中心、后台推送中心的完整开发过程,从之前的简单的和后端同事之间的对接,到需要跨团队和客户端、前端、测试打交道,在个人的沟通技巧上得到了很大的成长。在这个从0-1的过程中,对于如何亲手设计一个系统有了经验,同时可以借鉴过去在成熟业务当中学习到的一些准则。如果在一个业务快速发展的新业务中,随着新业务的不断演进,原有的架构会不断得到挑战,进一步提升自己系统设计的功底。
缺点: 并不是每一个新业务都会快速增长,让你不断的遇到新的挑战。在业务的缓慢成长中,可能只是在重复过去学到的技能,得不到足够的挑战,也就错失了进一步成长的空间。

成熟业务和创新业务都有自己的可取之处,不管身处哪个业务,都要像海绵一样汲取其中能够被吸收的营养。


我的第一年回顾的第四个主题是

积极尝试

image.png

在我的第一年,还做到了勇于尝试。
在切换到新业务后,前端和数据开发的资源相对比较紧张。
一半是领导的安排,一半是自己觉得我其实是一名软件工程师,目前的职位虽然是后端工程师,但不代表要把自己局限在后端,需要用技术的手段解决问题的,都可以有我的出现。
在业务的演进过程中,我接触了前端的开发,做了一会会全栈工程师,虽然是很简单的页面开发,配上自己的后端接口哈哈。还接触了数据开发,从完全不知道数据开发应该干什么,到对集团数据平台的使用驾轻就熟,从底层数据的提供到后端接口的开发一条龙服务,不仅复习了之前学过的Hive,还学了新技能ElasticSearch,同时把在接触新东西的过程中遇到的问题,总结了下来,帮助别人一起成长。

不局限自己,职业生涯的早期可以多多尝试,软件工程师是解决问题的,至于前面的Title只是说你更擅长哪个方面,当需要你的时候,其实你都可以勇于尝试。

总结

总的来说,我对我过去正式的工作一年还算满意吧。如果让我现在对过去刚入职的自己送上几句建议的话,那么应该是。
积极提问
保持谦逊
多总结多思考
心态要稳
我的第一年回顾完了,你呢,如果你也想讲讲你的故事,欢迎投稿~


http://www.niftyadmin.cn/n/2749865.html

相关文章

更换网站的主机IP会对百度收录有影响吗?

IP对于网站来说相当于是一个身份证,如果频繁换新对网站还是会带来一些波动的。那么,网站更换IP会有什么影响?接下来小编就跟大家聊聊更换IP会给网站带来的影响,一起来看看吧! 1、百度快照停止搜索和收录 企业建立IP之…

python 将excel 数字日期转化为正常

import pandas as pd import datetime data_trpd.read_excel(D:\\train.xlsx) data_tr data_tr.columns data_tr[合同签订时间]def date_tran(dates):deltadatetime.timedelta(daysdates)date_1datetime.datetime.strptime(1899-12-30,%Y-%m-%d)deltareturn datetime.datetime.…

React + Redux 实现的个人博客

基于 React 实现的个人博客 本项是使用 React 实现的个人博客,使用了 Redux 做数据管理,webpack 做包管理工具,后端使用的是 Ruby On Rails 提供的接口。 项目过程中也使用到了 webpack 的一些插件对项目进行了优化,优化的过程我记…

《Spring2.0 技术手册》读书笔记六-Spring AOP 提供的四个Advice(1)

在《静态代理和动态代理》中提到了面向方面编程,主要就是基于动态代理。单独抽象出非业务的功能,服务于某些业务方法。Spring提供了四种很实用的Advice,分别为:Before Advice, After Returning Advice, Around Advice, After thro…

SEO网站站内优化实用技巧分享

网站SEO站内优化的实用技巧,不要以为站内优化不重要,随着百度算法的不断升级,网站SEO站内优化对于权重和排名有着直接的影响。因此,小编建议在网站做SEO优化之前,我们首先要做好的是网站SEO站内优化才有益于后期做网站…

Map 综述—彻头彻尾理解 ConcurrentHashMap

写在前面 本文所有关于 ConcurrentHashMap 的源码都是基于 JDK 1.6 的,不同 JDK 版本之间会有些许差异,但不影响我们对 ConcurrentHashMap 的数据结构、原理等整体的把握和了解 ConcurrentHashMap是J.U.C(java.util.concurrent包)的重要成员,…

聪聪和可可[NOI2005]

【问题描述】 在一个魔法森林里,住着一只聪明的小猫聪聪和一只可爱的小老鼠可可。虽然灰姑娘非常喜欢她们俩,但是,聪聪终究是一只猫,而可可终究是一只老鼠,同样不变的是,聪聪成天想着要吃掉可可。 一天&…

Git 版本管理

了解开发,拉分支的流程Git安装:MySql rpm或二进制发行版yum install percona server shared; server; clientls /etc/init.d/my*service mysql start/usr/bin/mysql_secure_installiationmysql -uroot -pcat mysql.sqlgrant all on gogs.* to gogs% ide…

数据库连接的管理

1. 数据库连接的建立 1.1. 各种数据库的连接字符串为: //url - jdbc:subprotocol:subname 形式的数据库 url//mysqlString url"jdbc:mysql://127.0.0.1/mydb";//postgresqlurl"jdbc:postgresql://127.0.0.1/mydb";//db2url"jdbc:db2://127…

LogCat用法2

如果adb devices显示设备的状态是offline, 这是可以看手机的通知栏,会有一个"触摸以设置USB"这样一个类似的提示,触摸它以后会要求你选择USB的用途,选择第二个通过。。。传输文件,电脑上应该会显示出手机上的文件夹&…

百度收录忽上忽下的原因以及解决方法

网站收录忽上忽下的原因以及解决方法。今天小编说的是网站收录忽上忽下原因的问题。关于在百度更新时大家应该都对自己的网站收录变更比较在意,有的网站收录增加而有的是锐减。很多朋友把收录降低或着是百度收录少总是归咎于网站内容文章质量问题上。其实这种看法是…

pandas 多重索引 multiIndex

import pandas as pd df pd.DataFrame({class:[A,A,A,B,B,B,C,C],id:[a,b,c,a,b,c,a,b],value:[1,2,3,4,5,6,7,8]}) df dfdf.set_index([class,id]) df.loc[(A,slice(None)),:] df.loc[(slice(None),a),:]df2 pd.DataFrame({课程:[语文,语文,数学,数学],得分:[最高,最低,最高…

使用haproxy 实现 http/ssh/mstsc复用

网上较多HTTP/SSH复用,但实际环境中,使用HAPROXY做IIS负载均衡时,还需要使用80端口来使用远程桌面管理服务器。 近日通过Wireshark抓包,找到了TPKT的报头字段,终于成功实现RDP协议复用: 注:通常…

怎样才能提高网站的快照更新频率?

网站如何做搜索优化来提升快照更新频率?快照也叫网页快照,是搜索引擎蜘蛛近一次抓取该网站时所抓取到,进行保存并展现在搜索结果中。如果快照更新的频率高,意味着蜘蛛对该网站的抓取频率高,搜索引擎对网站的信任程度也…

黄金五年已过,那些30几岁的程序员都去哪了?

三十而立,简单四个字,鞭策着多少年轻人。不成想,三十已过,变成了三十而已。程序员对三十这个词比较敏感,有天 ,忽然冒出来一个问题:90后慢慢变成了中坚力量,曾经的80后程序员一代在公…

vue@2.0源码学习---从hello world学习vue的内部做了什么

原文地址 源码版本为2.0.0 接前文。 前文讲到下面五个函数扩展了Vue的原型 initMixin(Vue) stateMixin(Vue) eventsMixin(Vue) lifecycleMixin(Vue) renderMixin(Vue) 复制代码我画了一个图,是执行这几个mixin之后,Vue原型挂载的方法 一个简单的例子 win…
最新文章