Duration
: 33 months to start
Job Description;
Required Tasks to be Performed:
- Researches and develops prototypes for major initiatives and new technologies.
- Provides mentorship and guidance to the teams.
- Performs research and development.
- Delivers proposals and prototypes for new frameworks.
- Develops and delivers training on Java environments for building and deploying software.
- Provides and enhances Rapid Application Development Toolkit for building prototypes and application Kick Starts.
- Develop Java applications utilizing Struts 2, JPA, Hibernate, XML, RESTful, GitLab, Jenkins, Maven and EJB based web services.
- Provides technical support and assistance to all projects across the agency.
- Meet with users to analyze and evaluate system requirements; creates functional and technical specifications
- JEE development work as assigned, including ongoing R&D.
- Conduct research & development work assigned by Applications Services manager.
- Traces problems in applications or processes and applies a wide range of analytical techniques to determine root case and recommend corrective actions to development staff
Required Knowledge, Skills, and Abilities (KSAs):
- 8+ years experience in Java Frameworks such as Spring, Spring Boot, Struts 2/Tiles, Servlets/JSP, JPA/Hibernate.
- 2+ years experience in XML, HTML and CSS.
- 2+ years experience with Kubernetes, Docker, and container-based application development, debugging, deployment, and orchestration.
- Experience using git source control in a team environment.
- Experience with Maven 3.
- Experience with database query tools (i.e. TOAD, SQL Developer, SQL Navigator).
- Experience with CI/CD pipelines.
- Experience with cloud environments.
- Knowledge of relational and object-oriented database designs.
- Knowledge of object-oriented design methodologies.
- Knowledge of Information Systems Development Methodology (ISDM).
- Knowledge of database security, including role-based security.
- Ability to be creative, to use sound judgment, and to display foresight to identify potential problems and design/specifications and assigned application software systems.
- Ability to establish and maintain effective working relationships with others.
- Ability to work independently.
- Ability to determine work priorities and ensure proper completion of work assignments.
- Ability to communicate effectively, both verbally and in writing.
Preferred Knowledge, Skills, and Abilities (KSAs):
- Knowledge and understanding of the client’s IT software development processes.
- Knowledge of cryptographic principles and their application in modern computing.
- Experience with multi- and single-tenancy application environments.
- Experience with microservices and service mesh architectures.
- Experience with Bash and other Linux/UNIX shell environments.
- Experience with environmental regulatory business processes and practices.
Education:
- Bachelor’s Degree in Computer Science, Information Systems or other Information Technology major, or equivalent work experience.