Job Duties:
Work with other development team members throughout the project development life cycle -including requirement gather and analysis, project specifications and prototyping, design, development, testing and implementation; Develop System Requirement and Functional Requirement Documents; Design, develop, and implement web-based applications using Java, J2EE, Spring, Struts and Oracle PUSQL; Design, develop and
implement highly usable GUls using Spring Framework, JSPs, Struts MVC, HTML, JavaScript, and CSS; Design and develop the application in Agile Software Development approach; Develop and implement Spring MVC framework in the presentation tier for all the essential control flow, business level validations and for communicating with the business layer; Use Spring Dependency Injection properties to develop and implement loose coupling between layers; Develop and implement micro services using Spring Cloud framework as part upgrading existing monolithic application; Implement data source and perform database operations using Spring JDBC and Spring ORM; Develop and implement Stored Procedures and Functions to process information used to generate reports using Oracle PUSQL; Develop and implement Restful web services to interact with third party applications; Develop and implement logging mechanism using Log4j framework; Develop and execute test cases for unit testing using Junit; Design the user interface components using JSP, HTML, CSS, JavaScript, AJAX and custom tag libraries; Maintain the branching and build/release strategies utilizing GIT; Design and implement deployable artifacts using MAVEN/Gradle and ANT; Develop and implement Design patterns such as MVC, Singleton, Business Delegate, Data Access Object and Data Transfer Object; Deploy application changes in Test, Staging and Prod environments; Use existing Jenkins pipeline for Automating Deployments and/or create new automated processes for continuous integration; Develop and deploy database changes on Oracle DB in three environments; Prioritize, assign and execute tasks throughout the software development life cycle; Redesign reusable code and libraries for future use; Track User stories and open defects using Jira tools; Provide Production Support for fixing Severity 1 and 2 issues to maintain SLAs; Manage cutting-edge technologies to improve legacy applications; Coordinate all build and release activities, ensure release processes is well documented, source control repositories including branching and tagging; involved in daily status meetings and team code reviews.
Minimum Requirement:
Bachelor’s degree or equivalent in Computer Science or related fields of studies such as Information Systems.
Job location:
Herndon, VA and Rutherford, NJ