The Senior Java Developer designs, develops, documents, unit-tests, implements and deploys web-based Java applications to support business requirements. He/ she must follow approved software development life cycle methodologies (RUP/ SCRUM) and all processes as required from time to time.
A: ESSENTIAL DUTIES AND RESPONSIBILITIES (include the following. Other duties may be assigned)
- Interacts with the business analysis team to understand project requirements.
- Develops overall architecture/ product design documents, technical design specifications for individual modules - and technology justifications for architectural considerations.
- Ensure integration of entire system or subsystem
- Provide maintenance and troubleshooting support to the helpdesk and/ or maintenance team to help resolve technical issues with production systems by debugging, research and investigation.
- Design and Develop Java and J2EE based web applications using Java frameworks as required by customer.
- Design and Develop secure web services.
- Create PL/SQL procedures, functions, triggers and associated PL/ SQL or SQL database scripts as needed.
- Develop build packages using Maven/ Apache Ant.
- Applies Java and Oracle standard coding practices and industry standards.
- Applies Section 508/ Accessibility Standards compliant software development methodologies.
- Reports to the Project Management/ Leads on Project Status, Deliverables.
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required.
- Experience of Java EE, Spring, Struts 2, Hibernate and EJB is required
- Experience of HTML 5, JS, JQuery, AngularJS, Bootstrap, JSON and CSS is required
- Experience of Oracle Relational database, SQL, PL/SQL is required
- Experience implementing single sign on using OASIS SAML 2.0 specifications. Experience configuring an Identify Provider for federated authentication is preferred.
- Experienced in designing systems based on Service Oriented Architecture principles. Knowledge of an Enterprise Service Bus (ESB) is nice to have.
- Ability to work with UI framework tools like Telerik's Kendo UI
- Knowledge of Data Modeling and development tools
- Knowledge of software lifecycle methodology - Rational Unified Process (RUP), Rapid Application Development (RAD) and SCRUM/ Agile methodologies
- Knowledge of CMMI Level 3 processes
- Excellent oral and written communications skills
- Excellent Team and Task Management skills
10 years of experience with the following technologies:
- JAVA/ J2EE
- Struts 2
- Spring 3.0, EJB 3, Hibernate
- HTML 5, JS, JQuery, Ajax, JSON, CSS, AngularJS, Bootstrap
- Oracle Weblogic, Apache HTTP
6 years of experience with the following technologies:
- Oracle Database, SQL/ PL/SQL
- Charting Technologies (D3/ C3 graphs preferred)
- GIS/Maps development (Leaflet/ OpenStreetMap libraries preferred)
- SOAP/ REST, XML, XSD, XLST, WSDL, JAX-WS/CXF
- Actuate BIRT Reports/ Jasper Reports, Oracle Reports, Apache POI
- Maven/ Ant
- JUnit/ JMock/ Selenium
C: EDUCATION, CERTIFICATIONS and/or MEMBERSHIPS
Bachelor's degree in computer science or related field preferred
Sun/ Oracle Certified Java Programmer desirable
D: COMMUNICATIONS SKILLS
This job requires interaction with scientists, program managers, senior executives, end-users, programming staff, administration, and support personnel. The ability to effectively communicate ideas and concepts both orally and in written documents is critical.