关于我

联系方式

st6 AT foxmail DOT com

个人简介

  • 善于学习,工作勤奋
  • 精通 Java 和 J2EE 相关技术
  • 拥有超过十年的 J2EE 开发经验
  • 拥有2年的 DB2 存储过程开发经验
  • 熟悉使用 Scrum 敏捷开发方式管理团队

工作经验

9/2013 - 今, 某电子商务公司

  • 工作内容:
    • 多维分析系统架构设计和升级
  • 技术贡献:
    • 构建了多维分析报表开发平台
    • 基于React 报表开发平台

7/2005 - 9/2013,IBM 公司

9/2007 - 9/2013, 项目组长

  • 工作内容:
    • 与美国需求分析人员讨论和分析需求
    • 与美国架构师讨论和分析系统设计
    • 根据需求和系统设计文档与开发人员一起分解任务,对任务进行评估和计划
    • 使用 Scrum 敏捷开发技术管理团队
    • 研究和开发新技术或新工具来提高团队的开发效率
  • 技术贡献:
    • 带领一个实验小组研究如何使用 RTC(IBM Rational Team Concert)这个工具进行敏捷开发。把该小组的研究成果应用到了整个 IBM DSW 项目。使得 DSW 开发模式从使用 CVS 管理源代码和使用普通文档管理开发任务的模式转换为使用 RTC Jazz SCM 管理源代码和使用 RTC Work Item 管理开 发任务的模式。这种开发模式的改变带来的主要好处是: 1)代码的改动和相应的任务关联在一起,更便于对代码的理解和管理;2)RTC Work Item 中记录了任务的预计完成时间,实际完成时间,任务的开发状态以及是否依赖其他的任务等等信息。使用 RTC 有利于项目组使用 Scrum 的 敏捷开发方式;3)RTC 提供了丰富的报告和图表,这些报告对监督项目的进度和风险非常有帮助;4) RTC 同时提供了 Restful web service, 我们可以编写插件来进一步提高项目组的开发效率。
    • 使用 Selenium 2 进行自动化功能测试。基于 Selenium 2 编写了一套自动化功能测试的框架。该框架可以使用不同的输入方式(配置文件或者 数据库)获得测试数据,可以定时执行冒烟测试。同时,这些自动化脚本还可以用来验证系统在不同环境中的可用性,或者获得系统中 Web 页面的HTML源 代码对其进行 W3C 标准的验证。这些工作在以前都是由人来手动执行,不仅花费大量的人工而且准确度也不是非常高。通过把这些任务的自 动化,不仅节省的人力而且提高了准确度。
    • 使用 ruby,perl 和 shell 编写了一些脚本来提高项目组的开发效率。这些脚本用于日志分析,代码转换等等。

7/2005 - 9/2007, 数据库开发组组长

  • 工作内容:
    • 分析需求,编写设计文档,分配任务
    • 参与并带领小组进行数据库开发工作
    • 数据库数据维护,创建修改数据库表结构和编写存储过程
  • 技术贡献:
    • 编写了名叫 Mydb2 的用于 DB2 数据库开发的工具。该工具提供脚本方式和 Web 方式。它可以用来执行 SQL 语句,查看数据库对象的定义,比 较不同数据库之间的差异。还可以用来在不同开发人员之间分享 SQL 语句。
    • 利用 SQLUnit 开源工具对存储过程进行单元测试。我们系统中有大量的存储过程,存储过程里有复杂的业务逻辑。为了提高我们的代码质量,我 们编写了大量的 SQLUnit 测试用例来测试存储过程。并且,编写了一个 Eclipse 插件来帮助我们编写测试用例。

7/2001 - 7/2005,中科院软件中心

  • 工作内容:
    • 公司工作流平台开发和维护工作
  • 技术贡献:
    • 基于工作流平台编写了一套模板来加速项目开发
    • 编写了一些 taglib 用于界面的显示

技术

  • 熟悉 OLAP BI系统构建。
  • 熟练使用 Java, Spring MVC 和 SQL。
  • 熟练使用 Javascript, Jquery, React。
  • 熟练使用 Ruby 和 Shell。
  • 熟悉UML,面向对象设计和编程, 设计模式。
  • 熟悉 Windows 和 Linux 开发环境。
  • 熟悉流行的开发环境,中间件和数据库。Emacs, Eclipse, IBM RSA, IBM Websphere, JBoss, Oracle DB, IBM DB2 等。
  • 熟练使用 IBM RTC 进行项目管理。
  • 熟悉 MDA 工具。
  • 了解使用 IBM Appscan 进行网站安全的扫描。
  • 了解使用 IBM Worklight 进行手机应用开发。
  • 了解 Eclipse 插件开发。

发表文章

  • 《DB2 存储过程开发最佳实践》,IBM DeveloperWorks, 2006
  • 《使用脚本加速 DB2 存储过程的开发》,IBM DeveloperWorks, 2007
  • 《使用 IBM Data Studio 开发调试 DB2 存储过程》,IBM DeveloperWorks, 2009
  • 《利用 Shell 脚本实现 DB2 数据库的敏捷开发》,IBM DeveloperWorks, 2010
  • 《Using RTC for development in a globally distributed team》, IBM QSE, 2011
  • 《使用 Rational Team Concert 进行代码合并》,IBM DeveloperWorks, 2012
  • 《使用 Rational Team Concert 进行敏捷开发的每日例会》,IBM DeveloperWorks, 2012

认证

  • Sun certified Java Programmer
  • DB2 V8.1 Family Fundamentals
  • Architectural Design of SOA Solutions
  • IBM Certified IT Specialist

社区

  • IBM Agile 社区: 致力于在 IBM 内部推广敏捷开发和评选优秀的敏捷开发项目。
  • IBM e-Week 社区: 邀请大学生来公司参观或到学校里进行讲座来介绍工程师职业,使同学们对工程师和计算机技术产生兴趣。