一位五年工作经验架构师的感悟

简介: 写给五年陈的自己 写周报,写的兴起,编写周报,还边用虎跑泉,泡铁观音喝。自己写周报的**惯还是要改一改,自己是个性情中人,写个周报也透露了太多情感在周报里。有很多人肯定觉得不好,也许以后我也会改,改的越来越干练,掏心的话少说。

写给五年陈的自己

写周报,写的兴起,编写周报,还边用虎跑泉,泡铁观音喝。自己写周报的**惯还是要改一改,自己是个性情中人,写个周报也透露了太多情感在周报里。有很多人肯定觉得不好,也许以后我也会改,改的越来越干练,掏心的话少说。

兴奋了,喝了茶,睡不着了。灵感闪动,本周是个值得纪念的日子,写个文章纪念下过去。

回想这一路路走来,还是很感恩收获的一切,我渐渐从一名菜鸟,成长为一位架构师,记得毕业的时候我给自己定的目标是:五年要成为一方面的专家。虽然,实际的成长比这个慢了两年,但是我还是庆幸自己当初果断的裸辞,然后进入支付宝。

每个架构师都是独立无二的,每个架构师都应该有自己的情怀,这些情怀是你的世界观。

我是如何成长为一个架构师的,我姑且给自己定的 title 就是架构师,不要认为有架构师的 title 就很牛 B 的,人外有人,天外有天,做好自己。五年陈留给自己的话:不忘初心,方得始终,未来已来,星辰大海。路就在前方,继续前行。

每个人的成长之路也不一样,我来回想下自己的。

不为过去蹉跎,珍惜当下

很多在菜鸟的时候,肯定或多或少,有过对身边的牛人,报以羡慕的眼光。
当看着别人职位比你高,
当看着别人比你工资领的高,
当看到别人年纪轻轻,就已经是牛逼哄哄。
你会不会有羡慕嫉妒恨的想法:
要是我当年读书的时候,不打游戏,少吃点红瓶、蓝瓶,少放几个水元素,少放几个暴风之锤(寒冰王座)。那么我肯定可以学到更多。
要是我当年不睡懒觉,起早贪黑,去学**,那么我肯定是也会学到很多。
要是。。。

理由从来不嫌多,我自己肯定也有这些想法,平心而论,我现在也有这些想法。但是负能量不能盖过正能量。

不要为过去而蹉跎;不要羡慕别人现在的生活;不要羡慕陈冠希,长得帅,女朋友交的多。你明明没有别人找的帅,不努力,你就是天天守着电脑看看片。说不定那天你去创个业,成功了,然后的然后,你想想然后的然后。。。

所以,不为过去蹉跎,活在当下,把握当下。

找到你的追求,然后就去追求

首先,我这里没有使用信念。信念,可能太重了。尤其对于中国人而言,信仰普遍都是缺失的,很难一直相信、坚信一件事。
第二,很多人,不知道自己想要什么,想去追求什么。所以一直不知道,该怎么去改变,该怎么去追求。

我是为了追求钱?

其实我不追求钱,当然我不是圣人,我家里不富裕,就是从农村出来的,我结婚的时候没有自己的房子(谢谢妻子),我还有很多东西没有买。我需要钱,但是不是为了钱而工作,工作这么多年,没有询问过加薪,没有为了加薪而跳槽(当然现在的公司对我们还是很不错)。

钱,对于我而言,就是想买个安心。我用它来让父母对我的未来安心;让妻子对于未来充满信心(虽然她现在还不算很安心);让整个家庭有一定的风险抵抗能力。

安心以后,就是上路。

我记得第一段工作,是在恒生。我当时在恒生银行事业部,工作一年后,我发现自己进步很慢,在技术体系没有任何进展,公司的技术体系很旧,而且基本不进化。我自己做了一个技术的演进,使用了一种新的方式提升了平台的整体能力(当年还没有平台能力这些体系思路)。然后还期待年底被表彰下,技术人也是虚荣的,呵呵,就是期望可以带来成就感。

做着做着,发现没有人可以帮助我提升,虽然当时我很弱,我的学**思路也不清晰。平时就是逛逛网站,学**的很肤浅。但是,我内心感受到:如果要是这样待下去,肯定废了,几年之后,还是同样的眼光羡慕别人。

于是在工作一年半的时候,选着了裸辞,其实还是很佩服自己,因为多数人都是骑驴找马。多数时候是招聘 3、5、8 年经验的人。但是,当你顾虑越多的时候,越容易失败。

所以,找到你的追求,然后就去追去。

失败不可怕,需要对自己、未来充满信心

当时的我真的很弱,但是我就是想找个地方提升自己的技术,提升自己的价值。

刚好有个朋友是阿里 B2B 的,当时也没有太多关注阿里,也不知道阿里到底有哪些子公司。但是,我的朋友,热心的说:“要不要我帮你内推试试?”,我就是抱着试一试的心态,想去尝试下,知道阿里的技术强,但是到不到阿里的要求。

于是开启了我奇葩的入职阿里经历。

第一次面试,阿里 B2B 的岗位,就有很多知识不知道,面试官问了一致性 hash,那个年代的我,哪里知道。不过面试官还是和我聊了一个小时。但是我的水平有限,结果可想而知。我肯定也知道没过,然后我就请教面试官,需要提升的地方,学**哪方面的内容。

于是我去学习,一个月过去了。

第二次面试,也是阿里 B2B 的岗位,我不知道那个时候有没有招聘的公海,按照我的理解是没有的,然后我肯定不会有这么多次机会。这次的面试和上次很像,只不过内容换成了多线程并发相关的知识。我又不知道,面试官还是很容忍我,最后没通过,我同样为了需要什么提高。

于是我去学习,一个月又过去了。

第三次面试,是淘宝,应该是广告部门。这次面试,我觉得除了不知道的内容,其他的内容都还回答的蛮正确的。但是面试官,拿着面试题就和我聊了,然后讲到一个数据库方面的知识时(内连接,外连接),我说不知道。面试官说:这么基础的问题你都不会,这是不能容忍的,其实当时很伤心。有可能他们对数据库要求很高吧。但是,我耿耿于怀的是:每个人也许都有些盲点,也许不能以这些盲点去评判一个人。而且,可能还有更好的方式,如何去指一个方向,让被人对你感激,感恩。我这些年也参加了些面试,面对一些面试者,即使不通过,我也会善意的去提示下。

于是我又回去了,学了些啥,我不知道了。

第四次面试,是支付宝。当时是一个女的领我进门的,我以为是 HR,两个人坐着有点尴尬,然后这个“HR”就开始问问题,你讲下 spring 吧。然后我内心当时就震惊了:都知道阿里技术好,但是 HR 都会技术,太夸张了吧。面试过程还好,我讲了在第一个公司做的一个技术创新。

第一轮通过了,好激动,第一次过第一轮。

而后,马上第二轮,进来个光头,光头看了下面试题,然后就问了一个技术问题:” 什么是架构”,虽然当时听过架构,但是按照我当时的理解,说不清这个概念,我现在也不一定说清这个概念。第二个问题就是:你愿意做外包么?我回答不愿意。

最后女 HR 和光头说,你等一等,我们合计合计。合计的结果就是,我进来了,进来的不容易。可能还多亏当年扩招。现在我们面试的时候,我们也经常说:要是按照现在的面试要求,那么我肯定进不来。

这就是一段比较有意思的经历,当我妻子比较犹豫的时候,经常对妻子讲:日子总是越来越好。我的经历也可以看出很多。
所以,失败不可怕,需要最自己、未来充满信息。努力去学习。

脚踏实地,如饥似渴,积少成多

于是进入了支付宝,支付宝好复杂。有很多东西给我学。
光头老大给有次问我:你的学习计划是什么呢?
我说:我要把支付宝的所有框架,业务都学习一遍(真不知天高地厚)

老大说:你学的完吗?
我说:我看了下确实很多,有 100 多个系统,很多业务概念。
老大说:不要好高骛远,我建议你结合当前的工作,一步步学习,以点带面。

刚进公司的时候,我不是很有自信,因为知道自己技术可能比很多大牛差距很大。同时,自己也是一个不太会表达的人(原来的老大也说过,我的软能力不行),整体上在初期感觉相对较闷。

日常工作就会把自己占得很满,怎么去学习?我的技术不行,就想去学代码,框架,支付宝的代码全部是开源的,所以我可以很简单通过 eclipse 直接查看框架的源码,渐渐的,比很多人都了解框架,了解技术。我还会去狂公司的论坛,公司的 doc,这上面有框架设计相关的内容。所以,很多时候机会是很多的,关键是你想不想去去。

所以,不要好高骛远,脚踏实地,时刻保持饥饿感,积少成多。

开放心态,视野决定格局

12 年妻子怀孕,于是转岗回了成都,成都是个远离核心的待发展的技术部,当时人就 20,30 号人吧。
回去后,由于原来是在杭州负责核心 A1 系统,大家都还挺羡慕,都还挺给面子的。所以,变得越来越自信。

当你自信后,同样你会越来越勇敢,越来越开放。当时,也看了些敏捷的书,虽然从来没有完整的看完一本敏捷的书,现在我对敏捷也是半懂不懂,依然很讨厌职业的咨询师,喊喊口号,比如 TDD,说实话,我就很难看到 TDD 的模式,在如此复杂的业务系统成功过。

当时对于敏捷最深刻的一点就是:反馈环。怎么去利用反馈坏不断是提升自己,自己缩短反馈坏,让自己成长的更快。

回成都后,我变得更为开放,这种开放,让我收获更多,在交流,不断的学**中,成长更快。从一个基本是完成任务型的技术人员,渐渐去思考更全局,更开放性的内容。

成都远离核心,生存不易,这些经历同样丰富了我,内心也变得越来越强大。这些年影响我最大的一些思想有:

1、不要给自己设限:不在把自己禁锢在舒适区,不要怕前面有挡着你的人
2、缩小自己的反馈环:
3、不断以小的正能量,不断积累成就感。
4、不要怕做决定:错误的决定,比没有决定好。

渐渐地,我从不说的人,变成了比较能说的人,能说可能还不是会说。会说更考验技巧,情商。
渐渐地,周围的人又说我是段子手。
渐渐地,变成了一个经常黑人的人。哈哈。
不断去思考,总结,提炼做事模式,思考方式,这些方式可以指导你持续成功。
视野,越大,收获越多,站在全局去看问题,这也是一个架构师需要的。
所以,保持开放心态,视野决定格局,格局改变命运。

写在最后

如果大家能看到最后,首先谢谢。
有的人要骂:标题就是唬人的,一点都没有讲技术。
架构无处不在,你怎么架构自己的未来。
感谢这些年帮助我的人。

原文来自技术之家


原文发布时间:2017-06-03
本文来自云栖社区合作伙伴“ Debian社区”,了解相关信息可以关注“ Debian社区”。
相关文章
|
16小时前
|
消息中间件 Java 微服务
Java微服务架构实践指南
Java微服务架构实践指南
7 0
|
1天前
|
Kubernetes 持续交付 开发者
构建高效微服务架构:后端开发的新趋势
【5月更文挑战第8天】 随着现代软件开发的不断演进,微服务架构已成为众多企业解决复杂系统问题的首选方案。本文深入探讨了微服务架构的核心概念、设计原则以及实施策略,旨在为后端开发者提供一种清晰、高效的技术路径。通过分析微服务的优势与挑战,结合具体的应用实例,文章将展示如何通过容器化、服务网格和持续集成/持续部署(CI/CD)等先进技术手段,实现后端服务的高可用性、可扩展性和敏捷性。
|
1天前
|
消息中间件 监控 Java
构建高效微服务架构:后端开发的新趋势
【5月更文挑战第8天】随着现代软件开发的复杂性日益增加,传统的单体应用架构逐渐难以满足快速迭代和灵活部署的需求。微服务架构作为一种新的解决方案,以其模块化、独立性强和易于扩展的特点,正在成为后端开发领域的重要趋势。本文将深入探讨如何构建一个高效的微服务架构,并分析其对后端开发实践的影响。
|
1天前
|
敏捷开发 持续交付 API
构建高效微服务架构:后端开发的现代实践
【5月更文挑战第8天】 在数字化转型的浪潮中,微服务架构已成为企业追求敏捷开发、持续交付和系统弹性的关键解决方案。本文将深入探讨微服务的核心概念,包括其设计原则、优缺点以及如何在后端开发中实现高效的微服务架构。我们将通过实际案例分析,展示微服务如何帮助企业快速适应市场变化,同时保持系统的可维护性和扩展性。
|
1天前
|
API 持续交付 开发者
构建高效微服务架构:后端开发的新视角
【5月更文挑战第8天】 随着现代软件开发的演变,微服务架构已经成为了企业追求敏捷、可扩展和灵活部署的重要解决方案。本文将深入探讨如何构建一个高效的微服务架构,包括关键的设计原则、技术栈选择以及持续集成与部署的最佳实践。我们还将讨论微服务带来的挑战,如数据一致性、服务发现和网络延迟,并提出相应的解决策略。通过本文,后端开发者将获得构建和维护微服务系统所需的深度知识,并了解如何在不断变化的技术环境中保持系统的健壮性和可维护性。
24 8
|
1天前
|
负载均衡 网络协议 应用服务中间件
理解现代微服务架构中的服务发现
微服务架构已经成为软件开发领域中的一股重要力量。在这种架构中,服务发现是关键的一环。本文旨在详细探讨服务发现的概念、其在微服务中的重要性,以及实现服务发现的常见方法和工具。
|
2天前
|
设计模式 Kubernetes 数据库
构建高效可靠的微服务架构:后端开发的新范式
【5月更文挑战第7天】在现代软件开发的浪潮中,微服务架构已经成为一种流行的设计模式。它通过将应用程序分解为一组小的、独立的服务来提高系统的可维护性和扩展性。本文深入探讨了微服务架构的核心概念、优势以及如何利用最新的后端技术构建一个高效且可靠的微服务体系。我们将讨论关键的设计原则,包括服务的独立性、通信机制、数据一致性和容错性,并展示如何在云环境中部署和管理这些服务。
16 3
|
2天前
|
监控 负载均衡 数据安全/隐私保护
探索微服务架构下的服务网格(Service Mesh)实践
【5月更文挑战第6天】 在现代软件工程的复杂多变的开发环境中,微服务架构已成为构建、部署和扩展应用的一种流行方式。随着微服务架构的普及,服务网格(Service Mesh)作为一种新兴技术范式,旨在提供一种透明且高效的方式来管理微服务间的通讯。本文将深入探讨服务网格的核心概念、它在微服务架构中的作用以及如何在实际项目中落地实施服务网格。通过剖析服务网格的关键组件及其与现有系统的协同工作方式,我们揭示了服务网格提高系统可观察性、安全性和可操作性的内在机制。此外,文章还将分享一些实践中的挑战和应对策略,为开发者和企业决策者提供实用的参考。
|
2天前
|
缓存 监控 数据库
构建高性能微服务架构:后端开发的终极指南
【5月更文挑战第6天】 在现代软件开发的浪潮中,微服务架构以其灵活性、可扩展性和容错性引领着技术潮流。本文深入探索了构建高性能微服务架构的关键要素,从服务划分原则到通信机制,再到持续集成和部署策略。我们将透过实战案例,揭示如何优化数据库设计、缓存策略及服务监控,以确保系统的稳定性和高效运行。文中不仅分享了最佳实践,还讨论了常见的陷阱与解决之道,为后端开发者提供了一条清晰、可行的技术路径。
|
3天前
|
消息中间件 数据管理 持续交付
构建高效微服务架构的最佳实践
【5月更文挑战第6天】在动态和快速演变的现代软件开发领域,微服务架构已经成为促进敏捷开发和部署的关键模式。本文将深入探讨构建和维护高效微服务架构的策略,包括服务划分准则、通信机制、数据管理及持续集成与持续交付(CI/CD)的实施。通过分析不同业务场景下的应用案例,本文旨在为开发者提供一套行之有效的指导原则和实践方法,以支持他们构建可扩展、灵活且高效的微服务系统。
28 2