某猿的工作经历

来源:互联网 发布:中俄贸易数据 编辑:程序博客网 时间:2024/04/30 18:58

本猿从事java开发工作已达7年之久,期间做过运维、开发和管理工作,工作细碎杂乱。目前就职于第二家公司(初创企业),第一家公司工作有6年之余。本想着创业公司有着无尽的未来,自己能够大展身手,可万事不如人意,公司运营一塌糊涂,项目开发完成缺没有市场,运营团队尚未组建,现状相当混乱,未来更是一片模糊,团队已有成员开始异动,甚是头疼。回想当初,真是稚嫩,相信了纸上谈兵。

说说从业经历吧,2010年7月毕业进入A公司,从事环保相关软件工作,期间一半维护一半开发,长达三年之久。究其为什么愿意从事这份工作,原因有三:一是基础较差,想学习更多知识、经验;二是自身比较安逸求稳,不喜欢异动;三是当时无同等层次同等批次的同事。后来被调回总部,主职软件开发,副职解决运维团队的技术问题。后面三年主要就是带领团队从事软件开发工作了,首先声明我不是团队的最高领导者,本猿是由技术总监直管。2016年7月进入第二家初创公司,经同事介绍认识第二家公司老总,初次见面于酒店,共四人:现老总、某大公司中层、同事、我。谈的还可以,当时也没打算一定过来,因为已经初步意向到另外一家中型公司去上班,待遇基本谈妥,就差最后本猿的确认。抱着梦想、激情,我还是选择了现在的初创公司,老总承诺在工资的基础之上给我10%的分红。我信了,我幻想了,我就来了!!!

再谈谈技能吧,2010年接触了项目的运维及二次开发,运维让我熟悉了linux操作系统,二次开发主要是写小组件维护数据、统计报表,这让我接触了swing开发,能够独立完成页面的布局,后台数据需要在swing界面上展示,让后熟悉了oracle数据库及sql语句的编写。现在回想一下,swing+java+sql+linux+oracle,前台、后台、存储,多么完整,多么原生的一套东西!!!后来系统升级,沿用了之前的Ext  GWT做为前台框架,没有html,没有css,也没有javascript,纯java编写的,类似于swing但又区别于swing,采用java语言编写前端页面,通过RPC进行前后台交互,逻辑结构清晰,容易上手,只是界面风格单一,美观效果不咋地!!!

就这样,就这样的生活,我进行了两年。

2013年,新项目来了,这次是来回跑,又得顾着项目运维,又得顾着新项目开发。我呢,定位是项目的第二负责人,负责项目的落实、开发及团队的管理。第一负责人为公司的技术总监,项目较为复杂,涉及到数据通信、应用系统、数据存储。首先说数据通信,本系统需要采集工业数据,故需要跟工业接口打交道,硬件层面上涉及到AD、DA转换器、光电转换器、RS485与RS232转换器,软件层面上需要做modbus ASCII、moudbus RTU两种协议开发;然后是数据存储,RS232通信过来的数据需要进行本地存储,存储的方式分两种,分别是文件存储和数据库存储(mysql);然后又是数据通信,几百个终端采集到的工业数据需上传到主站服务器,这个时候会涉及到socket通信,原有系统采用的是原生阻塞式socket通信,新系统采用的非阻塞式socket通信(借助于Netty框架);然后又是数据存储,主站采用oracle数据库对数据进行存储,由于数据量较大,学习了索引、分区、分区索引等高级知识并运用到系统中;然后是应用系统,这个应用系统前端采用的是ligerui组件,jquery组件,报表借助于echart组件,前后台交互采用jsp+ajax+servlet。由于借助于这些组件干活,html、css、原生js很少用到,虽然是B/S架构的应用系统,相比新型互联网行业系统,传统的互联网行业在UI端还是落后了不少,主要关注点是性能。总结一下软件技术点就是:协议开发(RS232+socket)+前台(ligerUI+jquery+ajax+jsp)+后台(servlet+java+sql)+容器(tomcat)+数据库(oracle、mysql)。

系统上线了,接下来的一年我就跟在现场,解决运行过程中的BUG,解决不了的提交给公司总部,由技术总监出解决方案。在这一年的过程当中,尝尽了各种小故障,认识到了sql语句需要做性能优化、内存泄露该怎么跟踪、索引是多么强大、分区有好也有坏、数据库集群的重要性、双机热备的意义,负载均衡是在干吗、通信不简单、mysql那么难搞、做事需要耐心、团队是多么重要、领导该怎么伺候..................

三年过去了,我被调回总部了,我开始尝试项目经理的角色了。事情比较琐碎杂乱,写文档、客户交流、现场调研、招聘新人、组织团队开发、管理一些事情。从今天来看的话,当初要是更加努力一点,那该多好啊!!!这三年我们尝试运用了一些主流的前后台框架,积极响应MVC思想,取到的效果也还可以。比如说我们使用mybatis代替了原生的JDBC操作;使用struts、springmvc代替了原生的servlet;尝试使用easyui、qui、bootstrap达到更漂亮的前台效果。在这三年的过程中,我体会到了团队的重要性,更体会到了什么样的人适合留住,什么人适合放弃;我体会到了市场人员应酬过程中的艰辛;我体会到了项目管理的多么高深的一门学问;我体会到了代码是需要重构的;我体会到了技术是学不完的;我体会到了多看看别人写的代码好处挺大的;我体会到了工作之余充充电是必要的;我体会到了公司每个人的利益都不一样,为人处事学问大了;我体会到了团队需要培养、交流、凝聚。

岁月匆匆,一晃就六年过去了,我觉得我缺少激情了,我的生活开始无精打采了,我需要换个环境了,于是来到了第二个创业公司。

来之前以为公司还有几个研发人员,来了之后发现全部走光了,没办法招兵买马,弄来了一个全栈工程师,技术各方面还可以。就这样我们开始了第一个项目,购物商城!!!花了将近4个月的时间,我们完成了商城基本的功能,打算上线了!!!结果合伙人闹翻,项目没人运营,不了了之。这个项目涉及到PC端的商城、手机端的商城、商城后台管理、条码追踪。涉及的技术如下:前台(html5+bootstrap+jquery+ajax+ligerUI)+后台(springmvc+mybatis)+容器(tomcat)+数据存储(mysql)。

好了,老总说下一步搞某某应用系统+某某某应用系统,上批开发人员开发的。由于没有任何文档资料,没办法,只得重新弄。从整理需求-----》物理设计-----》项目结束,我承诺两个应用系统均为2~3个月,项目完成了,等待上线,好了,去谈了N家机构,没有谈成,歇火了。等吧,等市场部和老总的捷报,结果到现在,还是没消息。现在做了几个公司的官网,均已结束了!!!目前没什么事情,项目组小伙说要离职,他坚持,我也不好意思说什么了!!!我呢?不好意思开口,烦人,希望公司有转机,不然我真的撤了!!!