当前位置: 首页 > Web前端 > vue.js

做软件工程师半年后的小回顾——遇到的困难与反思

时间:2023-04-01 11:52:36 vue.js

作者:莫立泉KyleMo译者:前端小智刷完智凌晨还在洗碗。本文已收录到GitHubhttps://github.com/qq449245884/xiaozhi,里面有完整的测试站点、资料和我的一线厂商访谈系列文章。不知不觉成为软件工程师已经半年了。按照以往的惯例,每隔一段时间就想回顾一下这段时间自己心态的变化和成长,顺便以文章的形式记录下来,希望能分享给一些同阶段的读者或与相似经历产生共鸣。老实说,在成为全职软件工程师的那段时间里,我遇到了一些“麻烦”,但这些问题可能会因个人习惯和职业规划而有所不同,对你来说可能根本不是麻烦,当然除了烦恼,也有一些感悟,继续往下看!想了解什么技术的过渡期——四不像我很久以前写过一篇文章,讲的是前后端如何选择的一些个人看法。简单来说,我会先专注于前端开发,但同时会继续学习相关的后端技术。毕竟自己的职业生涯很长,所以我觉得没有必要过早地限制自己。在我现在的工作中,我本来是属于前端组的,但是后来恰好非常急需后端,而且主管也知道我对后端感兴趣,所以就拿到了一个有机会改写后端。目前大概一个月过去了,后端基本都是用Python开发的,这段时间完全没接触过前端。学了一年多后端,终于有机会真正上战场了。我当然很兴奋,但是经过这段时间,我也有一个隐忧:“我的前端技术会不会因此而慢慢退化?”另外,因为我刚过去四个月,临时加入了后端团队协助开发。本质上,我还是属于前端团队的。所以开会和讨论基本上都是跟着前端小伙伴走。因为暂时脱离了前端开发,有时候跟不上小伙伴们的讨论,好像自己在开发中遇到的问题不适合和前端小伙伴一起讨论,导致自己有点“四不像”的情况。想了想,我觉得这只是一个过渡期。当各种技术不是很熟练的时候,就会出现这种情况。但如果以后自己的基础和实力更加扎实,我想也不用担心一些技能会因为短时间内不经常使用而严重下滑。(当然,熟练程度还是会有差距的!)直到现在,我仍然坚信前端开发人员必须具备后端开发乃至DevOps相关的技术和知识。这种趋势可以从技术的演进中慢慢发现。我们无法预测未来的科技会变成怎样,但只要做好充分的准备,就不必害怕未知的挑战。实力赶不上名气,困扰科技圈的大神文化首先要强调的是,这不是吹牛!首先我要强调,这不是吹牛!首先我要强调,这不是吹牛!通过写技术文章,比如StarBugs技术周刊或者iTBang来助力钢铁侠,或者今年第一次尝试在像JSDC这样的年度开发者大会上分享技术,Web开发领域,尤其是前端圈,已经变得越来越流行。人们认识我,逐渐有人成为定期关注我的读者。但是,我写文章的初衷只是因为喜欢分享。我想大家在学习软件开发的道路上一定有过参考别人文章的经历。我只是简单地认为我也应该是那种人,这样其他人也可以从我自己的文章中学到一些知识。或者可以在学习的旅途中更快的把握住方向,避开一些走错了、忘掉的路。名气的增长其实也带来了不小的压力。经常能听到别人称自己为“大神”、“老师”,但我比任何人都清楚,我只是一个刚从社会走出来的菜鸟。我不是很擅长,无法像通过文字写作那样轻松地与人面对面交流,谈论技术相关的事情。我觉得我只是比别人花更多的时间在学习上,我更善于整理我所学的东西,仅此而已。任何与我花费相同时间的人都可以做同样的事情,我很确定。当我知道自己的实力并没有大多数人想象的那么强大,而自己却始终被所谓的“大神文化”所包围时,我一度颇为困扰和郁闷,因为这是一个可以交流的环境每个人都处于平等地位。有点差距。尤其是当身边有无数比我厉害的人的时候,这样的称号说实话已经成了不小的压力了。思前想后,还是决定自己闭关修炼一段时间,所以以后的博客可能会更偏向于写一些对工作或者生活的百感交集。过于专注于技术的文章可以留给机会!编码不是软件工程师的全部。我曾经过于关注“编码”这一硬技能。直到我成为一名软件工程师并加入了一个完整的开发团队,我才意识到要成为一名优秀的软件工程师,我需要具备很多软件技能。技能,比如团队沟通和协作的能力,对公司业务逻辑的理解……等等。以前,我总是只关注自己的编码能力或者计算机基础知识有没有提高。现在我也在关注自己是否需要加强自己的软实力。这也是我对一个好的软件工程师的要求之一。新认知。在工作中,由于公司从事的是金融保险科技,员工也需要对保险领域的专业知识和业务逻辑有一定的了解。一开始我对保险不是特别感兴趣,而且保险是一个超级复杂的系统,每天都要面对一堆难懂难懂的专有名词,这对我来说是一个相当大的挑战,有时候在开发的时候会有一种感觉的“我学了很多技术,但是不懂业务逻辑,根本不知道怎么用,或者没法加入别人的讨论和提建议。”这些经历验证了编码真的不是软件工程师的全部。我们应该着重提升自身的软实力和相关行业的专业知识,以实现自身价值的最大化。Juniortosenior(从juniortosenior)就在我准备离开社会之前,我有一个盲目的目标:“我要在一年内成长为高级工程师”。于是我疯狂的学习了软件开发,但是在上面的一段里也提到了,要成为一名优秀的软件工程师,除了硬实力,还需要具备很多的软实力。这个原则也适用于从初级到高级的过渡过程。另外,初级工程师在接到需求时,很容易盲目地开始开发,希望尽快完成需求。但是,这样缺乏统筹考虑的结果往往是写了很多以后的扩展和维护。以后重构可能还需要其他工程师帮忙擦屁股。是的,我就是上面提到的傲慢的初级工程师。我只是在过去六个月里感受到了与高级开发人员的不同。最大的差距不是写代码的能力(嗯,这也差了很多XDD),而是思考后看穿整体架构的能力,比如这个需求会不会被满足?会不会影响系统其他地方?哪种实现最适合当前架构?对整体代码库的影响?这些是我现在所缺乏的。所以现在很长一段时间内我都不会给自己立下成为学长的目标。毕竟,小前辈的称号是客观存在的,并没有一定的衡量标准。我认为心中有一个理想开发者的形象很重要,并朝着那个方向不断前进。如果你工作太辛苦,你会很累。让我们培养一些生活兴趣吧!在进入职场之前,我有很多空闲时间。我平均每天花大约5个小时学习。但是,在我开始工作之后,我只有一些下班后的空闲时间可以利用。现在我还是尽量每天下班后腾出最后两个小时来学习新的知识和技术。但是,如果长时间把大量时间花在技术相关的事情上,就会有些疲倦,学习的动力和成绩也会减半。因此,我也开始慢慢调整自己的生活节奏。除了写代码,我还培养了一些长期的兴趣,比如健身、运动、看电影……等等。虽然我花在技术上的时间少了,但我并不觉得自己的进步减少了。毕竟,如果你活得开心,只有你做任何事,你才会开心!所以想要变强,真的不需要努力。你每天只有代码。你必须做出权衡。慢慢来真的更快!总结也许这是一篇略带负面的文章,但我认为负面情绪是进步的动力之一。认清自己的问题以及理想与现实之间的差距,可以帮助我们更快地回到正轨并继续前进。很庆幸自己在社会上半年遇到了这些烦恼,也定下了一些改进的目标。接下来,我就等半年,看看自己走出社会一年后,有什么变化!代码部署后可能存在的bug,无法实时获知。事后为了解决这些bug,花费了大量的时间在日志调试上。顺便推荐一个好用的bug监控工具Fundebug。原文:https://oldmo860617.medium.co...交流有梦想,有干货,微信搜索【大招天下】关注这位大清早还在洗碗的洗碗智者。本文GitHubhttps://github.com/qq44924588...已收录,有完整的测试站点、资料和我的一线厂商访谈系列文章。