· Ten plus years of proven application development experience that includes creating distributed applications through analysis of specific business requirements.
· Understanding and demonstrated use of object-oriented design principles.
· Eight years of Java and J2EE programming experience.
· Understanding and demonstrated use of J2EE patterns and frameworks.
· Six years of experience with Spring Framework stack.
· Experience with web model view controller (MVC) frameworks (i.e. Spring MVC, etc.).
· Five years of Ajax/JQuery experience.
· Experience working with Application server (i.e. WebSphere, Weblogic, JBOSS).
· Five years of experience developing JSPs.
· Experience with developer testing practices (i.e. JUnit, Mockito, etc.) and understands the differences between unit, functional, and system tests.
· Five years of experience working with relational database (i.e. MS-SQL Server, Oracle, etc.) and concepts.
· Five years of experience with the Rational Application Developer (RAD) or Eclipse tool.
· Practical experience with Software Configuration Management (SCM) tool (i.e. Subversion, Maven, Clear Case, etc.).
· Ability to troubleshoot and solve problems.
· Ability to complete tasks or project assignments with minimal supervision.
· Ability to estimate development effort based on documented business requirements.
· Ability to clearly communicate design decisions and tradeoffs.
· Ability to speak and write clearly and succinctly in a variety of communication settings and styles.
· Ability to quickly learn and practically apply new concepts or principles.
· Ability to work effectively both independently and in a team environment.