zoukankan      html  css  js  c++  java
  • 企业内IT部门的一些问题总结

    今天在跟同事在讨论系统编号需求的时候,顺便探讨到了系统UI的设计,以及软件设计的问题,小有感触,感觉有必要对软件开发进行下深深的反思,好好的思考一下。
     
    反思过去2年:
        满打满算到公司快两年了,两年中我的感觉是基础差,不专业,不系统。

        试问两年多IT研发团队能拿出多少软件开发的思想结晶?有多少软件完完整整的走了软件开发生命周期?有多少做过最基本的单元测试?有多少软件做到了真正的面向对象?有多少软件真正的做到了优化?有多少数据库的设计符合第三范式的?有多少进行过反思,思考,产生过多少结果?又有多少有过大量并发的测试?有多少业务系统是从头到尾我们自己开发的?
        当然这些问题有些偏激,有些东西在类似企业似乎是不现实的,但我们必须要对自己负责,对自己的结晶负责,要么认真在开发上面思考,要么转行! 
        如果想说一个软件能用就行,如果说只想做一个简简单单的码农,那么我无话可说。但如果你想在开发方面做些贡献,那请对自己负责(同样不要整天说软件开发腻了,没意思,挣不到钱,想转行,那请问你有决心吗?警惕 思想的巨人,行动的矮子!)
     
        基础差:这个无可厚非,必须承认,而且必须要有自知之明;向来部门文化提倡学习,但对于软件研发这块的东西,学习最快的方式不是通过IBM的培训,Android的几天培训就可达到的,最快的方式是有个技术雄厚的“导师”来指导你,甚至可能的话在一个团队里面一起做项目,这个是成长最最快的,带给你的锻炼机会是最大的。但似乎通过“导师”这种方式来成长,在目前环境下可能性及其渺小,可能领导在其他方面的考虑,喜欢带动大学的就业率!但旁观的话来讲,一个小而精的团队战斗力比一个几十号人的战斗力要强若干倍,聚美优品网站10个IT人撑起了2亿多的资产。
        但外因往往是你这种小角色所不能改变的,那就变换途径,网络资源那么多,IT平台那么多,有几个人每天会花上一到两个小时去学习?当然我们不反对一坐到办公室就开始增、删、改、查,这是领导们最希望看到的。但学习是为自己负责,不要成为码农,一定要要多多思考问题的捷径,通过各种方式来思考,寻求创造性的解决问题!
     
        想在IT混,基础差可以,但一定要有强烈的求知欲!
     
        不专业:一个是需求,一个是流程,一个是技术。需求这个东西我这真的不想多说什么,我们目前开发的一些东西其实都是小东西,但往往也花了不少的时间,不敢说具体是哪一块的责任,我已经被搞糊涂了,但目前情况一定存在问题,而且一直未得到有效的解决,起码我工作以来都是这么觉得。一个需求持续开发到半年以上,注定是一个失败的需求,即使系统最后勉强上线了,也难耐风吹草动。
        流程:这个是唯一一个值得欣慰的,目前我们各种文档确实非常专业了,等到ITDC的上线,将具有跨时代的巨大意义,起码我们工作井井有条,虽然我们技术上不是最牛B的。
     
        技术:目前技术模块比较散,而且2年左右的时间技术切换非常频繁,由Dephi->X5->X6->.Net->Java等等,这个对于开发人员来讲不见得是一种好的现象。我们每个开发人员应该有自己的强项,有一门过硬的技术,同样还应该具备涉猎广泛。一定不要一会java、一会.net、一会X6的,对于自己的整个规划是个极大的弊端,这方面应该有人做相关的引导与控制!总之,技术上保持创新,保持学习,保持专一!
     
        不系统:这也是上述问题所带给我们需要思考的东西,目前情况来说,我们拿到一个需求往往都是重新开始,美工设计,表单设计,数据库设计,代码编写,都是在重复这样的一个工作,殊不知犯了软件开发的大忌,这种开发模式势必带来了时间和人力上的浪费(因为软件重用度低,复制粘贴键锃亮,重复劳动多,关注到逻辑和优化上面的精力偏少),更危险的是造成后期的系统散乱,难于维护。
     
        一个系统的Team,应该所有的软件都是一个风格样式的,不是五花八门的登陆界面,我们或许可以拿出部分时间来构造一个基础壁垒,所有的后期系统都基于这个基础架构,那样开发效率将是目前的几倍(最简单的一个例子,好的架构,完成一张表的增删改查只需要一分钟的时间,这就节省你的大量精力投入到更重要的事情中,一个人的价值绝对的不能浪费在这些基础资料的搭建上)
     
    简单的就发这么些牢骚,不多说了,我怕去人资。
     
    纵观上述说所,其实可以总结一个矛盾,我们是面向企业服务的IT,而不是IT产品公司,这因素决定着一些本质的东西,上面的一些观点可能我更偏激于IT产品公司上,但起码我们应该警惕一些东西,在众多技术选择上有所取舍,定好方向,在冲杀。还是那句话要为自己负责。

    ---------------------------------------------------
    对开发工具的几点建议:
    0、需求这块毕竟不能和专业的IT产品公司比,不能要求多了 
    1、做Coding的一定要好好利用SVN这个工具。
    2、做数据库的(系统设计,开发方向,不是DW的)建议用PowerDesigner,好好利用。
    3、各个领域的(C/S,B/S,移动)要统一开发风格,最好能研究出自己的架构,所有的开发都基于此,而且应该拿出一部分精力好好研究下前端技术(UI)
    4、经常总结自己的工具类库,将常用的功能单独封装,方便后面的重用。
    5、Coding的时候多找找最优的解决方案。
    6、对于用户访问比较多的系统,定时巡检,优化。
    总之一个软件的提出到上线,希望有一条完整专业工具支持。
    才疏学浅,只能总结这么点,有些观点难免偏激。

  • 相关阅读:
    和为S的连续正数序列
    丑数
    整数中1出现的次数(从1到n整数中1出现的次数)
    数据库常见面试题(非DBA方向)
    两个链表的第一个公共结点
    最小的k个数
    常用的排序
    离散数学(第2版)课后习题答案
    Java入门基础正式汇总
    数学物理方程 课后习题答案 清华大学出版社出版 姜玉山、徐延钦、王晓敏、张庆灵、刘超、李明维版 第2章 课后题答案与解析 复习提纲
  • 原文地址:https://www.cnblogs.com/qidian10/p/2505578.html
Copyright © 2011-2022 走看看