从技术思维角度聊一聊『程序员』摆地摊的正确姿势

简介: 有人说程序员这个职业,三年升高工,七年做架构,十年送外卖。对此虽然我也曾非常认可,但现在我可以前瞻性(马后炮)地说四个字,杞人忧天!目光肤浅!正所谓天生我材必有用,用完再把外卖送,现在,新的风口——万亿【烟火经济】来了,除了送外卖我们又多了个新选择:摆地摊!一个人一辈子只有那么几次机会可能实现财务自由,机遇稍纵即逝,一定要牢牢把握住。

有人说程序员这个职业,三年升高工,七年做架构,十年送外卖。对此虽然我也曾非常认可,但现在我可以前瞻性(马后炮)地说四个字,杞人忧天!目光肤浅!正所谓天生我材必有用,用完再把外卖送,现在,新的风口——万亿【烟火经济】来了,除了送外卖我们又多了个新选择:摆地摊!一个人一辈子只有那么几次机会可能实现财务自由,机遇稍纵即逝,一定要牢牢把握住。所以,今天我们来严肃认真地聊一聊程序员摆地摊的正确姿势。

01 技术储备

程序员是谁?

一群志存高远立志要靠技术改变世界的人!

一群囊萤映雪时刻站在技术风口的人!

一群镂月裁云面试可以造火箭的人!

一群居安思危28岁就时刻焦虑未来的人!

正所谓打铁还需自身硬,在我们决定投身摆摊大业之前,一定要认清自己找准定位,了解自己在摆摊行业能够达到什么级别?根据程序员这些年来面试招聘的经验我可以给大家一点参考,我认为一个合格的P6级别地摊员应该具备改变全球宏观经济走向的能力,具有将各类地摊货抽丝剥茧再从0到1的能力。

P6级别地摊员面试题举例:

  1. 请说说摆地摊背后的经济学原理。
  2. 画一张从家到摆地摊地点的地图,0表示可以走,1表示不可以走,请编写一个程序,用合适的算法找到最短路线。
  3. 摆地摊可以有很多工具:一块布、地摊三轮车、私家车后备箱、五菱宏光、蓝翔挖掘机,请对比一些这些工具的优缺点?并讲讲你最熟悉的一个工具的运行流程。
  4. 摆地摊的过程中,亿级流量过来怎么办?高并发怎么办?高可用怎么做?

这几道题熟悉吗?如果你答不出来,建议你再回去多看看书,推荐几本:

《摆摊人员的自我修养》
《摆摊的二十三种设计模式》
《深入源零件,了解摆摊车的工作原理》

除此之外,还需要多读一读国外大佬的英文原版著作,特别是一些诺贝尔经济学奖大佬的,比如凯恩斯的《就业、利息和货币通论》、约瑟夫·熊彼特的《经济发展理论》、萨缪尔森的《经济学》、西蒙·库兹涅茨的《各国的经济增长》等。

“你先回去吧,正常我们会在两个星期左右给你答复。”

“码大叔,恭喜你通过了我们的面试,你接下来的工作就是和我一起搬羊肉串”

你看,原来所谓的合适,只是你能不能和我一起吹个很爽的牛,然后干件平凡的事。

我是摆地摊的,但是我就想和你聊一聊八千里路云和月!

02 找准方向

做好技术储备认清自己后,接下来就是找准方向,好的方向是成功的一半。很多人也想去摆地摊,但无奈不知道该做什么,导致自己始终迈不出摆摊的第一步。这件事对于程序员就比较简单,无非三个选择。

选择一:技术导向型创业

大多数程序员是有技术情怀的,通过自己的技术去改变或影响一批人,从而带来自己的商业价值。所以如果选择这个方向的摆摊,完全不需要考虑,看自己擅长什么,可以去制造摆摊车,可以去制造一些小商品,取决于自身能力。

选择二:技术入股型创业

做好你技术分内的事吧!用程序员的专业术语来说,就是单一职责,解耦合。至于什么方向交给你的合伙人,让专业的人做专业的事!

选择三:加入一家牛逼的摆摊公司

我们需要做的就是做好业务抽象和建模,设计一套通用的摆地摊架构,卖什么不重要,重要的是我们什么都能卖。具体卖什么由产品经理和运营大佬去商量。这个时候选择一个好的团队很重要,我们团队就很好,就有一个资深产品经理,可以和程序员打成一片。

“那边两个人在做什么”

“穿格子的是程序员,还有一个是产品经理。产品经理说摆地摊一定要注重用户体验,简化用户的操作。举个栗子假如我们的地摊货是手机壳,你不能让用户挑来逃去这样体验太差,效率也很低。你得能根据用户的心情自动变换颜色、背景,说完两人就开打了,打了一年多没停手。”

你看,对于程序员,选择是如此简单!

困住我们手脚的,是顾虑!

早已成年的我们,需要的可能是那么一次年少轻狂、肆无忌惮!

03 微服务架构

首先,我们来看一张图:

看出什么问题没有?

对,太明显了,这还是传统的摆地摊方式,最初级的单体地摊架构!这样使得地摊服务过于臃肿,全部集中在一个人身上,不利于管理;容错性差,一旦出点小问题,就会导致整个服务宕机。比如用户要用支付宝付款,结果手机没电了,你得等着他呀,其他客户怎么办?而且这样也不利于扩展,摆摊事业做大了怎么支撑?还有一个最大的问题,就是它不符合当今地摊行业的潮流,

所以,最正确的姿势应该是:拆!将整个地摊的架构微服务化。你别管它合不合适,这都2200年了,顺应潮流、顺流而上,你才不会被潮流淹没,不会被这个时代所抛弃。不然你只能回去继续写你低端的代码,干不了地摊员。

如上图所示,微服务化后就成为上面这样的,有人管销售,有人管结账,有人管商品,有人管库存,有人管开神车。这样拆下来,它使整个地摊的分工更加明确,责任更加清晰,每个人专心负责为其他人提供最专业的服务。

  • 独立的可扩展性,每个微服务都可以独立进行横向或纵向扩展;比如上面提到的收银服务慢,再来一个人呗;
  • 独立的可升级性,每个微服务都可以独立进行服务升级、更新,不用依赖于其它服务;比如五菱宏光要升级成蓝翔挖掘机,升级就是了。
  • 易维护性,每个微服务的只专注于完成自己业务范畴的事情;你不用同时担心库存够不够,钱会不会算错等等,每个人专注自己的一部分。
  • 故障和资源的隔离性,在系统中出现不好的资源操作行为时,例如销售忙到瘫痪导致内存泄露,后续的结账还可以继续进行。
  • 等等

术业有专攻,专业的人做专业的事,你看我们像不像一个个微服务?当我们夸夸其谈其先进性的时候,以为自己走在技术前沿的时候,以为自己支撑了一整个服务集群的时候,我们可能已经忘了,这个事情我们已经做了很久很久,这个地方我们已经待了很久很久。我们以为自己是一个独立的服务可以独立地运作,却从来没有想过脱离了这个服务体系的时候,其实,一无是处!

单体应用,还是微服务?

我们需要什么?

这个世界需要我们什么?

04 放眼未来

作为具有程序员背景的地摊员,我们的目光不能局限于当下,要充分考虑未来地摊事业发展对当前架构的依赖及可能存在的风险,提前做好风险预案。比如:

  • 万一有亿级客户流量来访问我们的地摊呢?我们该如何做好流量控制?熔断降级?
  • 要不要再准备一队地摊员做好主备和负载均衡等?
  • 我们的地摊货要不要分库分表呢?
  • 要不要做读写分离,专门安排人员负责客户询价、地摊货咨询等?
  • 要不要引入排队机制?要不要给他们发个令牌才能来我们的地摊呢?
  • 等等

还有很关键的一点,地摊事业未来会不会遭遇某些人的封禁或者打压,比如:

  • 万一有人说地摊是他们国家的物质文化遗产,是他们发明的呢?
  • 万一有人觉得红火的地摊事业影响到了他们的安全,要将我们列入实体清单进行管制呢?

地摊,作为一个炙手可热的风口产业,一个充满无限可能的产业,让我们一起去摆摊吧。虽然我的想象力不足以想象地摊业的未来,但我的心里有火,眼里有光。即将投入地摊事业的程序员们,请接受我的祝福,

奔涌吧,地摊员

我们在同一条奔涌的河流。

它是一个地摊,

它是一个机会,

它是大千世界,

它是我们的内心。

梦想还是要有的,万一实现了呢?

梦想还是要有的,至少这样当我们想努力拼搏一把的时候,知道该往哪个方向!

写着写着我忽然想起来,这个摆地摊的架构好像还有优化空间,要不要再上个中台系统呢?

得好好考虑考虑一下!

我的其他文章
这些Java8官方挖的坑,你踩过几个?
Try-Catch包裹的代码异常后,竟然导致了产线事务回滚!
Redis 6.0 新特性-多线程连环13问!
报告老板,微服务高可用神器已祭出,您花巨资营销的高流量来了没?
我成功攻击了Tomcat服务器,大佬们的反应亮了

公众号:码大叔
资深程序员、架构师技术社区
微服务 | 大数据 | 架构设计 | 技术管理
个人微信:itmadashu

目录
相关文章
|
6月前
|
设计模式 运维 索引
【2023总结】谈谈文章背后的故事与思考
【2023总结】谈谈文章背后的故事与思考
|
5月前
|
设计模式 算法 C语言
技术进步与个人成长:从代码到思维的演变
技术不仅塑造了我们的工作方式,更深刻地影响了我们的思维模式。本文探讨了在编程实践中,个人技术能力和思维方式如何相互影响和提升,重点讨论了一些关键的经验和感悟,以及这些经历对职业发展的深远影响。
49 0
|
6月前
|
算法 UED
探索编程思维:不仅是代码,更是解决问题的艺术
【5月更文挑战第24天】 在数字世界的舞台上,编程不单是一系列指令的排列组合,它更是一种独特的思维方式。本文将深入探讨编程思维的本质及其在问题解决过程中的应用。我们将剖析编程思维如何影响逻辑构建、创新思考和系统分析,并通过实例说明如何将编程原则应用于日常生活和非技术领域。
|
6月前
|
UED
技术感悟:代码背后的思考
在当今数字化时代,技术已经成为生活和工作中不可或缺的一部分。作为技术从业者,我们常常陷入繁忙的编码和调试中,很少有时间去思考代码背后的深层含义。本文将探讨我们在编写代码时需要关注的思维过程,以及如何通过技术感悟来提高我们的编程能力。
|
缓存 程序员 Go
创新思维在面试中的运用:程序员如何展示独特的解决方案
创新思维在面试中的运用:程序员如何展示独特的解决方案
75 0
|
设计模式 算法 程序员
培养编程思维的关键——从最基础开始
在当今信息时代,编程已经成为一项不可或缺的技能。而要成为一名优秀的程序员,除了掌握具体的编程语言和工具,更重要的是培养良好的编程思维。本文将从最最基础的层面入手,探讨如何培养编程思维。
243 0
谈谈讲清楚这件事的重要性
如何讲清楚一件事我相信很多人都很困惑也很无助,尤其是在晋升场合,在向上汇报或者是做大范围分享的时候,恨不得找个地缝钻进去。很多时候我们常常是这样安慰自己,我是实干派技术人,不需要那些花里胡哨的东西,我技术过硬比什么都重要。曾经一度我也是这样认为,最后改变我这个想法的是一句话:如果你讲不清楚多半是想不清楚,如果你都想不清楚如何能够带领更多人拿到结果?
1597 4
|
程序员 数据库
以终身成长的角度看待程序员的工作
随笔分享!欢迎留言交流!
136 0
以终身成长的角度看待程序员的工作
|
数据采集 分布式计算 大数据
从面试官的角度谈谈大数据面试
作为一只老鸟,我的面试经验还算丰富,无论是作为面试者还是面试官。其实这篇对于面试者来说也是有意义的,毕竟知己知彼,百战不殆,知道对方会从哪些方面问问题,从哪些方面考核,才能更好地提前做好准备。 首先,我觉得面试官有责任保证面试过程是一次高效的交流。你要获取到你需要的信息,对面试者做全方位的考量;面试者也要获取到他需要的信息,面试官(若面试成功很大可能是自己的上级)的水平,公司技术要求水平,自己是否适合这家公司,公司是否需要自己。面试是一个双向选择的过程,面试官在选人,面试者在选公司。而面试者了解这家公司最直接的途径就是通过面试官。
253 0
|
算法 JavaScript Unix
1024程序员节:谈谈自我感受
1024程序员节:谈谈自我感受
244 0