其实早就想到要在工作一年的时候写一篇文章总结一下, 回顾一下自己整整一年度过的时光. 虽然有时候觉得自己并没有特别大的进步, 会有一点着急, 但是后来想想其实既然选择了走这条路, 那么这条路还很长, 要学的东西也很多, 也许正是因为自己太过于浮躁, 导致自己不能静下心来, 所以总是着急的学这个, 学那个, 导致自己知道的很多, 精通的却不多.
去年七月初的时候大学毕业, 自己一个人背着吉他从成都来到上海, 7月12号去公司入职, 然后才发现原来公司是一个集成电路加工制造的工厂, 台湾公司, 资讯部(也就是IT部门), 刚进办公室的时候感觉自己像一只迷茫的小鸟忽然落到一个陌生的地方, 有种怕怕的感觉, 而且上班的第一周主管返台了, 待在公司都不知该做些什么, 然后慢慢了解到我们软件课, 实际上只有两个人, 我跟另外一个女生, 她已经在公司三年了, 会写一些delphi和.net的程序, 实际上台湾把程序叫做程式, 然后她问我会什么, 我说我学过Java, 然后她就把一些Java开发的系统交给我了, 实际上那时候自己的水平, 也就是学了一遍Java SE, 会一些html, 最简单的javascript, 会写简单的sql语句, 那个时候自己几乎对Java EE其实并没有特别清晰的概念, 现在看来那时候几乎是站在Java EE的大门之外, 虽然知道一些东西, 可是实际上很零散, 也并没有串起来
那个时候比现在迷茫的多, 实际上公司需要做的事情并不多, 所以也没什么压力, 也没有人要求我马上就做出什么项目, 所以那半年我感觉自己好像一直在白领工资的感觉, 也没人带我, 所以有时候的感觉都是自己跑去公司安静的坐一天, 其实很多时候上班都很想睡觉
就在这浑浑噩噩的三四个月里, 我自己慢慢学, 搭建开发环境(JDK+Tomcat+Myeclipse), 部署项目, 解决一些myeclipse中编码等等问题, 然后以及其混乱的顺序学过一些Struts, Hibernate, Spring, 了解这三个框架的作用, MVC的思想, JSP, Servlet, JDBC, 这期间我还把马士兵的J2SE的视频看了一遍, 并且认真做过笔记, 把基础的HTML和CSS又复习了一遍, 但现在想来当时犯了一个很严重的错误, 那时候因为着急, 急于想很快的把什么都学会, 可以独立开发项目, 所以看一些视频和书的时候, 都不是特别有耐心, 总以为自己能在很短的时间内就掌握, 所以代码写的很少, 为了急于看完那些视频教程, 以为自己看一遍就记住了, 所以很少实践, 现在想想的确是自己太浮躁, 并且正因为如此, 有一些视频, 大概看了不到五分之一就有点没耐心, 看不下去, 所以视频看了不少, 真正学的很好的东西, 却不是很多.
有的时候自己也很痛苦, 在这样的一个环境下, 自己一直也不愿意就这样混下去, 可是只有自己一个人写Java, 因为缺乏经验, 遇到问题, 常常会困扰很久, 有时候只是一个很小的问题, 却一直找不到解决办法, 那个时候常常出问题的时候甚至不能确定是哪个地方的问题, 在公司没有办法问其他人, 有时候下班了问朋友, 但是毕竟通过网络, 有些问题可能不能描述很清楚, 所以解决一个问题常常会花很多时间, 而且有时候一些问题是因为自己粗心造成的.
总之一直感觉不到自己想象中自己能够进步的速度, 但收获还是有一些的 , 比如记了很多笔记, 一些是关于学习(看书+看视频)的笔记, 一些环境搭建的笔记, 比如JDK+Tomcat+Myeclipse, Sqlserver的安装, MySql的安装和图形化工具(Toad for MySql和Navicate的基本使用), 甚至后来有学习搭建Android的开发环境, 笔记通常也做的很详细, 很多都会一步一步的用截图记录下来(Snagit是一个不错的工具), 还有一些是记录一些遇到的问题和解决办法, 在此期间自己通过尝试, 学会了很多软件的安装和使用, 也慢慢学会了遇到问题想办法自己努力去寻找答案, 程序报错了也不会那么慌张, 而是根据错误提示想办法解决.
当然也不是一直没事做的, 接触的第一个项目是一个内部员工投票的小系统, 需要把业务逻辑进行一些修改, 其实现在看来这是一个功能非常简单的小系统, 但不知为什么之前开发的人用了SSH框架, 后来想想他可能是时间充裕, 然后刚好学习了SSH框架, 顺便就实践一下了.虽然这个项目并不复杂, 但是对于当时的我来说, 还是挺困难的, 第一次把项目部署到Myeclipse上并且跑通, 就花了不少时间, 而且因为之前开发使用的JDK和tomcat版本比较低, 所以后来导了两个新的jar包才跑通, 在这之间我也慢慢熟悉了使用Myeclipse, 会使用一些快捷键了, 也熟悉了部署项目, 和一些路径问题的解决办法.
第二个项目是公司的资产管理系统, 这个系统的业务逻辑就要复杂一些了, 包括资产入库, 员工领用, 员工之间或者部门之间的资产转移, 资产回收和资产报废, 因为之前做的功能有很多不合理的地方, 并且主管要求做一个对操作的日志记录功能, 因此我要重新开发资产的转移, 转移的过程中要根据资产编号来查询资产信息, 而不是之前按照员工工号查询, 并且要分离员工之间的转移和部门之间的转移, 资产归还和资产报废也要重新开发, 并且加上了记录操作的功能, 并且可以根据记录号码查询出具体操作的功能, 做这个系统花的时间更长一些, 其中特别的地方在于, 根据资产编号查询资产信息, 用到了ajax, 输完编号之后, 鼠标移开, 就会自动查询数据库然后显示资产信息, 当然, 因为是内部系统, 数据访问量并不大, 所以这样做是没有问题的.
从这个项目我开始意识到log的重要性, 和在对数据库进行操作的时候, 如果发生错误, 事物的回滚...
还有就是从程序上避免一些操作者的错误操作......
后来也修改过几个其他系统, 比如有一个根据SAP导出的数据生成pdf文档, 然后给客户发邮件的程序......
大约到十月份, 忽然有一天, 有一个主管叫我出去谈话, 开始吓我一跳, 我以为自己犯了什么错误, 后来问我愿不愿意去台湾工作一段时间, 然后说了一些比如说会多发一些补贴之类的情况, 说可能会去一两年...我想了想觉得反正现在也离家这么远了, 自己一个人在上海跟在台湾也没太大区别, 就说没问题.
后来又跟台湾那边conf-call过一次, 那个时候软件课已经有三个人了, 然后就是让我们三个一起去, 本来还有一个男生, 但是不知为什么他好像没考虑好.然后从那开始公司就开始帮我们办去台湾的商务通行证, 不过没想到很不巧的是那段时间因为台湾否决了所有的一年的商务通行证, 所以后来只好先办理三个月的, 不过到最后也只有我们两个人去了, 中途还有一个同事转了部门所以不去了
计划不如变化, 也是后来才慢慢知道要成立现在的新公司, 做电子商务, 用asp.net开发, 然后去台湾是要学习asp.net
过完年上班一个星期就去台湾了, 回想在台湾的这三个月, 倒是很让人怀念, 不过这篇日志就不说太多了, 感觉工作这一年来, 那三个月是吃的最好的三个月, 台湾真的有很多好吃的小吃, 水果, 把我养肥了一圈, 然后大部分的周末也都到处跑着玩, 台湾同事都特别好, 很多同事会开车带我们去玩, 也有些时候是我们自己坐高铁出去玩, 我们在台中, 跑去台北看了花博, 去101大楼, 诚品书店的总店, 去了阿里山, 还跑去了海角之南的垦丁, 很奢侈的在夏都住了一晚, 那里真的很美很美, 蓝天白云, 沙滩大海, 最东边走了很美的苏花公路, 看到了蓝蓝的太平洋, 那里看到的海跟垦丁很不一样, 但都很美很美, 没想到我第一次看到的大海就是太平洋, 还有很多小而精致的地方,总之台湾有很多值得怀念的地方, 我想我应该专门写一篇关于台湾的经历.
在台湾上班的感觉也还不错, 同事都很热情, 很照顾我们, 常常给我们带好吃的, 在办公室也常常会吃到一些台湾小吃.
学习方面是先学asp.net, 后来就一下子过度到了电子商务的系统, 中间其实有一段比较痛苦的时间, 但那通常都不是一件坏事, 事实也证明, 通常那样的时间都是自己进步最多的时间.
从台湾回来之后, 就到了新公司, 我们终于有了一个八九个人的小team, 也开始开发一些项目了, 有时候也会做网站的上线测试, 所以最近忙了很多, 但感觉挺好的, 同事都不错, 都挺积极上进, 遇到问题也能讨论.
到现在呢, 我就刚好工作一年了, 虽然从技术上讲我还是一个小菜鸟, 但是我会继续努力, 继续总结, 保持一颗感恩的心, 真的很感谢一直以来一些朋友的帮助, 不管是在网上的朋友还是同事, 不管是通过qq问问题还是通过google查询到一些问题的答案, 都很感谢热心人的分享, 以后我也会坚持写博客, 关于一些自己的学习心得, 或者遇到问题的一些解决办法
虽然一个女孩子做程序员的工作, 好像很多人都觉得有些奇怪, 不过我倒是觉得做一个程序员挺好的, 又没有复杂的人际关系, 在一个team中大家的目标是一样的, 所以跟同事关系都很好, 而且在不断的学习中发现很大有意思的东西, 总之觉得喜欢就好了, 至于有人说辛苦, 但我想做自己喜欢的事情也就没那么辛苦了吧.
最近反思了一下自己这一年来的学习和工作, 有一些感触, 一方面是基础, 基础是重中之重, 这个基础实际上就是至少要把一门编程语言学好, 比如Java SE, 我想如果连基础都没学好就去学一些乱七八糟的东西, 欲速则不达, 目前我打算花一段时间重新复习一下基础, 同时会看一些关于数据结构和算法, 设计模式的内容, 把基础打好了, 再学习其他的东西, 我想应该会容易一些, 并且有些东西虽然语法不同, 但思想却是想通的, 因此基础一定要打好, 思路要清晰. 然后同样重要的就是实践, 之前就是代码写的太少, 以至于学的很多东西理解不深, 很快就忘记了, 不管是复习基础还是学习新的技术, 一定得多实践, 而且有时候就算不理解, 如果能做出一个东西, 也能增加自己的成就感, 就更有学习的动力了. 还有就是一定要有耐心, 尤其是遇到问题的时候, 要想办法解决, 可能解决问题的过程会花费很多时间, 但我想在这个过程中一定能学到一些东西, 并且会留下深刻的印象, 所以遇到错误不要害怕, 先根据错误提示找原因, 再找不到就去Google, 实在再不到再问同事, 问朋友.
现在的自己还只是一只小菜鸟, 但我想我会以自己现在的水平, 保持一颗最最纯净的心, 尽自己最大努力做好眼下要做的事情
努力加油!