Job Description :
RESPONSIBILITIES

Produce code for new and modified programs that meet user requirements and conform to departmental standards regarding documentation and structure that is reliable and easy to maintain.

Analyze and classify change requests, identifying and documenting scope of change and impact on other interfaces.

Understands a broad spectrum of technology in order to provide part or all of a detailed technical design which meets requirements

Participate in walk-throughs which review program specs, source code, all technical supporting documentation, including screens/reports: provide feedback in accordance with department

standards and guidelines.

Support clients with software applications.

Communicates across client community, and is viewed as adding value

Develop unit test plans that will thoroughly exercise program logic to ensure program/application performance with regard to business requirements.

Execute unit test plans, document test results and resolve discrepancies as deemed appropriate.

Develop system test plans and scripts that will thoroughly exercise program logic to ensure program/application performance with regard to business requirements and system integration.

Produce code for new and modified programs that meet user requirements and conform to departmental standards around documentation and structure that is reliable and efficient.

Provides technical leadership on specific integration activities that are part of an engagement

Often leads small-to-medium technical projects. Works with and under the direction of the Project/Technical Manager and with customer nominated representatives. Liaises with Solutions

Architect as appropriate

Provides advice on solution and integration opportunities to defined segments

Provides planning and design support for the development of solution architectures that will be implemented in a multiple system environment

Conduct research as required.

Guide and provide training to Programmer Analysts.



QUALIFICATIONS

Bachelor''s degree in Computer Information Systems or equivalent work experience

10+ years application development experience

Java must have strong experience in core Java

Spring/JEE platform must have experience with Spring (Spring Boot, Spring MVC, Spring Data, Spring Security) or JEE platform (CDI, JPA, EJB, JAX-RS, JAX-WS)

Strong foundation in Object Oriented Programming and Design Patterns

Knowledge and applying SOLID principles in practice

Experience with WebServices (SOAP, REST)

Must understand basic principles of data modeling

SQL must be able to write simple to moderate complexity SQL queries

Experience with ORM frameworks (JPA, Hibernate, OpenJPA)

Experience with test framework: JUnit, TestNG, Mockito

Excellent problem solving and analytical skills

Good communicator, keen to collaborate and share knowledge



TECHNICAL HIGHLY DESIRED

Automated build platforms/continuous integration experience and knowledge (Jenkins, Hudson, Maven, Gradle)

Experience with test automation tools (Selenium/WebDriver, Fitnesse, JBehave)

Knowledge and applying TDD principles in practice

Ability to interpret and troubleshoot applications using logs (troubleshooting Java memory issues, analyzing java heap/thread dumps, troubleshooting application issues)

Experience with Unix platforms

Web development skills experience with HTML 5, CSS 3, JavaScript, JavaScript frameworks (AngularJS, jQuery), Bootstrap, LESS and other Web 2.0 technologies

Experience with agile methodologies (Scrum, Kanban)



TECHNICAL NICE TO HAVE

Prior experience with IBM WebSphere products (WebSphere Application Server, WebSphere Portal, WebSphere Liberty Profile)

Experience with message queue brokers (WebSphere MQ, Oracle AQ)

Prior experience with Tomcat

Experience with databases (SQL Server, Oracle, DB2)
             

Similar Jobs you may be interested in ..