好久没看书的热情,好久没有完整研究过一个技术,现在天天赶业务,希望自己做出来的东西是个精品,结果在某一天,部门卖给京东了。过年的时候,阿里打了几个电话过来,我接了其中一个,发现自己好多问题答不好。相对地,另外一个同事,他做的一个文档系统非常坑爹,编辑后代码和图片老丢失,但是他找到了一份更高薪水的工作。我和他之间存在一个非常大的区别:他的目标不是把业务做好,而是把技术能力提升上去,把没有尝试过的东西拿来用,甚至无视组长的要求;而我关注的是业务体验,业务功能。在组内,他绩效是B,我绩效是A。但是面对试官,他可以说出N个高大上的技术方案,而我根本无法表达出自己在业务功能上花费的心思。
第一结论:业务不重要。
这是我最直接的想法。一个人真的好难把一个业务从默默无闻变成纵所周知,很难清晰地展现在面试官面前。面试官基本不懂你做的业务。
第二结论:清楚自己的定位。
第一结论几近脑残。其实认真思考下自己所做的和自己所追求的,是自己错了。
我是个java工程师,实际上做连产品设计、界面构建的工作都做了。去到面试官的面前,业务对他毫无意义,他要的是你的技术,处理问题的思路。我大部分时间在考虑怎么设计让客户体验更好,怎么调优小细节,还有维护工作,怎么可能得到面试官的欢心呢。并发,JVM调优,可用性,监控,缓存,分布式等等这些非功能非业务的需求才是我需要考虑的事情。尽管说业务还没起来,不需要这么NB的架构,但是这才是我的工作,我的追求。一心做好业务,做所谓全能选手,才是我的悲剧。即使业务做起来了,出名了,面试管最想知道的还是你的技术,那才是你的第一品牌。
第三结论:我必须马上继续写博客,写总结。不能停留在解决问题层面,而是需要提升认识问题的深度和广度。
记得由此面试官问我问我选这个技术做这个玩意,我回答说:旁边刚好有本书,就用它了。ORZ,多老实,多可爱。如果是我同事来回答,肯定是搬出N种类似的技术,优劣对比,业务具体分析,balabala...~实际做得好不好面试官不管,也无从验证。尽管实际上大家都知道,只要熟悉一项具体技术,都能解决好多问题,不需要太多的对比选型,做得差只是自己水平问题。选MINA还是NETTY,选THRIFT还是PROTOBUF,选HIBERNATE还是MYBATIS,根本无关重要。博客和工作总结停了将近一年没写,因为自己把更多的时间放在了业务功能实现,遇到问题没有像以前那样系统的研究,而是GOOGLE后马上简单解决。大半年下来,回头望去,业务功能是做得不错,已经推广到其他小组,但是技术没啥提升。我再次回想,为何当时我要来到这里?一是薪水,二是技术。总想着来到这里,自然而然能学到大并发,大数据,现实再次告诉我太天真了,应该是我主动学会了,再根据具体业务往上套。现在沦为一个蹩脚设计+CRUD码农,实在太可笑了。我熟悉JS面向对象没多大用,我熟悉基本的JAVA没多大用,别人上来都问我项目的架构设计和分布式计算了。。。
第四结论:成功产品的前期,必有用心的开发,但是技术往往不厉害。我的那个同事和组长一致认为微信后台架构就只是业界常用的套路,没有创新,不过如此。
做过业务的同学都知道,把一个业务功能做好,是花费巨大心思和时间的事情,期间各种小调整小变更,大调整大变更,甚至后面功能删掉,结果2/3的时间都花在支持业务变更,剩下1/3的时间够你来技术学习和创新吗?
我觉得业务和技术肯定会经历一个过程:
1.业务起步期,用最简单的架构最简单的技术去实现,尽可能的支持业务,这个阶段用户体验和业务功能最重要(JD初期用的.net,据说当初选型原因很简单,因为刚好身边有几个人会.net);
2.业务发展期,访问量和数据量都上来了,接入层,逻辑层,数据层面临着压力,这时候使用业界成型技术框架就进入议程了,这个阶段技术的重要性就显现出来了;
3.业务爆发期,这个时候,业界的框架觉得不行了,就搞自己独立框架来支持自己特定业务吧(淘宝是代表,研发自己的框架)。
相信大部分的互联网业务都是在第一个阶段,许多人都像我一样重复着低级的码农工作,做着没有技术含量的活儿,没有高并发、海量数据处理的经验,只能似懂非懂地看一些文章。
为了生存,我的内心挣扎着。每当自己写完一个CRUD,心里就多了一份沉重的羞耻感和危机感,我感觉我在浪费自己的时间,重复劳动让我恐惧。我并不是喜欢的技术的人,只是刚好喜欢钻研。我甚至对技术有些抗拒,技术体系太庞大了,而且有时候连某一项技术的一些小细节也很难搞懂。实际上,路很多,我可以选择更换环境,让环境推动我去做真正的技术,我也可以调节时间,学习工作暂时用不上的技术,然后写写总结,吹吹水。
唠叨完,感觉清晰多了。这段时间研究下CSS3动画 + JAVA concurrent包吧,有兴趣的同学可以关注我的博客, 更新速度会至少赶上09的DOTA视频,而且必须是精品。
最后,总结一句: 为了生存,技术比业务重要!
相关推荐
在问路的笑话中,有一个驾驶热气球的人发现他迷路了。他降低了飞行的高度,并认出了地面上的一个人。他继续下降高度并对着那个人大叫,“打扰一下,你能告诉我我在哪吗?”下面那个人说:“是的。你在热气球里啊,...
这可以作为结构化指南,指导您如何构建全栈应用程序,以防您迷路或不知道如何开始。 现在,这将在一个非常高级的概述中编写。 这应该是语言不可知的,没有深入研究框架或哪种语言可以优化您的应用程序。 这些决定...
原创内容公众号【JavaQ】首发,关注不迷路。 目录 持续更新中,内容列表较多,善于使用Ctrl+F 基础篇 Java基础 网络基础 Linux MySQL基础 MySQL架构学习笔记 温故而知新-MySQL数据类型 MySQL索引实战经验总结 提高篇...
三驾马车Ludum 敢于 28 三驾马车是一款关于寻找迷路者的游戏 - 在你的环境中穿梭并用火力、切换块的力量或重力本身的原始能量战胜敌人,以找到 Zwei! 但是,正如主题所暗示的那样,您一次只能获得一种力量! 在任何...
本软件是将文件的偏移地址转换成为内存地址,适合于修改文件
highchars.js便于找不到的程序员
Truthcoin-POW 如果您不是程序员,那么您会迷路,应该单击以下链接: : 将真币项目的功能添加到基本币中。 我在播客采访中描述了这个项目: : 捐款:1GbpRPE83Vjg73KFvTVZ4EnS2qNkiLY5TT =====安装Mac版sudo pip ...
码匠编程2020最新前端学习路线,学习路线是比较细致的,帮助正在学习web前端的小伙伴们不迷路,事半功倍
对于初一学生的职业规划,无论选择公务员、军人、医生、记者、外交官,还是IT行业的程序员,甚至是其他任何行业,英语都是必备技能。大学教育中,英语四级证书往往是获取学位证书的必要条件。即使你不直接从事英语...
LabVIEW超详细教学视频,内附书中源代码及一些程序员必备专业书籍
Library,一个程序员的优化算法 API,专为 Search And Rescue (SAR) 量身定制。 用 C++ 编写(快速) Python 和 Node 包装器 单一资源的 Charnes-Cooper 算法 Washburn 的多资源JOTA算法 JOTA算法也在 MATLAB 中 ...
该组件旨在改善工作流程并帮助喜欢简单,快速,有效工具的程序员。 只需单击一下,您就可以使用Vuenut做出伟大的事情。 将整个商店可视化为节点树,以免迷路 获取数据的最终路由,并使用简单的ctl v将其添加 通过...
《苦涩的Java》教会读者如何识别迷路的迹象,以及如何重新找到正确的方向。通过具体的代码示例,它展示了Java编程中常见的陷阱,并提供了重构后的代码及其解析,解释为何新解决方案更为安全。 知识点详述: 1. **...
【C语言经典程序100题(习题+答案)】是针对C语言学习者的一份练习资源,旨在通过一系列编程题目帮助用户巩固C语言的基础知识。C语言是一门强大的编程...因此,对于想要熟练掌握C语言的程序员来说,这样的练习至关重要。
1. **自动路径规划**:LolnetSmartRedirect可能能够帮助玩家快速找到目的地,通过分析地形并生成最佳路径,减少迷路的可能性。 2. **聊天重定向**:当玩家在聊天中输入特定指令或关键词时,插件可能会将他们的消息...
7. **错误处理**:在整个编译过程中,编译器需要检测并报告语法错误、类型错误和其他编程错误,帮助程序员定位和修复问题。 王容波教授的课件可能涵盖了这些领域的理论基础和实际案例,通过实例讲解和练习,帮助...
FreeImage是一个开源库,专为处理图像文件而设计,它提供了C++接口,方便程序员在他们的应用程序中集成图像处理功能。在C++编程环境中,FreeImage库通常包含三个关键组件:`FreeImage.h`头文件、`FreeImage.dll`动态...
总的来说,《C程序设计语言》是一本对C语言进行了深入浅出介绍的经典教材,适合所有希望系统学习C语言的读者,无论是初学者还是有经验的程序员。通过学习这本书,读者可以掌握C语言编程的基本技巧,为进一步学习...
它继承了标准C语言的基础语法,并针对微控制器的特点增加了对硬件寄存器的直接访问支持,使得程序员能够更加灵活地控制硬件资源。本程序就是基于C51语言编写的。 ### 二、程序结构分析 #### 1. 宏定义 ```c #...