美文网首页互联网科技IT共论
初级软件工程师的日常

初级软件工程师的日常

作者: wwwwwwking | 来源:发表于2016-04-29 16:13 被阅读539次

    把上班时间的所有精力放在coding上的是码农;除了coding之外,会做日志分析、数据分析、技术架构、已有代码优化、技术发展短期规划、团队产品中长期规划……的才是软件工程师。

    作为一个入互联网大坑一年的初级软件工程师,最近越来越体会到软件工程师的不易和自己与高级工程师、资深工程师的差距在。好久没有码字了,虽然不能准确地表达出来这些差距是什么,但对职业的发展,也逐渐形成了一个简单的规划。并且正在朝着这个目标坑次坑次地前进。

    刚入坑的时候,觉得代码就是一切,一有时间就会以最快的速度把手上的任务做完,做完后也就没有然后了。最近才刚刚回过味来,写代码很重要,但也很基础,除了代码之外,还有很多事情值得去做。

    入坑到公司的第一个任务是支付渠道优惠的项目。刚拿到任务的时候就开始编码,忙了近一个月,项目终于上线了。由于代码之间的耦合性太强,项目上线后的第一次活动,支付渠道优惠服务竟然把优惠台、收银台全给拖挂了,直接导致支付故障近一小时,造了一个S1级别的BUG;第二次上线,吸取了第一次的教训,降低了模块间的耦合,并在入口处对数据请求进行拦截过滤,一周后第二次活动开始,由于与活动并行的有一个全场立减的活动,又一次导致支付故障近一个小时;然后系统继续优化,最终终于hold住了流量的需求。在这两次事故后很长一段时间内,自己都没有意识到应该去总结一下为什么会发生这样的事故,直到有一天看到一篇文章介绍xx团队是如何对大流量进行处理的文章,才恍然大悟:原来这个坑不止我自己遇到过,别人遇到的时候,通过数据驱动尝试不断优化每个层次,使系统更加稳定;而我这边却以结果驱动,出了问题再去补救,而且补救的不够系统,没有强大的数据支撑和业务支撑。高下立见!

    看完文章突然发现,coding不是工程师的日常,除了最基础的coding,工程师还有很多其他的辅助工作要做。再看周围的高级工程师、team leader,他们确实也在做很多coding之外的事情,比如架构优化、系统监控、中长期规划等等。最近一直在向他们学习,也尝试着去做一些监控工作、优化工作等,虽然暂时还没有对平台发展的中长期规划能力,但也可以通过看别人的规划、别人的演变历程来总结经验教训。

截止目前,我的日常如下:

1. 每天第一件事是打开邮箱,查看各个自动监控系统发来的报警、错误,并找原因。

2. 配置对数据的监控报表,并观察每天的报表变化,及时发现问题。报表的配置需要结合业务逻辑,以我的工作为例,我会通过配置报表监控业务方的退款状态是否正常,监控的数据包括:七天外尚未退款成功的数据、30天内与退款平台状态不一致的数据等。

3. 技术设计,好的设计可以提高开发速度、帮助自己理清开发流程。在做技术设计的时候,根据不同的需求,关注点会有所区别:比如偏展示侧的技术设计,会更关注数据的存储和展示、页面-视图-数据的对应关系等;偏交易侧的技术设计,会更关注交易流程、外部系统依赖、接口幂等等。

4. 技术评审,自己的设计进行技术评审的时候,能让大家帮你发现问题点、注意点等。评审他人的技术设计的时候,可以学习别人的设计思路、挑战别人的设计等。

5. BUG修复,当产生线上BUG的时候,根据线上BUG的严重程度确定修复周期。

6. 每周回顾,每周对本周做的事情,遇到的问题等进行汇总,并形成周报向上级汇报。开始感觉每周回顾是为KPI服务的;后来慢慢发现,KPI是促进我们不断发现问题、整理问题的一个不错的督促手段。

7. 每周查看服务性能,如果服务可用性低于 99.99% 的时候要及时找到不可用的原因,并尽可能修复;如果服务里面有耗时过长的sql调用、服务调用等,需要考虑如何去优化。

8. 学习和总结。。目前做的还不够到位

    每天、每周按照这个流程做事,服务效率得到了优化、BUG影响降低了很多、设计能力也在不断提升,比单纯的码农充实了很多。

相关文章

  • 软件测试工程师到底是个什么样的职业?

    首先跟大家普及下软件测试工程师初级软件测试工程师是负责进行软件测试工作的初级职业人员。他们通常负责按照测试计划和测...

  • 初级软件工程师的日常

    把上班时间的所有精力放在coding上的是码农;除了coding之外,会做日志分析、数据分析、技术架构、已有代...

  • 何去何从

    开发工程师:25岁初级软件工程师,28岁高级软件工程师,32岁架构师,35岁外卖员。 产品经理:25岁产品经理,2...

  • 工程师日记20181007

    今天聊一聊后台工程师(java初级工程师)的工作日常,微服务还有API。 导语:哎日常工作不就是增删改查吗! 其实...

  • 只是年龄达到了架构师而已

    知乎曾有一个针对互联网不同年龄的职级的最高票回答。 开发工程师:25岁初级软件工程师,28岁高级软件工程师,32岁...

  • 我想学习软件测试,但是不知道到底前景如何?

    想知道软件测试到底有没有前景,首先你得知道软件测试工程师是个什么样的岗位,软件测试工程师的日常工作是什么?一、软件...

  • 学习java的优势

    学习java之后,到企业的岗位 技术:java软件开发工程师(中初级):技术一般; 高级工程师:技术高等; 技术架...

  • 测试人,你知道这套价值年薪20W的沟通技巧吗?

    在软件测试工程师的日常生活中,沟通是一门重要的技能。通常情况下,一款软件能否顺利上线,离不开软件测试工程师和软件开...

  • 网站从无到上线都需要什么?

    面向初级PHPer的工作经验 前言 此笔记面向初级PHP工程师,适合自学、培训班出来的PHPer。初级PHP工程师...

  • 零基础学到什么程度可以找一份web前端工作?

    能找到一份前端开发工作,首先你起码得是一个合格的初级前端工程师。那么,什么是初级前端工程师?初级前端工程师都会做些...

网友评论

    本文标题:初级软件工程师的日常

    本文链接:https://www.haomeiwen.com/subject/egnhrttx.html