java程序员写业务代码 java程序员副业( 三 )


那如果你自己的定位是只是单单写页面的,那只能说你对自己的要求有点低 , 你没有去考虑如何做一些提升工作效率的事情 。举个例子,比如说常见的后台管理系统,因为功能都很类似的,那你有去考虑如何做一个通用的模版吗,还是就是不断地去重复 。
这个别人的产出,做了一个vue的后台管理系统的模版,现在的GitHub star在6万多,通过这个项目,他就可以得到更多人的认可,也能得到更多的好的工作机会 。
所以,不要觉得业务代码就是low的 , 要善于去总结,然后再分享自己的经验 , 没准你也能成为一个领域内的Top 。
不要太在意所谓low与不low,需要在意的是做了这个项目或业务后,对自己的能力有没有长进 , 如果有 , 那说明不low 。如果没有,那说明你只是在机械的劳动而已 。
每个大佬都是从业务代码做起的,大佬们注重的是能否成长,学习实践的机会,以及平台的大小和未来是否和自己的目标相匹配 。
总结来说 , 只要能提升自己能力的任何工作 , 都是值得的 。
业务代码不一定low,能完成用户需求的代码就是好代码 。
另外,对于我们搞嵌入式软件、EDA工具软件的来说,业务软件反而是更有技术含量的,更具科学意义的代码,而软件可能只是载体,你啥时候透过代码理解了它们背后的物理概念、数学公式,你就超越了程序员,能向科学家又迈进一步 。
互联网软件其实也一样 , 软件实现的是一个业务流程的自动化,你完全可以透过你写的程序还原甲方用户的业务流程,而这种流程是老板制订的,认识会上一个层次 , 将来可以向老板迈进
我觉得首先大家要理解什么是“业务代码”,业务代码是一个相对的概念 。
1.对于一个一般的物联网应用型公司来说,业务代码就是根据客户需求基于一个MCU或者MPU的应用控制逻辑的实现 。
2.对于一个做纯上层应用的公司来说,业务代码就是基于一个操作系统为客户量身定制对应的app,并实现对应的应用逻辑 。
3.对于一个微型控制器设计厂商,业务代码就是底层架构裸机的具体实现和各个外设驱动的框架设计 。
4.对于一个设计操作系统的开发人员来说 , 业务代码就是架构设计、内存管理、调度机制优化、优先级管理、进程间通信机制优化、线程管理和内核完善等等 。
所谓”业务代码”都是相对的 , 没有参考系怎么谈 。像操作系统,站在操作系统内核提供方的角度看,上层所有的应用框架,进程服务,都是业务代码,我是为他们服务的 。技术只是工具,业务实现才是目的 , 站在不同供应商的角度 , 只要涉及代码的地方都可以称之为业务代码 。所以站在这个维度,如果要说业务代码“LOW”,那就没有代码是不"LOW"的了 。
不过,真正接触底层或者实现RTOS底层业务框架的工程师其实是很少的 。大部分工程师基本上都是对于客户需求做一些非驱动底层非操作系统框架的应用型的开发,所以大多时候“业务代码“又单一的被指向了那些只是对客户的上层应用的需求做开发、调整或者迭代的代码 。
而这部分代码究竟"LOW"还是不"LOW"呢,我的答案是:不"LOW" 。但是现实却是很“LOW”,之所以会被想成LOW,是因为:
1.判断一个程序员的优秀程度已经不单单看你写了多少应用型的代码,设计了多少应用框架,而是你懂不懂底层驱动逻辑,懂不懂操作系统内核,懂不懂内核裁减等等 。所以这种情况会经常出现在面试过程中 , 面试官会因为你不懂底层驱动、不懂内核而给你比较低的薪水 。

推荐阅读