Position : Sr Java Developer
Location : Fort Worth TX (Hybrid)
Duration : 6 Months with EXT
Description:
Skills / Experience:
- Perform requirements gathering analysis. Create architecture & design documents
- Refine requirements and map to technical modules fitting the enterprise wide architecture.
- Represent design of the system in UML diagrams such as Sequence Diagrams and ER models.
- Create Data flow diagrams and represent data in JSON format and map to business cases.
- Develop applications using Java Spring Boot Spring Cloud and Cloud Foundry Kubernetes
- Develop microservices using REST Spring Spring Boot
- Write Maven build scripts for building Java based Spring Boot microservices
- Develop scripts to deploy the microservices in Cloud such as Cloud Foundry and Kubernetes.
- Develop Jenkins files to automate the scripts using CI/CD continuous integration and Continuous delivery.
- Use Swagger2API for publishing REST interfaces.
- Scale the applications using autoscaling policies design for fault tolerance availability and low response times.
- Develop using Spring modules such as actuator for metrics health check of services
- Develop using Spring Cloud Config for storing configuration of the services.
- Develop using Spring Cloud Eureka to have service registry and discovery.
- Improve performance using Redis cache NoSQL databases such as DynamoDB.
- Develop Data access layer using JPA Hibernate and ORM tools over JDBC layer.
- Develop applications using cache such as Redis using Java Jedis client.
- Test REST resources using tools like Postman Curl etc.
- Make enhancements to legacy systems
- Develop/enhance SOAP webservices over XML and JSON written using J2EE technologies EJBs Servlets JSP JavaScript jQuery AJAX Angular React NodeJS
- Debug issues involving multithreading concurrency issues.
- Experience using XML XSD XSLT DOM JMS Spring Integration
- Knowledge of application servers such as Tomcat Glassfish and JBoss.
- Develop applications using Spring MVC Spring Batch and Spring Integration.
- Do performance tuning of SQL queries propose improvements to existing systems.
- Support applications using multithreading concepts TCP/IP database and REST based JSON APIs
- Handle legacy systems which involves processing using multithreading handle concurrency issues and network issues.
- Configure Database connections write SQL and PLSQL scripts to interact with RDBMS databases.
- Using Java and Spring technologies to develop REST based APIs and clients invoking such REST services using JSON as payload.
- Knowledge of NGINX and other infrastructure tools.
- Create scripts using build and deployment tools: Maven Git Junit
- Should be able to create code repositories in Git
- Should perform GIT branching merging and Push Requests in Git flow.
- Build Maven pom.xml build files to automate CI/CD in Jenkins.
- Implement CI/CD pipelines for DevOps using tools (Nexus Hygieia SonarQube Github Jenkins)
- Should implement Jenkins pipelines to enable Code pipelines.
- Should fix code issues shown by SonarQube and improve code quality.
- Linux/Unix and Shell scripting
- Develop scripts written in Shell/Bash for various operational tasks.
- Experience with the scrum process
- Should participate in Agile ceremonies and contribute to the overall success of the project.
- Should effectively contribute in Sprint Planning Daily Scrum Sprint Review and Sprint Retrospectives.
- Should update user stories tasks in JIRA Confluence IBM Rally tools.
- Produce reports.
- Experience and understanding of test driven (TDD) & Behavioral Driven development (BDD)
- Should develop test cases by writing code using tools such as Mockito EasyMock.
- Should develop integration tests by writing code using tools such as Cucumber.
- Excellent verbal and written communication skills and problemsolving skills
- Ability to work very closely with a larger development team of differing skillsets
Minimum Requirements
- Bachelors degree in computer science electronics engineering or related field plus 57 years of experience in the job offered or in software development or engineering plus demonstrated experience in: Design/Development Techniques: Objectoriented Analysis and Design) OOAD Unified
- Modelling Language (UML) Test Driven Development (TDD) Java Design Patterns
- Enterprise Integration Design Patterns Disaster Recovery Design and Development
- Web Technologies: Java EE Spring MVC Spring Web Flow Struts HTML CSS XML Servlets JSP JavaScript JQuery Junit JSON Ajax Angular React
- Service Technologies: Java 1.8 EJB Spring Framework Spring Boot Groovy In memory computation REST/SOAP Web Service WSDL JAXB JAXP XPATH XSLT XQuery XSD JMS Spring Integration WebSphere MQ ActiveMQ
- Relational Database and Persistence: Hibernate (Object/Relational Mapping) JPA JDBCMySQL Oracle PostgreSQL PL/SQL Query Performance Tuning
- NoSQL Database: DynamoDB NoSQL
- Cloud Technologies: Amazon Web Services (AWS) CloudFormation Template
- Caching Technologies: Redis Cache EhCache
- Servers: Tomcat JBoss Glassfish WebSphere
- CI/CDTools Junit Mockito JBehave Maven Jenkins Nexus Chef Puppet
- Linux/UNIX Shell Scripting Ruby
- SCM Tools Git Subversion
- Monitoring Tools: Dynatrace CloudWatch Zenoss.
- Project Management Tools: Jira Rally Confluence Visio PowerPoint Excel Word
- Operating Systems: Windows Unix Linux
- IDEs: Eclipse RAD Oracle SQL Developer PuTTY Visual Studio Code Robo Mongo
- Testing tools Postman SoapUI
- Methodologies: Agile Scrum Kanban XP