# 这是我异动的第一周,为啥离开原部门?

作者:小傅哥
博客:https://bugstack.cn (opens new window)

沉淀、分享、成长,让自己和他人都能有所收获!😄

23年4月1日的愚人节,我异动了!

整个23年的2月、3月、4月接连发生了好多事,生娃MyBaits新书上市公司发了年终奖换了新的房子,还有异动。哈哈哈,都是大事、都是开心的事。每一件事都是因为种因所以得果,异动也是。但为啥异动了呢,我在原部门领导可是很看重的。

# 一、为啥要异动呢?

其实在去年我就有些犹豫是否异动了,我也清楚的知道异动和找份新工作也没有太大差别,很多事情都要从头开始。这是新的学习机遇,也是新的工作挑战。

虽然我现在的工作可以说是驾轻就熟,领导对我的认可度也非常好,给了我很多空间发挥和对应的成绩收获。但在一个领域已经做到大部分时候给其他人阐述知识,自己吸收缺不多的时候。说心里话,我稍微有些慌,因为我不想寅吃卯粮。所以我决定异动了!

最初也考虑是否专门从事下专门的中间件编写,比如写数据库、或者做云相关的 Serverless FaaS,但鉴于我对自己知识成长体系的建设来说,其实我现在很已经摸到了一点;如何找到市场诉求、设定产品、开发实现、营销推广、运营客户,但这里还少一环其实就只支付交易。

尤其是考虑到以后如果自己做一整套的产品服务时,支付肯定是必不可少的一环,甚至可能也会包括和信贷打交道。那么在我粉丝规模已经逐步增大的情况下,如果贸然上一款和支付有关的内容,其实还是有风险的。毕竟这里的鉴权、风控、准入、支付、交易等核心流程还是需要不少的知识积累,才能做出更稳妥的产品。

所以,为了让自己成为更多可能的多面性,我异动了!—— 不知道你是否也会有这样的职场生涯顾虑,欢迎留言交流。

接下来给大家分享下,异动后如何快速的融入到新的工作。我看到很多找了新工作的伙伴,不知道该如何快速的了解系统并承接需求写代码。

# 二、异动的第一周!

🤔架构师异动到新的岗位写代码吗?

写,当然写。不写代码怎么深度的熟悉业务,没有深度的业务熟悉怎么把控细节。没有业务的详尽熟悉和代码细节把控,其实很难做出符合预期的架构设计。难道只想着做做架构设计、评审评审代码逻辑,就当架构师。那时间长了,你得走的老惨喽!

所以小傅哥在进入新的工作岗位后,是先看文档吗?哈哈哈,不是,小傅哥进入新岗位后,是先参与了一场部门的团建活动!去了趟水长城。

玩归玩,回来就开始"卷"了

先从一个超级大的文档看起,逐步了解到这个部门的业务规模、业务形态、业务流程,之后再到系统工程、工程架构、模块划分。还听了一场关于《互联网金融反洗钱》的分享,真是开了眼界了。啥死鬼都有,各种路子的洗钱案例。可能写着写着代码呢,突然就被带走了。

但只看文档是没法了解到核心流程的,也注意不到细节流程,甚至可能看完了也就忘记了。对于研发来说,想深入了解一定是上手实现。—— 所以那些不写代码的架构师,不能叫架构师,基本叫技术管理者。所以小傅哥就开始接需求,写代码了。这可能也是大部分小伙伴非常关心的,一个入职/异动到新岗位的程序员👨🏻‍💻怎么快速的开始承接需求呢?

# 三、接需求的经验!

新入职或者异动到新岗位的小伙伴也不要害怕,因为给你分需求的伙伴更害怕,万一你写的代码给这系统给干嘎喽!所以大家都不用怕,给你分配需求会有人带并且需求最开始都不大,这些需求都是让你一点点的熟悉系统的小需求。同时你的代码会在规范内编写以及代码评审,开发完事后还有测试对流程进行校验,交付上线时还有对应的审批处理。所以安心一些,好好卷!

但该看的代码还要看,该干的流程还要干。而面对成片成片可能已经经过历代码农堆砌的不成样子的代码,咋能快速开始呢?其实这个问题主要包括以下几点;

  1. 交付给你需求会有对应的产品 PRD 文档,也会告诉你从哪个类的哪个接口开始处理。
  2. 在面对一个类可能有几千行代码的时候,怎么找对应的流程呢?这个时候你可以下载一个 IDEA 插件 Sequence Diagram 这个插件可以非常方便的帮助你生成类方法调用的流程图。
  3. 学会找到和编写单元测试并进行断点调试,只有你会断点调试,才能验证你的流程以及学习他人的流程。—— 很多新人之前可能只看视频的投喂学习,必须掌握这个技能。
  4. 新人保持风格统一,不要感觉你需要的没有,就自己创建一个。记得先去寻找那些已经存在的方法,并尽可能的优先使用它们。如果你对他们有改动,一定要通过插件或者Alt+F7查看,这个方法都被哪些流程中引用了。
  5. 新功能开发记得拉个自己的分支,日期时间-姓名缩写-需求缩写,提交的时候也只在这个分支提交。千万不要把自己的代码,在没确认情况下,写到别人的分支或者master主分支上。另外不到最后交付,不要贸然提交或者合并到 master 分支。小心被锤!王铁锤的锤!
  6. 开发好的需求,记得写好对应的流程和文档,因为毕竟你是新接触这个项目,可能开发完等到一起提测的时候会有个时间间隔,到时候忘记自己都在哪些类里写了啥。这也是有可能的!
  7. 不要因为看到一点问题,就过早的去优化。这个时候只要参考原有的结构来编写你的功能即可,等你真的能驾驭它了,在去折腾它。
  8. 不要过早的吹牛自己3天就能写完,可能你需要4天。刚来的,你哪知道这里的水多深。尤其是从RPC、MQ、配置中心、分布式任务调度、分库分表、提测、上线等一套的系统和流程要你熟悉,给自己留点buffer更安全。
  9. 反复确认流程细节,有时候你想的可能不是你想的,早一些的发现问题,更容易降低风险。
  10. 遇到问题可以去找你的导师,或者结伴编程的伙伴。但不要频繁的去找,你可以在自己思考后,汇总后,尽可能找一个时间批量的解决。

以上是一些承接新工作时所积累的经验,但可能你还会遇到更多的问题。放心,时间会让你一点点把这些都学会,并逐步成长为那个主要的负责人!

# 四、能力从哪来的?

但对于没有大型项目开发经历的伙伴来说,以上可能也只是别人的经验而已。如果想让自己能快速的融入到一个额外的新的项目,那么一定是之前有了很多的技术积累和相关的项目经验。在这个过程中遇到同类的事情,参照自己所积累的经验,才是快速上手的关键。

这里小傅哥也是也为有这样成长诉求的伙伴,编写了很多资料在我的博客上;bugstack.cn (opens new window) 可以说是一条龙的成长辅导。以 Lottery 项目开发为入口,项目驱动学习,通过一个项目把各项分布式技术栈架构设计设计模式组件开发源码技术PI网关等内容串联起来,让大家成体系的积累自己的技术经验。

# 1. 加入星球的伙伴,都怎么说

# 2. 加入星球的伙伴,学的咋样

# 3. 加入星球的伙伴,喊你加入


加入星球,以项目学习。有视频、有文档、有代码、有很多大牛的优秀作业,还有面试简历案例、简历优化服务和一整套的对应的面试题整理。是不是很爽,这样一整套的东西,学起来才有滋有味!详细参考:https://bugstack.cn/md/zsxq/introduce.html (opens new window)

综上如果你想多赚一些钱,也希望自己的职业生涯长久一些,有一定的硬核技术积累,在往后的职场中更稳一些,那么可以加入小傅哥的星球。这些足够硬核的内容,可以帮助你更加平稳的度过往后的路,企业不会永远一帆风顺,但只要你手里技术硬,就会相对平稳。