软件无所谓传统与新兴,只不过面向市场的不同,导致大家心里有个对比。何谓传统软件开发,可能更多的与企业内部应用挂钩,采用项目制,人员对项目负责,面向B端用户,用户规模小,业务场景特定,迭代升级频率小,技术实现复试度较互联网应用低。
由于采用项目制,在项目结束后,项目就移交出去,后期的升级、维护、运营、运维几乎很少参与,日常开发工作更多的也仅是业务开发,导致参与这些项目的人员成就感特别低,技术成长有限。有一个词与传统软件开发走的比较近: 外包。所谓铁打的项目,流水的码农,外包人员的流动性是最大的。
为什么去做互联网研发呢?说到底还是生存与发展的问题。BAT,TMD等类似大厂的好待遇好福利好前途,充斥着互联网,影响着身边的每一个人。短短数十年的信息革命又被称为第四次工业革命,远比之前三次来的更迅速,渗透的更深入。
互联是趋势,我们要做的就是顺势而为
不管做什么转到哪行做研发,无非两方面,软实力加硬技能,再具体点就是思维转变结合一定的技术储备。
软实力——思维转变
就是变被动为主动,沟通协调,团队合作,都需要一个转变。举个栗子——需求,不能再一味的按着合同上确定的需求,按部就班一个里程碑接一个里程碑的去实现,有需求变动再去做个需求变更流程后再开发功能。
需求是一个转变点,其它还体现在开发模式、产品迭代、团队合作中。互联网研发更多的趋向于产品研发,开发模式抛弃传统软件开发过程中的瀑布模型,更多的采用敏捷模式,KANBAN、SCRUM等,读一下敏捷宣言似乎来的更直观一下。
个体和互动 高于 流程和工具
工作的软件 高于 详尽的文档
客户合作 高于 合同谈判
响应变化 高于 遵循计划
大家都在讲互联网思维,做研发也一样,只有从 自我认知层面转变过来,才能更好的去适应互联网技术开发。
有人说我一直搞传统开发,没有经验啊!其实方法总比困难多,去找从事过相关工作的同学\亲戚\朋友\前同事\网友去聊聊天,到知乎\Google\微博\博客\公众号看别人的总结,参加相关的线上线下活动等等,如果以上都不行的话就来找我吧。
硬技能——技术储备
以结果导向看,因面向对象的不同,导致采用的技术栈差异比较大。互联网应用技术应用更广泛,更考验技术的融合能力。具体有哪些不同,从招聘网站的相关岗位技能要求上就能找到端倪。你需要做的,就是找几个代表性的技能要求摘出来,形成自己的技能学习列表,个个击破。特别是一些常见的,比如分布式、缓存、消息队列等。
肯定有朋友跳出来说我工作中压根都用不到,怎么能掌握住。工作中用不到,只能在工作外想办法,自己啃书看教程学习,照猫画虎做案例;跟别人交流取经,探明暗坑深水,为我所用。
以上两点也是我的切身体会,那么剩下的就是找个合适的坑,把自己埋进去磨练升级吧,祝你好运!
多年编程经验,今年1月整理了一批2019年最新WEB前端教学视频,不论是零基础想要学习前端还是学完在工作想要提升自己,这些资料都会给你带来帮助,从HTML到各种框架,帮助所有想要学好前端的同学,学习规划、学习路线、学习资料、问题解答。只要加入WEB前端学习交流qun:296212562,即可免费获取,学习不怕从零开始,就怕从不开始。
网友评论